/* Generated by Cython 0.28.5 */

/* BEGIN: Cython Metadata
{
    "distutils": {
        "name": "metaphor.monal.lcode.codewriter",
        "sources": [
            "metaphor/monal/lcode/codewriter.py"
        ]
    },
    "module_name": "metaphor.monal.lcode.codewriter"
}
END: Cython Metadata */

#define PY_SSIZE_T_CLEAN
#include "Python.h"
#ifndef Py_PYTHON_H
    #error Python headers needed to compile C extensions, please install development version of Python.
#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000)
    #error Cython requires Python 2.6+ or Python 3.3+.
#else
#define CYTHON_ABI "0_28_5"
#define CYTHON_FUTURE_DIVISION 1
#include <stddef.h>
#ifndef offsetof
  #define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
#endif
#if !defined(WIN32) && !defined(MS_WINDOWS)
  #ifndef __stdcall
    #define __stdcall
  #endif
  #ifndef __cdecl
    #define __cdecl
  #endif
  #ifndef __fastcall
    #define __fastcall
  #endif
#endif
#ifndef DL_IMPORT
  #define DL_IMPORT(t) t
#endif
#ifndef DL_EXPORT
  #define DL_EXPORT(t) t
#endif
#define __PYX_COMMA ,
#ifndef HAVE_LONG_LONG
  #if PY_VERSION_HEX >= 0x02070000
    #define HAVE_LONG_LONG
  #endif
#endif
#ifndef PY_LONG_LONG
  #define PY_LONG_LONG LONG_LONG
#endif
#ifndef Py_HUGE_VAL
  #define Py_HUGE_VAL HUGE_VAL
#endif
#ifdef PYPY_VERSION
  #define CYTHON_COMPILING_IN_PYPY 1
  #define CYTHON_COMPILING_IN_PYSTON 0
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #undef CYTHON_USE_TYPE_SLOTS
  #define CYTHON_USE_TYPE_SLOTS 0
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #if PY_VERSION_HEX < 0x03050000
    #undef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 0
  #elif !defined(CYTHON_USE_ASYNC_SLOTS)
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #undef CYTHON_USE_UNICODE_INTERNALS
  #define CYTHON_USE_UNICODE_INTERNALS 0
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #undef CYTHON_AVOID_BORROWED_REFS
  #define CYTHON_AVOID_BORROWED_REFS 1
  #undef CYTHON_ASSUME_SAFE_MACROS
  #define CYTHON_ASSUME_SAFE_MACROS 0
  #undef CYTHON_UNPACK_METHODS
  #define CYTHON_UNPACK_METHODS 0
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #undef CYTHON_PEP489_MULTI_PHASE_INIT
  #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #undef CYTHON_USE_TP_FINALIZE
  #define CYTHON_USE_TP_FINALIZE 0
#elif defined(PYSTON_VERSION)
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_PYSTON 1
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #ifndef CYTHON_USE_TYPE_SLOTS
    #define CYTHON_USE_TYPE_SLOTS 1
  #endif
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #undef CYTHON_USE_ASYNC_SLOTS
  #define CYTHON_USE_ASYNC_SLOTS 0
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #ifndef CYTHON_USE_UNICODE_INTERNALS
    #define CYTHON_USE_UNICODE_INTERNALS 1
  #endif
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_ASSUME_SAFE_MACROS
    #define CYTHON_ASSUME_SAFE_MACROS 1
  #endif
  #ifndef CYTHON_UNPACK_METHODS
    #define CYTHON_UNPACK_METHODS 1
  #endif
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #undef CYTHON_PEP489_MULTI_PHASE_INIT
  #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #undef CYTHON_USE_TP_FINALIZE
  #define CYTHON_USE_TP_FINALIZE 0
#else
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_PYSTON 0
  #define CYTHON_COMPILING_IN_CPYTHON 1
  #ifndef CYTHON_USE_TYPE_SLOTS
    #define CYTHON_USE_TYPE_SLOTS 1
  #endif
  #if PY_VERSION_HEX < 0x02070000
    #undef CYTHON_USE_PYTYPE_LOOKUP
    #define CYTHON_USE_PYTYPE_LOOKUP 0
  #elif !defined(CYTHON_USE_PYTYPE_LOOKUP)
    #define CYTHON_USE_PYTYPE_LOOKUP 1
  #endif
  #if PY_MAJOR_VERSION < 3
    #undef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 0
  #elif !defined(CYTHON_USE_ASYNC_SLOTS)
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #if PY_VERSION_HEX < 0x02070000
    #undef CYTHON_USE_PYLONG_INTERNALS
    #define CYTHON_USE_PYLONG_INTERNALS 0
  #elif !defined(CYTHON_USE_PYLONG_INTERNALS)
    #define CYTHON_USE_PYLONG_INTERNALS 1
  #endif
  #ifndef CYTHON_USE_PYLIST_INTERNALS
    #define CYTHON_USE_PYLIST_INTERNALS 1
  #endif
  #ifndef CYTHON_USE_UNICODE_INTERNALS
    #define CYTHON_USE_UNICODE_INTERNALS 1
  #endif
  #if PY_VERSION_HEX < 0x030300F0
    #undef CYTHON_USE_UNICODE_WRITER
    #define CYTHON_USE_UNICODE_WRITER 0
  #elif !defined(CYTHON_USE_UNICODE_WRITER)
    #define CYTHON_USE_UNICODE_WRITER 1
  #endif
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_ASSUME_SAFE_MACROS
    #define CYTHON_ASSUME_SAFE_MACROS 1
  #endif
  #ifndef CYTHON_UNPACK_METHODS
    #define CYTHON_UNPACK_METHODS 1
  #endif
  #ifndef CYTHON_FAST_THREAD_STATE
    #define CYTHON_FAST_THREAD_STATE 1
  #endif
  #ifndef CYTHON_FAST_PYCALL
    #define CYTHON_FAST_PYCALL 1
  #endif
  #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
    #define CYTHON_PEP489_MULTI_PHASE_INIT (0 && PY_VERSION_HEX >= 0x03050000)
  #endif
  #ifndef CYTHON_USE_TP_FINALIZE
    #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1)
  #endif
#endif
#if !defined(CYTHON_FAST_PYCCALL)
#define CYTHON_FAST_PYCCALL  (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1)
#endif
#if CYTHON_USE_PYLONG_INTERNALS
  #include "longintrepr.h"
  #undef SHIFT
  #undef BASE
  #undef MASK
#endif
#ifndef __has_attribute
  #define __has_attribute(x) 0
#endif
#ifndef __has_cpp_attribute
  #define __has_cpp_attribute(x) 0
#endif
#ifndef CYTHON_RESTRICT
  #if defined(__GNUC__)
    #define CYTHON_RESTRICT __restrict__
  #elif defined(_MSC_VER) && _MSC_VER >= 1400
    #define CYTHON_RESTRICT __restrict
  #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define CYTHON_RESTRICT restrict
  #else
    #define CYTHON_RESTRICT
  #endif
#endif
#ifndef CYTHON_UNUSED
# if defined(__GNUC__)
#   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
#     define CYTHON_UNUSED __attribute__ ((__unused__))
#   else
#     define CYTHON_UNUSED
#   endif
# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
#   define CYTHON_UNUSED __attribute__ ((__unused__))
# else
#   define CYTHON_UNUSED
# endif
#endif
#ifndef CYTHON_MAYBE_UNUSED_VAR
#  if defined(__cplusplus)
     template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }
#  else
#    define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x)
#  endif
#endif
#ifndef CYTHON_NCP_UNUSED
# if CYTHON_COMPILING_IN_CPYTHON
#  define CYTHON_NCP_UNUSED
# else
#  define CYTHON_NCP_UNUSED CYTHON_UNUSED
# endif
#endif
#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
#ifdef _MSC_VER
    #ifndef _MSC_STDINT_H_
        #if _MSC_VER < 1300
           typedef unsigned char     uint8_t;
           typedef unsigned int      uint32_t;
        #else
           typedef unsigned __int8   uint8_t;
           typedef unsigned __int32  uint32_t;
        #endif
    #endif
#else
   #include <stdint.h>
#endif
#ifndef CYTHON_FALLTHROUGH
  #if defined(__cplusplus) && __cplusplus >= 201103L
    #if __has_cpp_attribute(fallthrough)
      #define CYTHON_FALLTHROUGH [[fallthrough]]
    #elif __has_cpp_attribute(clang::fallthrough)
      #define CYTHON_FALLTHROUGH [[clang::fallthrough]]
    #elif __has_cpp_attribute(gnu::fallthrough)
      #define CYTHON_FALLTHROUGH [[gnu::fallthrough]]
    #endif
  #endif
  #ifndef CYTHON_FALLTHROUGH
    #if __has_attribute(fallthrough)
      #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
    #else
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
  #if defined(__clang__ ) && defined(__apple_build_version__)
    #if __apple_build_version__ < 7000000
      #undef  CYTHON_FALLTHROUGH
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
#endif

#ifndef CYTHON_INLINE
  #if defined(__clang__)
    #define CYTHON_INLINE __inline__ __attribute__ ((__unused__))
  #elif defined(__GNUC__)
    #define CYTHON_INLINE __inline__
  #elif defined(_MSC_VER)
    #define CYTHON_INLINE __inline
  #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define CYTHON_INLINE inline
  #else
    #define CYTHON_INLINE
  #endif
#endif

#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag)
  #define Py_OptimizeFlag 0
#endif
#define __PYX_BUILD_PY_SSIZE_T "n"
#define CYTHON_FORMAT_SSIZE_T "z"
#if PY_MAJOR_VERSION < 3
  #define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
  #define __Pyx_DefaultClassType PyClass_Type
#else
  #define __Pyx_BUILTIN_MODULE_NAME "builtins"
  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
  #define __Pyx_DefaultClassType PyType_Type
#endif
#ifndef Py_TPFLAGS_CHECKTYPES
  #define Py_TPFLAGS_CHECKTYPES 0
#endif
#ifndef Py_TPFLAGS_HAVE_INDEX
  #define Py_TPFLAGS_HAVE_INDEX 0
#endif
#ifndef Py_TPFLAGS_HAVE_NEWBUFFER
  #define Py_TPFLAGS_HAVE_NEWBUFFER 0
#endif
#ifndef Py_TPFLAGS_HAVE_FINALIZE
  #define Py_TPFLAGS_HAVE_FINALIZE 0
#endif
#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL)
  #ifndef METH_FASTCALL
     #define METH_FASTCALL 0x80
  #endif
  typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs);
  typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args,
                                                          Py_ssize_t nargs, PyObject *kwnames);
#else
  #define __Pyx_PyCFunctionFast _PyCFunctionFast
  #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
#endif
#if CYTHON_FAST_PYCCALL
#define __Pyx_PyFastCFunction_Check(func)\
    ((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS)))))
#else
#define __Pyx_PyFastCFunction_Check(func) 0
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc)
  #define PyObject_Malloc(s)   PyMem_Malloc(s)
  #define PyObject_Free(p)     PyMem_Free(p)
  #define PyObject_Realloc(p)  PyMem_Realloc(p)
#endif
#if CYTHON_COMPILING_IN_PYSTON
  #define __Pyx_PyCode_HasFreeVars(co)  PyCode_HasFreeVars(co)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno)
#else
  #define __Pyx_PyCode_HasFreeVars(co)  (PyCode_GetNumFree(co) > 0)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno)  (frame)->f_lineno = (lineno)
#endif
#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
#elif PY_VERSION_HEX >= 0x03060000
  #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
#elif PY_VERSION_HEX >= 0x03000000
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
#else
  #define __Pyx_PyThreadState_Current _PyThreadState_Current
#endif
#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT)
#include "pythread.h"
#define Py_tss_NEEDS_INIT 0
typedef int Py_tss_t;
static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) {
  *key = PyThread_create_key();
  return 0; // PyThread_create_key reports success always
}
static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) {
  Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t));
  *key = Py_tss_NEEDS_INIT;
  return key;
}
static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) {
  PyObject_Free(key);
}
static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) {
  return *key != Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) {
  PyThread_delete_key(*key);
  *key = Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) {
  return PyThread_set_key_value(*key, value);
}
static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) {
  return PyThread_get_key_value(*key);
}
#endif // TSS (Thread Specific Storage) API
#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized)
#define __Pyx_PyDict_NewPresized(n)  ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
#else
#define __Pyx_PyDict_NewPresized(n)  PyDict_New()
#endif
#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION
  #define __Pyx_PyNumber_Divide(x,y)         PyNumber_TrueDivide(x,y)
  #define __Pyx_PyNumber_InPlaceDivide(x,y)  PyNumber_InPlaceTrueDivide(x,y)
#else
  #define __Pyx_PyNumber_Divide(x,y)         PyNumber_Divide(x,y)
  #define __Pyx_PyNumber_InPlaceDivide(x,y)  PyNumber_InPlaceDivide(x,y)
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && CYTHON_USE_UNICODE_INTERNALS
#define __Pyx_PyDict_GetItemStr(dict, name)  _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash)
#else
#define __Pyx_PyDict_GetItemStr(dict, name)  PyDict_GetItem(dict, name)
#endif
#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
  #define CYTHON_PEP393_ENABLED 1
  #define __Pyx_PyUnicode_READY(op)       (likely(PyUnicode_IS_READY(op)) ?\
                                              0 : _PyUnicode_Ready((PyObject *)(op)))
  #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_LENGTH(u)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   PyUnicode_MAX_CHAR_VALUE(u)
  #define __Pyx_PyUnicode_KIND(u)         PyUnicode_KIND(u)
  #define __Pyx_PyUnicode_DATA(u)         PyUnicode_DATA(u)
  #define __Pyx_PyUnicode_READ(k, d, i)   PyUnicode_READ(k, d, i)
  #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  PyUnicode_WRITE(k, d, i, ch)
  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
#else
  #define CYTHON_PEP393_ENABLED 0
  #define PyUnicode_1BYTE_KIND  1
  #define PyUnicode_2BYTE_KIND  2
  #define PyUnicode_4BYTE_KIND  4
  #define __Pyx_PyUnicode_READY(op)       (0)
  #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_SIZE(u)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i]))
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111)
  #define __Pyx_PyUnicode_KIND(u)         (sizeof(Py_UNICODE))
  #define __Pyx_PyUnicode_DATA(u)         ((void*)PyUnicode_AS_UNICODE(u))
  #define __Pyx_PyUnicode_READ(k, d, i)   ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
  #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  (((void)(k)), ((Py_UNICODE*)d)[i] = ch)
  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != PyUnicode_GET_SIZE(u))
#endif
#if CYTHON_COMPILING_IN_PYPY
  #define __Pyx_PyUnicode_Concat(a, b)      PyNumber_Add(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  PyNumber_Add(a, b)
#else
  #define __Pyx_PyUnicode_Concat(a, b)      PyUnicode_Concat(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\
      PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b))
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains)
  #define PyUnicode_Contains(u, s)  PySequence_Contains(u, s)
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check)
  #define PyByteArray_Check(obj)  PyObject_TypeCheck(obj, &PyByteArray_Type)
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format)
  #define PyObject_Format(obj, fmt)  PyObject_CallMethod(obj, "__format__", "O", fmt)
#endif
#define __Pyx_PyString_FormatSafe(a, b)   ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b))
#define __Pyx_PyUnicode_FormatSafe(a, b)  ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyString_Format(a, b)  PyUnicode_Format(a, b)
#else
  #define __Pyx_PyString_Format(a, b)  PyString_Format(a, b)
#endif
#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII)
  #define PyObject_ASCII(o)            PyObject_Repr(o)
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyBaseString_Type            PyUnicode_Type
  #define PyStringObject               PyUnicodeObject
  #define PyString_Type                PyUnicode_Type
  #define PyString_Check               PyUnicode_Check
  #define PyString_CheckExact          PyUnicode_CheckExact
  #define PyObject_Unicode             PyObject_Str
#endif
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj)
  #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj)
#else
  #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj))
  #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj))
#endif
#ifndef PySet_CheckExact
  #define PySet_CheckExact(obj)        (Py_TYPE(obj) == &PySet_Type)
#endif
#if CYTHON_ASSUME_SAFE_MACROS
  #define __Pyx_PySequence_SIZE(seq)  Py_SIZE(seq)
#else
  #define __Pyx_PySequence_SIZE(seq)  PySequence_Size(seq)
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyIntObject                  PyLongObject
  #define PyInt_Type                   PyLong_Type
  #define PyInt_Check(op)              PyLong_Check(op)
  #define PyInt_CheckExact(op)         PyLong_CheckExact(op)
  #define PyInt_FromString             PyLong_FromString
  #define PyInt_FromUnicode            PyLong_FromUnicode
  #define PyInt_FromLong               PyLong_FromLong
  #define PyInt_FromSize_t             PyLong_FromSize_t
  #define PyInt_FromSsize_t            PyLong_FromSsize_t
  #define PyInt_AsLong                 PyLong_AsLong
  #define PyInt_AS_LONG                PyLong_AS_LONG
  #define PyInt_AsSsize_t              PyLong_AsSsize_t
  #define PyInt_AsUnsignedLongMask     PyLong_AsUnsignedLongMask
  #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
  #define PyNumber_Int                 PyNumber_Long
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyBoolObject                 PyLongObject
#endif
#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY
  #ifndef PyUnicode_InternFromString
    #define PyUnicode_InternFromString(s) PyUnicode_FromString(s)
  #endif
#endif
#if PY_VERSION_HEX < 0x030200A4
  typedef long Py_hash_t;
  #define __Pyx_PyInt_FromHash_t PyInt_FromLong
  #define __Pyx_PyInt_AsHash_t   PyInt_AsLong
#else
  #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t
  #define __Pyx_PyInt_AsHash_t   PyInt_AsSsize_t
#endif
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : (Py_INCREF(func), func))
#else
  #define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass)
#endif
#if CYTHON_USE_ASYNC_SLOTS
  #if PY_VERSION_HEX >= 0x030500B1
    #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
    #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
  #else
    #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
  #endif
#else
  #define __Pyx_PyType_AsAsync(obj) NULL
#endif
#ifndef __Pyx_PyAsyncMethodsStruct
    typedef struct {
        unaryfunc am_await;
        unaryfunc am_aiter;
        unaryfunc am_anext;
    } __Pyx_PyAsyncMethodsStruct;
#endif

#if defined(WIN32) || defined(MS_WINDOWS)
  #define _USE_MATH_DEFINES
#endif
#include <math.h>
#ifdef NAN
#define __PYX_NAN() ((float) NAN)
#else
static CYTHON_INLINE float __PYX_NAN() {
  float value;
  memset(&value, 0xFF, sizeof(value));
  return value;
}
#endif
#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL)
#define __Pyx_truncl trunc
#else
#define __Pyx_truncl truncl
#endif


#define __PYX_ERR(f_index, lineno, Ln_error) \
{ \
  __pyx_filename = __pyx_f[f_index]; __pyx_lineno = lineno; __pyx_clineno = __LINE__; goto Ln_error; \
}

#ifndef __PYX_EXTERN_C
  #ifdef __cplusplus
    #define __PYX_EXTERN_C extern "C"
  #else
    #define __PYX_EXTERN_C extern
  #endif
#endif

#define __PYX_HAVE__metaphor__monal__lcode__codewriter
#define __PYX_HAVE_API__metaphor__monal__lcode__codewriter
/* Early includes */
#ifdef _OPENMP
#include <omp.h>
#endif /* _OPENMP */

#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS)
#define CYTHON_WITHOUT_ASSERTIONS
#endif

typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;
                const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;

#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0
#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT 0
#define __PYX_DEFAULT_STRING_ENCODING ""
#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString
#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#define __Pyx_uchar_cast(c) ((unsigned char)c)
#define __Pyx_long_cast(x) ((long)x)
#define __Pyx_fits_Py_ssize_t(v, type, is_signed)  (\
    (sizeof(type) < sizeof(Py_ssize_t))  ||\
    (sizeof(type) > sizeof(Py_ssize_t) &&\
          likely(v < (type)PY_SSIZE_T_MAX ||\
                 v == (type)PY_SSIZE_T_MAX)  &&\
          (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\
                                v == (type)PY_SSIZE_T_MIN)))  ||\
    (sizeof(type) == sizeof(Py_ssize_t) &&\
          (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\
                               v == (type)PY_SSIZE_T_MAX)))  )
#if defined (__cplusplus) && __cplusplus >= 201103L
    #include <cstdlib>
    #define __Pyx_sst_abs(value) std::abs(value)
#elif SIZEOF_INT >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) abs(value)
#elif SIZEOF_LONG >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) labs(value)
#elif defined (_MSC_VER)
    #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define __Pyx_sst_abs(value) llabs(value)
#elif defined (__GNUC__)
    #define __Pyx_sst_abs(value) __builtin_llabs(value)
#else
    #define __Pyx_sst_abs(value) ((value<0) ? -value : value)
#endif
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s))
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString        PyBytes_FromString
#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#if PY_MAJOR_VERSION < 3
    #define __Pyx_PyStr_FromString        __Pyx_PyBytes_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#else
    #define __Pyx_PyStr_FromString        __Pyx_PyUnicode_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
#endif
#define __Pyx_PyBytes_AsWritableString(s)     ((char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableSString(s)    ((signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableUString(s)    ((unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsString(s)     ((const char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsSString(s)    ((const signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsUString(s)    ((const unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyObject_AsWritableString(s)    ((char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableSString(s)    ((signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableUString(s)    ((unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsSString(s)    ((const signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsUString(s)    ((const unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s)  __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s)   __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s)   __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyStr_FromCString(s)     __Pyx_PyStr_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) {
    const Py_UNICODE *u_end = u;
    while (*u_end++) ;
    return (size_t)(u_end - u - 1);
}
#define __Pyx_PyUnicode_FromUnicode(u)       PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
#define __Pyx_PyUnicode_AsUnicode            PyUnicode_AsUnicode
#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj)
#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None)
static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b);
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x);
#define __Pyx_PySequence_Tuple(obj)\
    (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
#if CYTHON_ASSUME_SAFE_MACROS
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
#endif
#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x))
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x))
#else
#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x))
#endif
#define __Pyx_PyNumber_Float(x) (PyFloat_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Float(x))
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
static int __Pyx_sys_getdefaultencoding_not_ascii;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
    PyObject* sys;
    PyObject* default_encoding = NULL;
    PyObject* ascii_chars_u = NULL;
    PyObject* ascii_chars_b = NULL;
    const char* default_encoding_c;
    sys = PyImport_ImportModule("sys");
    if (!sys) goto bad;
    default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL);
    Py_DECREF(sys);
    if (!default_encoding) goto bad;
    default_encoding_c = PyBytes_AsString(default_encoding);
    if (!default_encoding_c) goto bad;
    if (strcmp(default_encoding_c, "ascii") == 0) {
        __Pyx_sys_getdefaultencoding_not_ascii = 0;
    } else {
        char ascii_chars[128];
        int c;
        for (c = 0; c < 128; c++) {
            ascii_chars[c] = c;
        }
        __Pyx_sys_getdefaultencoding_not_ascii = 1;
        ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL);
        if (!ascii_chars_u) goto bad;
        ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL);
        if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) {
            PyErr_Format(
                PyExc_ValueError,
                "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.",
                default_encoding_c);
            goto bad;
        }
        Py_DECREF(ascii_chars_u);
        Py_DECREF(ascii_chars_b);
    }
    Py_DECREF(default_encoding);
    return 0;
bad:
    Py_XDECREF(default_encoding);
    Py_XDECREF(ascii_chars_u);
    Py_XDECREF(ascii_chars_b);
    return -1;
}
#endif
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL)
#else
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
static char* __PYX_DEFAULT_STRING_ENCODING;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
    PyObject* sys;
    PyObject* default_encoding = NULL;
    char* default_encoding_c;
    sys = PyImport_ImportModule("sys");
    if (!sys) goto bad;
    default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL);
    Py_DECREF(sys);
    if (!default_encoding) goto bad;
    default_encoding_c = PyBytes_AsString(default_encoding);
    if (!default_encoding_c) goto bad;
    __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c));
    if (!__PYX_DEFAULT_STRING_ENCODING) goto bad;
    strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c);
    Py_DECREF(default_encoding);
    return 0;
bad:
    Py_XDECREF(default_encoding);
    return -1;
}
#endif
#endif


/* Test for GCC > 2.95 */
#if defined(__GNUC__)     && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)))
  #define likely(x)   __builtin_expect(!!(x), 1)
  #define unlikely(x) __builtin_expect(!!(x), 0)
#else /* !__GNUC__ or GCC < 2.95 */
  #define likely(x)   (x)
  #define unlikely(x) (x)
#endif /* __GNUC__ */
static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; }

static PyObject *__pyx_m = NULL;
static PyObject *__pyx_d;
static PyObject *__pyx_b;
static PyObject *__pyx_cython_runtime = NULL;
static PyObject *__pyx_empty_tuple;
static PyObject *__pyx_empty_bytes;
static PyObject *__pyx_empty_unicode;
static int __pyx_lineno;
static int __pyx_clineno = 0;
static const char * __pyx_cfilenm= __FILE__;
static const char *__pyx_filename;


static const char *__pyx_f[] = {
  "metaphor/monal/lcode/codewriter.py",
};

/*--- Type declarations ---*/

/* --- Runtime support code (head) --- */
/* Refnanny.proto */
#ifndef CYTHON_REFNANNY
  #define CYTHON_REFNANNY 0
#endif
#if CYTHON_REFNANNY
  typedef struct {
    void (*INCREF)(void*, PyObject*, int);
    void (*DECREF)(void*, PyObject*, int);
    void (*GOTREF)(void*, PyObject*, int);
    void (*GIVEREF)(void*, PyObject*, int);
    void* (*SetupContext)(const char*, int, const char*);
    void (*FinishContext)(void**);
  } __Pyx_RefNannyAPIStruct;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname);
  #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL;
#ifdef WITH_THREAD
  #define __Pyx_RefNannySetupContext(name, acquire_gil)\
          if (acquire_gil) {\
              PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\
              PyGILState_Release(__pyx_gilstate_save);\
          } else {\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\
          }
#else
  #define __Pyx_RefNannySetupContext(name, acquire_gil)\
          __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__)
#endif
  #define __Pyx_RefNannyFinishContext()\
          __Pyx_RefNanny->FinishContext(&__pyx_refnanny)
  #define __Pyx_INCREF(r)  __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_DECREF(r)  __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_GOTREF(r)  __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_XINCREF(r)  do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0)
  #define __Pyx_XDECREF(r)  do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0)
  #define __Pyx_XGOTREF(r)  do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0)
  #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0)
#else
  #define __Pyx_RefNannyDeclarations
  #define __Pyx_RefNannySetupContext(name, acquire_gil)
  #define __Pyx_RefNannyFinishContext()
  #define __Pyx_INCREF(r) Py_INCREF(r)
  #define __Pyx_DECREF(r) Py_DECREF(r)
  #define __Pyx_GOTREF(r)
  #define __Pyx_GIVEREF(r)
  #define __Pyx_XINCREF(r) Py_XINCREF(r)
  #define __Pyx_XDECREF(r) Py_XDECREF(r)
  #define __Pyx_XGOTREF(r)
  #define __Pyx_XGIVEREF(r)
#endif
#define __Pyx_XDECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_XDECREF(tmp);\
    } while (0)
#define __Pyx_DECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_DECREF(tmp);\
    } while (0)
#define __Pyx_CLEAR(r)    do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0)
#define __Pyx_XCLEAR(r)   do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)

/* PyObjectGetAttrStr.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name);
#else
#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n)
#endif

/* GetBuiltinName.proto */
static PyObject *__Pyx_GetBuiltinName(PyObject *name);

/* RaiseArgTupleInvalid.proto */
static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact,
    Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found);

/* RaiseDoubleKeywords.proto */
static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name);

/* ParseKeywords.proto */
static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[],\
    PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args,\
    const char* function_name);

/* GetModuleGlobalName.proto */
static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name);

/* PyObjectCall.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw);
#else
#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw)
#endif

/* PyFunctionFastCall.proto */
#if CYTHON_FAST_PYCALL
#define __Pyx_PyFunction_FastCall(func, args, nargs)\
    __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL)
#if 1 || PY_VERSION_HEX < 0x030600B1
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs);
#else
#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs)
#endif
#endif

/* PyCFunctionFastCall.proto */
#if CYTHON_FAST_PYCCALL
static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs);
#else
#define __Pyx_PyCFunction_FastCall(func, args, nargs)  (assert(0), NULL)
#endif

/* PyObjectSetAttrStr.proto */
#if CYTHON_USE_TYPE_SLOTS
#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o, n, NULL)
static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value);
#else
#define __Pyx_PyObject_DelAttrStr(o,n)   PyObject_DelAttr(o,n)
#define __Pyx_PyObject_SetAttrStr(o,n,v) PyObject_SetAttr(o,n,v)
#endif

/* PyObjectCallMethO.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg);
#endif

/* PyObjectCallOneArg.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg);

/* PyObjectCallNoArg.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func);
#else
#define __Pyx_PyObject_CallNoArg(func) __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL)
#endif

/* FetchCommonType.proto */
static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type);

/* CythonFunction.proto */
#define __Pyx_CyFunction_USED 1
#define __Pyx_CYFUNCTION_STATICMETHOD  0x01
#define __Pyx_CYFUNCTION_CLASSMETHOD   0x02
#define __Pyx_CYFUNCTION_CCLASS        0x04
#define __Pyx_CyFunction_GetClosure(f)\
    (((__pyx_CyFunctionObject *) (f))->func_closure)
#define __Pyx_CyFunction_GetClassObj(f)\
    (((__pyx_CyFunctionObject *) (f))->func_classobj)
#define __Pyx_CyFunction_Defaults(type, f)\
    ((type *)(((__pyx_CyFunctionObject *) (f))->defaults))
#define __Pyx_CyFunction_SetDefaultsGetter(f, g)\
    ((__pyx_CyFunctionObject *) (f))->defaults_getter = (g)
typedef struct {
    PyCFunctionObject func;
#if PY_VERSION_HEX < 0x030500A0
    PyObject *func_weakreflist;
#endif
    PyObject *func_dict;
    PyObject *func_name;
    PyObject *func_qualname;
    PyObject *func_doc;
    PyObject *func_globals;
    PyObject *func_code;
    PyObject *func_closure;
    PyObject *func_classobj;
    void *defaults;
    int defaults_pyobjects;
    int flags;
    PyObject *defaults_tuple;
    PyObject *defaults_kwdict;
    PyObject *(*defaults_getter)(PyObject *);
    PyObject *func_annotations;
} __pyx_CyFunctionObject;
static PyTypeObject *__pyx_CyFunctionType = 0;
#define __Pyx_CyFunction_NewEx(ml, flags, qualname, self, module, globals, code)\
    __Pyx_CyFunction_New(__pyx_CyFunctionType, ml, flags, qualname, self, module, globals, code)
static PyObject *__Pyx_CyFunction_New(PyTypeObject *, PyMethodDef *ml,
                                      int flags, PyObject* qualname,
                                      PyObject *self,
                                      PyObject *module, PyObject *globals,
                                      PyObject* code);
static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *m,
                                                         size_t size,
                                                         int pyobjects);
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *m,
                                                            PyObject *tuple);
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *m,
                                                             PyObject *dict);
static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *m,
                                                              PyObject *dict);
static int __pyx_CyFunction_init(void);

/* GetAttr.proto */
static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *);

/* HasAttr.proto */
static CYTHON_INLINE int __Pyx_HasAttr(PyObject *, PyObject *);

/* SliceObject.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(
        PyObject* obj, Py_ssize_t cstart, Py_ssize_t cstop,
        PyObject** py_start, PyObject** py_stop, PyObject** py_slice,
        int has_cstart, int has_cstop, int wraparound);

/* GetItemInt.proto */
#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\
    (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\
               __Pyx_GetItemInt_Generic(o, to_py_func(i))))
#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
    (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
                                                              int wraparound, int boundscheck);
#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
    (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
                                                              int wraparound, int boundscheck);
static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j);
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i,
                                                     int is_list, int wraparound, int boundscheck);

/* IncludeStringH.proto */
#include <string.h>

/* BytesEquals.proto */
static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals);

/* UnicodeEquals.proto */
static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals);

/* ObjectGetItem.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key);
#else
#define __Pyx_PyObject_GetItem(obj, key)  PyObject_GetItem(obj, key)
#endif

/* PyThreadStateGet.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyThreadState_declare  PyThreadState *__pyx_tstate;
#define __Pyx_PyThreadState_assign  __pyx_tstate = __Pyx_PyThreadState_Current;
#define __Pyx_PyErr_Occurred()  __pyx_tstate->curexc_type
#else
#define __Pyx_PyThreadState_declare
#define __Pyx_PyThreadState_assign
#define __Pyx_PyErr_Occurred()  PyErr_Occurred()
#endif

/* SaveResetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSave(type, value, tb)  __Pyx__ExceptionSave(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#define __Pyx_ExceptionReset(type, value, tb)  __Pyx__ExceptionReset(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
#else
#define __Pyx_ExceptionSave(type, value, tb)   PyErr_GetExcInfo(type, value, tb)
#define __Pyx_ExceptionReset(type, value, tb)  PyErr_SetExcInfo(type, value, tb)
#endif

/* PyErrExceptionMatches.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err)
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err);
#else
#define __Pyx_PyErr_ExceptionMatches(err)  PyErr_ExceptionMatches(err)
#endif

/* GetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_GetException(type, value, tb)  __Pyx__GetException(__pyx_tstate, type, value, tb)
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb);
#endif

/* None.proto */
static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname);

/* PyErrFetchRestore.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL)
#define __Pyx_ErrRestoreWithState(type, value, tb)  __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)    __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)    __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL))
#else
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#endif
#else
#define __Pyx_PyErr_Clear() PyErr_Clear()
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#define __Pyx_ErrRestoreWithState(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestoreInState(tstate, type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchInState(tstate, type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)  PyErr_Fetch(type, value, tb)
#endif

/* PySequenceContains.proto */
static CYTHON_INLINE int __Pyx_PySequence_ContainsTF(PyObject* item, PyObject* seq, int eq) {
    int result = PySequence_Contains(seq, item);
    return unlikely(result < 0) ? result : (result == (eq == Py_EQ));
}

/* RaiseTooManyValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected);

/* RaiseNeedMoreValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index);

/* IterFinish.proto */
static CYTHON_INLINE int __Pyx_IterFinish(void);

/* UnpackItemEndCheck.proto */
static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected);

/* ListAppend.proto */
#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {
    PyListObject* L = (PyListObject*) list;
    Py_ssize_t len = Py_SIZE(list);
    if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) {
        Py_INCREF(x);
        PyList_SET_ITEM(list, len, x);
        Py_SIZE(list) = len+1;
        return 0;
    }
    return PyList_Append(list, x);
}
#else
#define __Pyx_PyList_Append(L,x) PyList_Append(L,x)
#endif

/* SwapException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSwap(type, value, tb)  __Pyx__ExceptionSwap(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb);
#endif

/* ListCompAppend.proto */
#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) {
    PyListObject* L = (PyListObject*) list;
    Py_ssize_t len = Py_SIZE(list);
    if (likely(L->allocated > len)) {
        Py_INCREF(x);
        PyList_SET_ITEM(list, len, x);
        Py_SIZE(list) = len+1;
        return 0;
    }
    return PyList_Append(list, x);
}
#else
#define __Pyx_ListComp_Append(L,x) PyList_Append(L,x)
#endif

/* PyIntBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_EqObjC(PyObject *op1, PyObject *op2, long intval, int inplace);
#else
#define __Pyx_PyInt_EqObjC(op1, op2, intval, inplace)\
    PyObject_RichCompare(op1, op2, Py_EQ)
    #endif

/* PyObjectLookupSpecial.proto */
#if CYTHON_USE_PYTYPE_LOOKUP && CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_LookupSpecial(PyObject* obj, PyObject* attr_name) {
    PyObject *res;
    PyTypeObject *tp = Py_TYPE(obj);
#if PY_MAJOR_VERSION < 3
    if (unlikely(PyInstance_Check(obj)))
        return __Pyx_PyObject_GetAttrStr(obj, attr_name);
#endif
    res = _PyType_Lookup(tp, attr_name);
    if (likely(res)) {
        descrgetfunc f = Py_TYPE(res)->tp_descr_get;
        if (!f) {
            Py_INCREF(res);
        } else {
            res = f(res, obj, (PyObject *)tp);
        }
    } else {
        PyErr_SetObject(PyExc_AttributeError, attr_name);
    }
    return res;
}
#else
#define __Pyx_PyObject_LookupSpecial(o,n) __Pyx_PyObject_GetAttrStr(o,n)
#endif

/* PyIntBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, long intval, int inplace);
#else
#define __Pyx_PyInt_SubtractObjC(op1, op2, intval, inplace)\
    (inplace ? PyNumber_InPlaceSubtract(op1, op2) : PyNumber_Subtract(op1, op2))
#endif

/* PyIntBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, long intval, int inplace);
#else
#define __Pyx_PyInt_AddObjC(op1, op2, intval, inplace)\
    (inplace ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2))
#endif

/* PyIntBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_RemainderObjC(PyObject *op1, PyObject *op2, long intval, int inplace);
#else
#define __Pyx_PyInt_RemainderObjC(op1, op2, intval, inplace)\
    (inplace ? PyNumber_InPlaceRemainder(op1, op2) : PyNumber_Remainder(op1, op2))
#endif

/* Import.proto */
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level);

/* ImportFrom.proto */
static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name);

/* CalculateMetaclass.proto */
static PyObject *__Pyx_CalculateMetaclass(PyTypeObject *metaclass, PyObject *bases);

/* SetNameInClass.proto */
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1
#define __Pyx_SetNameInClass(ns, name, value)\
    (likely(PyDict_CheckExact(ns)) ? _PyDict_SetItem_KnownHash(ns, name, value, ((PyASCIIObject *) name)->hash) : PyObject_SetItem(ns, name, value))
#elif CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_SetNameInClass(ns, name, value)\
    (likely(PyDict_CheckExact(ns)) ? PyDict_SetItem(ns, name, value) : PyObject_SetItem(ns, name, value))
#else
#define __Pyx_SetNameInClass(ns, name, value)  PyObject_SetItem(ns, name, value)
#endif

/* Py3ClassCreate.proto */
static PyObject *__Pyx_Py3MetaclassPrepare(PyObject *metaclass, PyObject *bases, PyObject *name, PyObject *qualname,
                                           PyObject *mkw, PyObject *modname, PyObject *doc);
static PyObject *__Pyx_Py3ClassCreate(PyObject *metaclass, PyObject *name, PyObject *bases, PyObject *dict,
                                      PyObject *mkw, int calculate_metaclass, int allow_py2_metaclass);

/* CLineInTraceback.proto */
#ifdef CYTHON_CLINE_IN_TRACEBACK
#define __Pyx_CLineForTraceback(tstate, c_line)  (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0)
#else
static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line);
#endif

/* CodeObjectCache.proto */
typedef struct {
    PyCodeObject* code_object;
    int code_line;
} __Pyx_CodeObjectCacheEntry;
struct __Pyx_CodeObjectCache {
    int count;
    int max_count;
    __Pyx_CodeObjectCacheEntry* entries;
};
static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line);
static PyCodeObject *__pyx_find_code_object(int code_line);
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object);

/* AddTraceback.proto */
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename);

/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value);

/* CIntFromPy.proto */
static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);

/* CIntFromPy.proto */
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);

/* FastTypeChecks.proto */
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type)
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2);
#else
#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type)
#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2))
#endif
#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)

/* CheckBinaryVersion.proto */
static int __Pyx_check_binary_version(void);

/* InitStrings.proto */
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t);


/* Module declarations from 'metaphor.monal.lcode.codewriter' */
#define __Pyx_MODULE_NAME "metaphor.monal.lcode.codewriter"
extern int __pyx_module_is_main_metaphor__monal__lcode__codewriter;
int __pyx_module_is_main_metaphor__monal__lcode__codewriter = 0;

/* Implementation of 'metaphor.monal.lcode.codewriter' */
static PyObject *__pyx_builtin_property;
static PyObject *__pyx_builtin_super;
static PyObject *__pyx_builtin_TypeError;
static PyObject *__pyx_builtin_print;
static PyObject *__pyx_builtin_KeyError;
static PyObject *__pyx_builtin_range;
static PyObject *__pyx_builtin_open;
static PyObject *__pyx_builtin_sum;
static PyObject *__pyx_builtin_AttributeError;
static const char __pyx_k_[] = "";
static const char __pyx_k_0[] = "0";
static const char __pyx_k_C[] = "C";
static const char __pyx_k_N[] = "N";
static const char __pyx_k_P[] = "P";
static const char __pyx_k_Q[] = "Q";
static const char __pyx_k_U[] = "U";
static const char __pyx_k_c[] = "c";
static const char __pyx_k_d[] = "%d";
static const char __pyx_k_i[] = "i";
static const char __pyx_k_l[] = "l";
static const char __pyx_k_p[] = "p";
static const char __pyx_k_s[] = "* %s";
static const char __pyx_k_w[] = "%\\w*%";
static const char __pyx_k_CC[] = "CC";
static const char __pyx_k_Mu[] = "Mu";
static const char __pyx_k_St[] = "St";
static const char __pyx_k__2[] = ",";
static const char __pyx_k_ff[] = "ff";
static const char __pyx_k_mu[] = "mu";
static const char __pyx_k_nl[] = "nl";
static const char __pyx_k_np[] = "np";
static const char __pyx_k_os[] = "os";
static const char __pyx_k_py[] = ".py";
static const char __pyx_k_rb[] = "rb";
static const char __pyx_k_re[] = "re";
static const char __pyx_k_st[] = "st";
static const char __pyx_k_wb[] = "wb";
static const char __pyx_k_0_2[] = "0\n";
static const char __pyx_k_0_3[] = "{{{0}}}";
static const char __pyx_k_0_4[] = "[0]";
static const char __pyx_k_Ext[] = "Ext";
static const char __pyx_k_Get[] = "Get";
static const char __pyx_k_Mat[] = "Mat";
static const char __pyx_k_Max[] = "Max";
static const char __pyx_k_Min[] = "Min";
static const char __pyx_k_PY3[] = "PY3";
static const char __pyx_k_Set[] = "Set";
static const char __pyx_k_St0[] = "St0";
static const char __pyx_k_St1[] = "St1";
static const char __pyx_k_St2[] = "St2";
static const char __pyx_k_Xml[] = "Xml";
static const char __pyx_k_ZtZ[] = "ZtZ";
static const char __pyx_k__10[] = ".";
static const char __pyx_k__14[] = " ";
static const char __pyx_k__15[] = "_";
static const char __pyx_k__20[] = " = ";
static const char __pyx_k__21[] = "{{}}";
static const char __pyx_k__22[] = "{{{}}}";
static const char __pyx_k__23[] = "{}";
static const char __pyx_k__26[] = " += ";
static const char __pyx_k__27[] = " -= ";
static const char __pyx_k__28[] = " *= ";
static const char __pyx_k__30[] = " /= ";
static const char __pyx_k__35[] = "\t/*{}*/";
static const char __pyx_k__36[] = ",\n";
static const char __pyx_k__39[] = "\"_\"";
static const char __pyx_k__40[] = ", ";
static const char __pyx_k_dll[] = "dll";
static const char __pyx_k_dlm[] = "dlm";
static const char __pyx_k_doc[] = "__doc__";
static const char __pyx_k_err[] = "err";
static const char __pyx_k_ext[] = "ext";
static const char __pyx_k_fct[] = "fct";
static const char __pyx_k_grd[] = "grd";
static const char __pyx_k_ind[] = "ind";
static const char __pyx_k_lev[] = "lev";
static const char __pyx_k_lst[] = "lst";
static const char __pyx_k_nlf[] = "nlf";
static const char __pyx_k_now[] = "now";
static const char __pyx_k_res[] = "res";
static const char __pyx_k_s_2[] = "\"%s\"";
static const char __pyx_k_s_3[] = "{\n%s}";
static const char __pyx_k_s_4[] = "{%s}";
static const char __pyx_k_six[] = "six";
static const char __pyx_k_st0[] = "st0";
static const char __pyx_k_st1[] = "st1";
static const char __pyx_k_stb[] = "stb";
static const char __pyx_k_stt[] = "stt";
static const char __pyx_k_sub[] = "sub";
static const char __pyx_k_sum[] = "sum";
static const char __pyx_k_tfr[] = "tfr";
static const char __pyx_k_txt[] = "txt";
static const char __pyx_k_val[] = "val";
static const char __pyx_k_w_2[] = "w";
static const char __pyx_k_xml[] = "xml";
static const char __pyx_k_CStr[] = "CStr";
static const char __pyx_k_Date[] = "Date";
static const char __pyx_k_Line[] = "Line";
static const char __pyx_k_Mark[] = "Mark";
static const char __pyx_k_NULL[] = "NULL";
static const char __pyx_k_Name[] = "Name";
static const char __pyx_k_Step[] = "_Step";
static const char __pyx_k_Text[] = "Text";
static const char __pyx_k_Time[] = "Time";
static const char __pyx_k_User[] = "User";
static const char __pyx_k_WStr[] = "WStr";
static const char __pyx_k_back[] = "back";
static const char __pyx_k_base[] = "base";
static const char __pyx_k_date[] = "date";
static const char __pyx_k_exit[] = "__exit__";
static const char __pyx_k_file[] = "__file__";
static const char __pyx_k_garb[] = "garb";
static const char __pyx_k_init[] = "__init__";
static const char __pyx_k_join[] = "join";
static const char __pyx_k_keys[] = "keys";
static const char __pyx_k_lst2[] = "lst2";
static const char __pyx_k_main[] = "__main__";
static const char __pyx_k_mark[] = "mark";
static const char __pyx_k_name[] = "name";
static const char __pyx_k_ndim[] = "ndim";
static const char __pyx_k_node[] = "node";
static const char __pyx_k_open[] = "open";
static const char __pyx_k_path[] = "path";
static const char __pyx_k_read[] = "read";
static const char __pyx_k_sdir[] = "sdir";
static const char __pyx_k_self[] = "self";
static const char __pyx_k_test[] = "__test__";
static const char __pyx_k_time[] = "time";
static const char __pyx_k_xore[] = "xore";
static const char __pyx_k_Count[] = "Count";
static const char __pyx_k_FType[] = "FType";
static const char __pyx_k_H_M_S[] = "%H:%M:%S";
static const char __pyx_k_InOut[] = "InOut";
static const char __pyx_k_Mess1[] = "Mess1";
static const char __pyx_k_Mess2[] = "Mess2";
static const char __pyx_k_Model[] = "Model";
static const char __pyx_k_NNode[] = "_NNode";
static const char __pyx_k_Nodes[] = "Nodes";
static const char __pyx_k_Order[] = "Order";
static const char __pyx_k_Suite[] = "Suite";
static const char __pyx_k_Value[] = "Value";
static const char __pyx_k_atype[] = "atype";
static const char __pyx_k_d_m_Y[] = "%d/%m/%Y";
static const char __pyx_k_dosub[] = "_dosub";
static const char __pyx_k_enter[] = "__enter__";
static const char __pyx_k_fType[] = "fType";
static const char __pyx_k_fg_ua[] = "fg,ua";
static const char __pyx_k_fname[] = "fname";
static const char __pyx_k_ftDLM[] = "ftDLM";
static const char __pyx_k_ftype[] = "ftype";
static const char __pyx_k_group[] = "group";
static const char __pyx_k_ia_ib[] = "ia,ib";
static const char __pyx_k_if_ig[] = "if,ig";
static const char __pyx_k_if_jf[] = "if,jf";
static const char __pyx_k_ig_ih[] = "ig,ih";
static const char __pyx_k_ig_jg[] = "ig,jg";
static const char __pyx_k_index[] = "index";
static const char __pyx_k_isinf[] = "isinf";
static const char __pyx_k_iu_ju[] = "iu,ju";
static const char __pyx_k_lower[] = "lower";
static const char __pyx_k_model[] = "model";
static const char __pyx_k_nkDyn[] = "nkDyn";
static const char __pyx_k_numpy[] = "numpy";
static const char __pyx_k_order[] = "order";
static const char __pyx_k_owner[] = "owner";
static const char __pyx_k_param[] = "param";
static const char __pyx_k_print[] = "print";
static const char __pyx_k_range[] = "range";
static const char __pyx_k_shape[] = "shape";
static const char __pyx_k_split[] = "split";
static const char __pyx_k_start[] = "start";
static const char __pyx_k_style[] = "style";
static const char __pyx_k_super[] = "super";
static const char __pyx_k_today[] = "today";
static const char __pyx_k_train[] = "train";
static const char __pyx_k_uf_fa[] = "uf,fa";
static const char __pyx_k_ug_uh[] = "ug,uh";
static const char __pyx_k_ui_uj[] = "ui,uj";
static const char __pyx_k_upper[] = "upper";
static const char __pyx_k_utf_8[] = "utf-8";
static const char __pyx_k_value[] = "value";
static const char __pyx_k_vtMax[] = "vtMax";
static const char __pyx_k_vtMin[] = "vtMin";
static const char __pyx_k_write[] = "write";
static const char __pyx_k_18_15g[] = "%18.15g";
static const char __pyx_k_Affect[] = "Affect";
static const char __pyx_k_CFiles[] = "CFiles";
static const char __pyx_k_Common[] = "Common";
static const char __pyx_k_DimZtZ[] = "DimZtZ";
static const char __pyx_k_EnTete[] = "EnTete";
static const char __pyx_k_EndStr[] = "EndStr";
static const char __pyx_k_Hidden[] = "Hidden";
static const char __pyx_k_IDName[] = "IDName";
static const char __pyx_k_InNorm[] = "InNorm";
static const char __pyx_k_Indent[] = "Indent";
static const char __pyx_k_Inputs[] = "Inputs";
static const char __pyx_k_MatStr[] = "MatStr";
static const char __pyx_k_Matrix[] = "_Matrix";
static const char __pyx_k_MaxStr[] = "MaxStr";
static const char __pyx_k_MinStr[] = "MinStr";
static const char __pyx_k_Module[] = "Module";
static const char __pyx_k_Result[] = "Result";
static const char __pyx_k_Smiles[] = "Smiles";
static const char __pyx_k_Source[] = "Source";
static const char __pyx_k_StdDev[] = "StdDev";
static const char __pyx_k_Step_2[] = "Step";
static const char __pyx_k_Target[] = "Target";
static const char __pyx_k_TextID[] = "TextID";
static const char __pyx_k_Weight[] = "_Weight";
static const char __pyx_k_addbra[] = "addbra";
static const char __pyx_k_decode[] = "decode";
static const char __pyx_k_dosave[] = "dosave";
static const char __pyx_k_format[] = "format";
static const char __pyx_k_ftBase[] = "ftBase";
static const char __pyx_k_ftDesc[] = "ftDesc";
static const char __pyx_k_header[] = "header";
static const char __pyx_k_hidden[] = "hidden";
static const char __pyx_k_import[] = "__import__";
static const char __pyx_k_indent[] = "indent";
static const char __pyx_k_inputs[] = "_inputs";
static const char __pyx_k_linear[] = "linear";
static const char __pyx_k_memsep[] = "memsep";
static const char __pyx_k_models[] = "models";
static const char __pyx_k_module[] = "__module__";
static const char __pyx_k_modulo[] = "modulo";
static const char __pyx_k_nkStat[] = "nkStat";
static const char __pyx_k_nmodel[] = "nmodel";
static const char __pyx_k_result[] = "result";
static const char __pyx_k_setter[] = "setter";
static const char __pyx_k_smiles[] = "smiles";
static const char __pyx_k_socket[] = "socket";
static const char __pyx_k_source[] = "source";
static const char __pyx_k_usedll[] = "usedll";
static const char __pyx_k_Baselen[] = "Baselen";
static const char __pyx_k_CPrefix[] = "CPrefix";
static const char __pyx_k_CodeStr[] = "CodeStr";
static const char __pyx_k_Comment[] = "Comment";
static const char __pyx_k_EnQueue[] = "EnQueue";
static const char __pyx_k_FileExt[] = "FileExt";
static const char __pyx_k_Freedom[] = "Freedom";
static const char __pyx_k_GradStr[] = "GradStr";
static const char __pyx_k_Indent0[] = "Indent0";
static const char __pyx_k_MakeDLM[] = "MakeDLM";
static const char __pyx_k_MatDecl[] = "_MatDecl";
static const char __pyx_k_MaxDecl[] = "_MaxDecl";
static const char __pyx_k_MinDecl[] = "_MinDecl";
static const char __pyx_k_ModuleP[] = "ModuleP";
static const char __pyx_k_NNode_2[] = "NNode";
static const char __pyx_k_NetName[] = "_NetName";
static const char __pyx_k_OKMulti[] = "_OKMulti";
static const char __pyx_k_OutNorm[] = "OutNorm";
static const char __pyx_k_Outputs[] = "Outputs";
static const char __pyx_k_SaveDir[] = "_SaveDir";
static const char __pyx_k_Student[] = "Student";
static const char __pyx_k_Weights[] = "Weights";
static const char __pyx_k_compile[] = "compile";
static const char __pyx_k_created[] = "created";
static const char __pyx_k_depends[] = "depends";
static const char __pyx_k_dirname[] = "dirname";
static const char __pyx_k_fillstr[] = "fillstr";
static const char __pyx_k_fttrain[] = "fttrain";
static const char __pyx_k_getpass[] = "getpass";
static const char __pyx_k_getuser[] = "getuser";
static const char __pyx_k_intdecl[] = "intdecl";
static const char __pyx_k_libname[] = "libname";
static const char __pyx_k_mkdtemp[] = "mkdtemp";
static const char __pyx_k_needpot[] = "needpot";
static const char __pyx_k_partial[] = "partial";
static const char __pyx_k_prepare[] = "__prepare__";
static const char __pyx_k_replace[] = "replace";
static const char __pyx_k_replfct[] = "replfct";
static const char __pyx_k_squeeze[] = "squeeze";
static const char __pyx_k_targets[] = "targets";
static const char __pyx_k_temp_ii[] = "temp_ii";
static const char __pyx_k_temp_ji[] = "temp_ji";
static const char __pyx_k_usebase[] = "usebase";
static const char __pyx_k_version[] = "__version__";
static const char __pyx_k_BeginStr[] = "BeginStr";
static const char __pyx_k_BlocType[] = "BlocType";
static const char __pyx_k_CodeType[] = "CodeType";
static const char __pyx_k_Comments[] = "Comments";
static const char __pyx_k_Computer[] = "Computer";
static const char __pyx_k_DecalIni[] = "DecalIni";
static const char __pyx_k_Director[] = "Director";
static const char __pyx_k_DoAffect[] = "DoAffect";
static const char __pyx_k_FileName[] = "_FileName";
static const char __pyx_k_GetCCStr[] = "GetCCStr";
static const char __pyx_k_GetMuStr[] = "GetMuStr";
static const char __pyx_k_IniStStr[] = "IniStStr";
static const char __pyx_k_IniState[] = "IniState";
static const char __pyx_k_KeyError[] = "KeyError";
static const char __pyx_k_Markdate[] = "Markdate";
static const char __pyx_k_Matrix_2[] = "Matrix";
static const char __pyx_k_NoIndent[] = "_NoIndent";
static const char __pyx_k_NumpyDir[] = "NumpyDir";
static const char __pyx_k_Numpydir[] = "Numpydir";
static const char __pyx_k_PlusEgal[] = "PlusEgal";
static const char __pyx_k_Property[] = "Property";
static const char __pyx_k_StSource[] = "StSource";
static const char __pyx_k_StTarget[] = "StTarget";
static const char __pyx_k_Synapses[] = "Synapses";
static const char __pyx_k_Transfer[] = "Transfer";
static const char __pyx_k_TrueName[] = "TrueName";
static const char __pyx_k_UseCount[] = "_UseCount";
static const char __pyx_k_UserName[] = "_UserName";
static const char __pyx_k_ValToStr[] = "ValToStr";
static const char __pyx_k_Weight_2[] = "Weight";
static const char __pyx_k_basename[] = "basename";
static const char __pyx_k_datetime[] = "datetime";
static const char __pyx_k_filename[] = "filename";
static const char __pyx_k_ftusedll[] = "ftusedll";
static const char __pyx_k_included[] = "included";
static const char __pyx_k_isLinear[] = "isLinear";
static const char __pyx_k_markdate[] = "markdate";
static const char __pyx_k_original[] = "original";
static const char __pyx_k_property[] = "property";
static const char __pyx_k_qualname[] = "__qualname__";
static const char __pyx_k_setup_py[] = "setup.py";
static const char __pyx_k_splitext[] = "splitext";
static const char __pyx_k_st_InDev[] = "st_InDev";
static const char __pyx_k_stdtrain[] = "stdtrain";
static const char __pyx_k_strftime[] = "strftime";
static const char __pyx_k_tempfile[] = "tempfile";
static const char __pyx_k_transfer[] = "transfer";
static const char __pyx_k_trueName[] = "trueName";
static const char __pyx_k_vtStdDev[] = "vtStdDev";
static const char __pyx_k_vtWeight[] = "vtWeight";
static const char __pyx_k_BaseCount[] = "BaseCount";
static const char __pyx_k_CipherKey[] = "_CipherKey";
static const char __pyx_k_ClientNum[] = "_ClientNum";
static const char __pyx_k_Component[] = "Component";
static const char __pyx_k_DependStr[] = "DependStr";
static const char __pyx_k_Dimension[] = "Dimension";
static const char __pyx_k_GetAffect[] = "GetAffect";
static const char __pyx_k_GetCFiles[] = "GetCFiles";
static const char __pyx_k_GetEndStr[] = "GetEndStr";
static const char __pyx_k_GetString[] = "_GetString";
static const char __pyx_k_GetXmlStr[] = "GetXmlStr";
static const char __pyx_k_Getsmiles[] = "Getsmiles";
static const char __pyx_k_InNormStr[] = "InNormStr";
static const char __pyx_k_InOutputs[] = "InOutputs";
static const char __pyx_k_IsComment[] = "IsComment";
static const char __pyx_k_LimitLine[] = "LimitLine";
static const char __pyx_k_MatDecl_2[] = "MatDecl";
static const char __pyx_k_MaxDecl_2[] = "MaxDecl";
static const char __pyx_k_MinDecl_2[] = "MinDecl";
static const char __pyx_k_ModelFile[] = "ModelFile";
static const char __pyx_k_ModelName[] = "ModelName";
static const char __pyx_k_ModuleStr[] = "ModuleStr";
static const char __pyx_k_MoinsEgal[] = "MoinsEgal";
static const char __pyx_k_MultiEgal[] = "MultiEgal";
static const char __pyx_k_NetName_2[] = "NetName";
static const char __pyx_k_NetSource[] = "NetSource";
static const char __pyx_k_NlPlusStr[] = "NlPlusStr";
static const char __pyx_k_OKMulti_2[] = "OKMulti";
static const char __pyx_k_SaveDir_2[] = "SaveDir";
static const char __pyx_k_StMatIniS[] = "StMatIniS";
static const char __pyx_k_StMaxIniS[] = "StMaxIniS";
static const char __pyx_k_StMinIniS[] = "StMinIniS";
static const char __pyx_k_StateNode[] = "StateNode";
static const char __pyx_k_TypeError[] = "TypeError";
static const char __pyx_k_aincluded[] = "aincluded";
static const char __pyx_k_classdocs[] = "\n    classdocs\n    ";
static const char __pyx_k_codeconst[] = "codeconst";
static const char __pyx_k_codequote[] = "codequote";
static const char __pyx_k_ctUnknown[] = "ctUnknown";
static const char __pyx_k_dataCount[] = "dataCount";
static const char __pyx_k_datacount[] = "datacount";
static const char __pyx_k_datarange[] = "datarange";
static const char __pyx_k_dimension[] = "dimension";
static const char __pyx_k_extranorm[] = "extranorm";
static const char __pyx_k_ftMakeDLM[] = "ftMakeDLM";
static const char __pyx_k_ftSetupPy[] = "ftSetupPy";
static const char __pyx_k_ftbaseuse[] = "ftbaseuse";
static const char __pyx_k_functools[] = "functools";
static const char __pyx_k_hasMinMax[] = "hasMinMax";
static const char __pyx_k_mainModel[] = "mainModel";
static const char __pyx_k_metaclass[] = "__metaclass__";
static const char __pyx_k_modelType[] = "modelType";
static const char __pyx_k_ndesc_txt[] = "ndesc.txt";
static const char __pyx_k_netSource[] = "_netSource";
static const char __pyx_k_nodeCount[] = "nodeCount";
static const char __pyx_k_pptyvalue[] = "pptyvalue";
static const char __pyx_k_setSource[] = "setSource";
static const char __pyx_k_setup_cfg[] = "setup.cfg";
static const char __pyx_k_trainable[] = "trainable";
static const char __pyx_k_trainbase[] = "trainbase";
static const char __pyx_k_version_2[] = "version";
static const char __pyx_k_BaselenStr[] = "BaselenStr";
static const char __pyx_k_CCharOnlys[] = "CCharOnlys";
static const char __pyx_k_ChaineEtat[] = "ChaineEtat";
static const char __pyx_k_DebutLigne[] = "DebutLigne";
static const char __pyx_k_DecimalSep[] = "_DecimalSep";
static const char __pyx_k_Dispersion[] = "Dispersion";
static const char __pyx_k_DiviseEgal[] = "DiviseEgal";
static const char __pyx_k_FileName_2[] = "FileName";
static const char __pyx_k_FreedomStr[] = "FreedomStr";
static const char __pyx_k_GetCodeStr[] = "GetCodeStr";
static const char __pyx_k_GetDateStr[] = "GetDateStr";
static const char __pyx_k_GetIntdecl[] = "GetIntdecl";
static const char __pyx_k_GetMarkStr[] = "GetMarkStr";
static const char __pyx_k_GetNameStr[] = "GetNameStr";
static const char __pyx_k_GetNodeStr[] = "GetNodeStr";
static const char __pyx_k_GetTimeStr[] = "GetTimeStr";
static const char __pyx_k_GetUserStr[] = "GetUserStr";
static const char __pyx_k_Get_Inputs[] = "Get_Inputs";
static const char __pyx_k_ISO_8859_1[] = "ISO-8859-1";
static const char __pyx_k_IniWeights[] = "IniWeights";
static const char __pyx_k_InputNames[] = "InputNames";
static const char __pyx_k_JurComment[] = "_JurComment";
static const char __pyx_k_LangMarkup[] = "LangMarkup";
static const char __pyx_k_LongWeight[] = "LongWeight";
static const char __pyx_k_MakeParams[] = "MakeParams";
static const char __pyx_k_MarkupList[] = "MarkupList";
static const char __pyx_k_ModulePStr[] = "ModulePStr";
static const char __pyx_k_ModuleType[] = "ModuleType";
static const char __pyx_k_NoIndent_2[] = "NoIndent";
static const char __pyx_k_NoTemplate[] = "_NoTemplate";
static const char __pyx_k_Originbase[] = "Originbase";
static const char __pyx_k_OutNormStr[] = "OutNormStr";
static const char __pyx_k_Properties[] = "Properties";
static const char __pyx_k_SaveToFile[] = "SaveToFile";
static const char __pyx_k_StateNames[] = "StateNames";
static const char __pyx_k_StdDevDecl[] = "_StdDevDecl";
static const char __pyx_k_TargetName[] = "_TargetName";
static const char __pyx_k_Targetlist[] = "Targetlist";
static const char __pyx_k_UseCount_2[] = "UseCount";
static const char __pyx_k_UserName_2[] = "UserName";
static const char __pyx_k_WeightDecl[] = "_WeightDecl";
static const char __pyx_k_WithMatrix[] = "WithMatrix";
static const char __pyx_k_biasBaseId[] = "biasBaseId";
static const char __pyx_k_capitalize[] = "capitalize";
static const char __pyx_k_codeWriter[] = " codeWriter";
static const char __pyx_k_codewriter[] = "codewriter";
static const char __pyx_k_commondict[] = "commondict";
static const char __pyx_k_datarecord[] = "datarecord";
static const char __pyx_k_ftGradient[] = "ftGradient";
static const char __pyx_k_ftsetupcfg[] = "ftsetupcfg";
static const char __pyx_k_fttraindll[] = "fttraindll";
static const char __pyx_k_ftwithCext[] = "ftwithCext";
static const char __pyx_k_inputCount[] = "inputCount";
static const char __pyx_k_inputNodes[] = "inputNodes";
static const char __pyx_k_larten7732[] = "larten7732";
static const char __pyx_k_modelCount[] = "modelCount";
static const char __pyx_k_modelcount[] = "modelcount";
static const char __pyx_k_moduleName[] = "_moduleName";
static const char __pyx_k_nostartint[] = "nostartint";
static const char __pyx_k_originbase[] = "originbase";
static const char __pyx_k_paramCount[] = "paramCount";
static const char __pyx_k_smilesList[] = "smilesList";
static const char __pyx_k_specialsub[] = "specialsub";
static const char __pyx_k_st_Juridic[] = "st_Juridic";
static const char __pyx_k_substitute[] = "substitute";
static const char __pyx_k_useversion[] = "__useversion__";
static const char __pyx_k_util_utils[] = "util.utils";
static const char __pyx_k_0Targetlist[] = "0Targetlist";
static const char __pyx_k_AllSynapses[] = "AllSynapses";
static const char __pyx_k_BracketOut0[] = "BracketOut0";
static const char __pyx_k_CipherKey_2[] = "CipherKey";
static const char __pyx_k_ClientNum_2[] = "ClientNum";
static const char __pyx_k_CodeFichier[] = "CodeFichier";
static const char __pyx_k_CommentLine[] = "CommentLine";
static const char __pyx_k_CorrectChar[] = "CorrectChar";
static const char __pyx_k_DispersionR[] = "DispersionR";
static const char __pyx_k_FileExtLang[] = "FileExtLang";
static const char __pyx_k_GetBeginStr[] = "GetBeginStr";
static const char __pyx_k_GetCodeType[] = "GetCodeType";
static const char __pyx_k_GetDecalIni[] = "GetDecalIni";
static const char __pyx_k_GetInOutStr[] = "GetInOutStr";
static const char __pyx_k_GetNumpyDir[] = "GetNumpyDir";
static const char __pyx_k_GetOrderStr[] = "GetOrderStr";
static const char __pyx_k_GetString_2[] = "GetString";
static const char __pyx_k_GradHessStr[] = "GradHessStr";
static const char __pyx_k_ISO_8859_15[] = "ISO-8859-15";
static const char __pyx_k_InputRanges[] = "InputRanges";
static const char __pyx_k_InputValues[] = "InputValues";
static const char __pyx_k_Key_unknown[] = "Key '{}' unknown";
static const char __pyx_k_MakeLinkLib[] = "MakeLinkLib";
static const char __pyx_k_Markversion[] = "Markversion";
static const char __pyx_k_NetSource_2[] = "_NetSource";
static const char __pyx_k_NetworkKind[] = "NetworkKind";
static const char __pyx_k_NomFonction[] = "_NomFonction";
static const char __pyx_k_OUTPUTCOUNT[] = "[OUTPUTCOUNT]";
static const char __pyx_k_OutputName0[] = "OutputName0";
static const char __pyx_k_OutputNames[] = "OutputNames";
static const char __pyx_k_Properties2[] = "Properties2";
static const char __pyx_k_StMatrixIni[] = "StMatrixIni";
static const char __pyx_k_StWeightIni[] = "StWeightIni";
static const char __pyx_k_TouslesNoms[] = "TouslesNoms";
static const char __pyx_k_TrainStdDev[] = "_TrainStdDev";
static const char __pyx_k_TransferStr[] = "TransferStr";
static const char __pyx_k_UsedWeights[] = "UsedWeights";
static const char __pyx_k_WeightNames[] = "WeightNames";
static const char __pyx_k_WeightRedir[] = "_WeightRedir";
static const char __pyx_k_codeversion[] = "codeversion";
static const char __pyx_k_collections[] = "collections";
static const char __pyx_k_d_m_Y_H_M_S[] = "%d/%m/%Y %H:%M:%S";
static const char __pyx_k_defaultdict[] = "defaultdict";
static const char __pyx_k_defineMODEL[] = "defineMODEL";
static const char __pyx_k_ftTransfert[] = "ftTransfert";
static const char __pyx_k_ftbasetrain[] = "ftbasetrain";
static const char __pyx_k_getTemplate[] = "getTemplate";
static const char __pyx_k_gethostname[] = "gethostname";
static const char __pyx_k_hiddenCount[] = "hiddenCount";
static const char __pyx_k_indexoutput[] = "_indexoutput";
static const char __pyx_k_markversion[] = "markversion";
static const char __pyx_k_outputCount[] = "outputCount";
static const char __pyx_k_outputNodes[] = "outputNodes";
static const char __pyx_k_realptrdecl[] = "realptrdecl";
static const char __pyx_k_withneedpot[] = "withneedpot";
static const char __pyx_k_CodeFileName[] = "CodeFileName";
static const char __pyx_k_CodeGradient[] = "CodeGradient";
static const char __pyx_k_CommentCount[] = "CommentCount";
static const char __pyx_k_ComputerName[] = "_ComputerName";
static const char __pyx_k_DecimalSep_2[] = "DecimalSep";
static const char __pyx_k_DriverSource[] = "_DriverSource";
static const char __pyx_k_GetCodeStrII[] = "GetCodeStrII";
static const char __pyx_k_GetCodeStrJI[] = "GetCodeStrJI";
static const char __pyx_k_GetCommonStr[] = "GetCommonStr";
static const char __pyx_k_GetDataCount[] = "GetDataCount";
static const char __pyx_k_GetDimZtZStr[] = "GetDimZtZStr";
static const char __pyx_k_GetHiddenStr[] = "GetHiddenStr";
static const char __pyx_k_GetInputsStr[] = "GetInputsStr";
static const char __pyx_k_GetLinearStr[] = "GetLinearStr";
static const char __pyx_k_GetModelFile[] = "GetModelFile";
static const char __pyx_k_GetModelList[] = "GetModelList";
static const char __pyx_k_GetStdDevStr[] = "GetStdDevStr";
static const char __pyx_k_GetTargetStr[] = "GetTargetStr";
static const char __pyx_k_Getmodelname[] = "Getmodelname";
static const char __pyx_k_GradInputStr[] = "GradInputStr";
static const char __pyx_k_IncludeFiles[] = "IncludeFiles";
static const char __pyx_k_IniWeightStr[] = "IniWeightStr";
static const char __pyx_k_InputNameStr[] = "InputNameStr";
static const char __pyx_k_MatrixSource[] = "MatrixSource";
static const char __pyx_k_Monalversion[] = "Monalversion";
static const char __pyx_k_NoTemplate_2[] = "NoTemplate";
static const char __pyx_k_NomFGradient[] = "_NomFGradient";
static const char __pyx_k_NomFTransfer[] = "_NomFTransfer";
static const char __pyx_k_OutputRanges[] = "OutputRanges";
static const char __pyx_k_OutputValues[] = "OutputValues";
static const char __pyx_k_PptyValueStr[] = "PptyValueStr";
static const char __pyx_k_SetNetSource[] = "SetNetSource";
static const char __pyx_k_StStdDEvInis[] = "StStdDEvInis";
static const char __pyx_k_StWeightIniS[] = "StWeightIniS";
static const char __pyx_k_StateNameStr[] = "StateNameStr";
static const char __pyx_k_StdDevDecl_2[] = "StdDevDecl";
static const char __pyx_k_SynapseRange[] = "SynapseRange";
static const char __pyx_k_TargetName_2[] = "TargetName";
static const char __pyx_k_TemplateDict[] = "TemplateDict";
static const char __pyx_k_TemplatePath[] = "_TemplatePath";
static const char __pyx_k_TransferGrad[] = "TransferGrad";
static const char __pyx_k_WeightDecl_2[] = "WeightDecl";
static const char __pyx_k_WeightRanges[] = "WeightRanges";
static const char __pyx_k_addendofline[] = "addendofline";
static const char __pyx_k_commentCount[] = "commentCount";
static const char __pyx_k_ftOnlyHeader[] = "ftOnlyHeader";
static const char __pyx_k_ftSetupMulti[] = "ftSetupMulti";
static const char __pyx_k_ftSpecialSub[] = "ftSpecialSub";
static const char __pyx_k_ftWithHeader[] = "ftWithHeader";
static const char __pyx_k_ftmodeltrain[] = "ftmodeltrain";
static const char __pyx_k_getBiasBased[] = "getBiasBased";
static const char __pyx_k_getDataRange[] = "getDataRange";
static const char __pyx_k_moduleName_2[] = "moduleName";
static const char __pyx_k_monalversion[] = "monalversion";
static const char __pyx_k_originallink[] = "_originallink";
static const char __pyx_k_outputLinkId[] = "outputLinkId";
static const char __pyx_k_pptyleverage[] = "pptyleverage";
static const char __pyx_k_safemakedirs[] = "safemakedirs";
static const char __pyx_k_synapseCount[] = "synapseCount";
static const char __pyx_k_trainableStr[] = "trainableStr";
static const char __pyx_k_transferlist[] = "transferlist";
static const char __pyx_k_CodeFinInclus[] = "CodeFinInclus";
static const char __pyx_k_CodeNomEntree[] = "CodeNomEntree";
static const char __pyx_k_CodeNomSortie[] = "CodeNomSortie";
static const char __pyx_k_Configuration[] = "Configuration";
static const char __pyx_k_CurrentHeader[] = "_CurrentHeader";
static const char __pyx_k_DispersionStr[] = "DispersionStr";
static const char __pyx_k_EndCommentOut[] = "EndCommentOut";
static const char __pyx_k_ExternVectors[] = "_ExternVectors";
static const char __pyx_k_ForAllOutputs[] = "_ForAllOutputs";
static const char __pyx_k_GetDataRecStr[] = "GetDataRecStr";
static const char __pyx_k_GetJurComment[] = "GetJurComment";
static const char __pyx_k_GetLangMarkup[] = "GetLangMarkup";
static const char __pyx_k_GetLibNameStr[] = "GetLibNameStr";
static const char __pyx_k_GetLongWeight[] = "GetLongWeight";
static const char __pyx_k_GetMakeParams[] = "GetMakeParams";
static const char __pyx_k_GetModelCount[] = "GetModelCount";
static const char __pyx_k_GetOutputsStr[] = "GetOutputsStr";
static const char __pyx_k_GetStudentStr[] = "GetStudentStr";
static const char __pyx_k_GetTargetList[] = "GetTargetList";
static const char __pyx_k_GetTextFromID[] = "GetTextFromID";
static const char __pyx_k_GetWithMatrix[] = "GetWithMatrix";
static const char __pyx_k_GetsmilesList[] = "GetsmilesList";
static const char __pyx_k_GradHessFDStr[] = "GradHessFDStr";
static const char __pyx_k_InputRangeStr[] = "InputRangeStr";
static const char __pyx_k_MaxLineLength[] = "_MaxLineLength";
static const char __pyx_k_MultiTransfer[] = "MultiTransfer";
static const char __pyx_k_NomFonction_2[] = "NomFonction";
static const char __pyx_k_OutputNameStr[] = "OutputNameStr";
static const char __pyx_k_PropertyValue[] = "PropertyValue";
static const char __pyx_k_SetDecimalSep[] = "SetDecimalSep";
static const char __pyx_k_ShortFileName[] = "ShortFileName";
static const char __pyx_k_StTransferDyn[] = "StTransferDyn";
static const char __pyx_k_UsedWeightStr[] = "UsedWeightStr";
static const char __pyx_k_WeightNameStr[] = "WeightNameStr";
static const char __pyx_k_WeightRedir_2[] = "WeightRedir";
static const char __pyx_k_biasbasedlist[] = "biasbasedlist";
static const char __pyx_k_computedNodes[] = "computedNodes";
static const char __pyx_k_configuration[] = "configuration";
static const char __pyx_k_getModuleType[] = "getModuleType";
static const char __pyx_k_modelNameList[] = "modelNameList";
static const char __pyx_k_needPotential[] = "needPotential";
static const char __pyx_k_outputsynlist[] = "outputsynlist";
static const char __pyx_k_paramfilename[] = "paramfilename";
static const char __pyx_k_AttributeError[] = "AttributeError";
static const char __pyx_k_BlocConstantes[] = "BlocConstantes";
static const char __pyx_k_BracketOut0Str[] = "BracketOut0Str";
static const char __pyx_k_BracketOutDecl[] = "BracketOutDecl";
static const char __pyx_k_CodeWriterBase[] = "CodeWriterBase";
static const char __pyx_k_ComputerName_2[] = "ComputerName";
static const char __pyx_k_DriverSource_2[] = "DriverSource";
static const char __pyx_k_Get0TargetList[] = "Get0TargetList";
static const char __pyx_k_GetCommentsStr[] = "GetCommentsStr";
static const char __pyx_k_GetComputerStr[] = "GetComputerStr";
static const char __pyx_k_GetDitectorStr[] = "GetDitectorStr";
static const char __pyx_k_GetFileNameStr[] = "GetFileNameStr";
static const char __pyx_k_GetInputValues[] = "GetInputValues";
static const char __pyx_k_GetMakeLinkLib[] = "GetMakeLinkLib";
static const char __pyx_k_GetMarkdateStr[] = "GetMarkdateStr";
static const char __pyx_k_GetNetworkKind[] = "GetNetworkKind";
static const char __pyx_k_GetRealptrdecl[] = "GetRealptrdecl";
static const char __pyx_k_GetSynapsesStr[] = "GetSynapsesStr";
static const char __pyx_k_GetTrueNameStr[] = "GetTrueNameStr";
static const char __pyx_k_GetUseCountStr[] = "GetUseCountStr";
static const char __pyx_k_InputNamesDecl[] = "InputNamesDecl";
static const char __pyx_k_InputNamesLong[] = "InputNamesLong";
static const char __pyx_k_NomFGradient_2[] = "NomFGradient";
static const char __pyx_k_NomFTransfer_2[] = "NomFTransfer";
static const char __pyx_k_OutputName0Str[] = "OutputName0Str";
static const char __pyx_k_OutputRangeStr[] = "OutputRangeStr";
static const char __pyx_k_ReadCodeFromID[] = "ReadCodeFromID";
static const char __pyx_k_SingleGradient[] = "_SingleGradient";
static const char __pyx_k_StTransGradDyn[] = "StTransGradDyn";
static const char __pyx_k_StTransferDyn2[] = "StTransferDyn2";
static const char __pyx_k_StTransferStat[] = "StTransferStat";
static const char __pyx_k_TemplatePath_2[] = "TemplatePath";
static const char __pyx_k_WeightRangeStr[] = "WeightRangeStr";
static const char __pyx_k_biasbasedcount[] = "biasbasedcount";
static const char __pyx_k_code_templates[] = "code_templates";
static const char __pyx_k_dynamiclinking[] = "_dynamiclinking";
static const char __pyx_k_getCodeVersion[] = "getCodeVersion";
static const char __pyx_k_getOutputLinks[] = "getOutputLinks";
static const char __pyx_k_originallink_2[] = "originallink";
static const char __pyx_k_outputsynCount[] = "outputsynCount";
static const char __pyx_k_real_potential[] = "real potential;\n";
static const char __pyx_k_real_ptrinputs[] = "real_ptrinputs";
static const char __pyx_k_setReplaceDict[] = "setReplaceDict";
static const char __pyx_k_singleGradient[] = "singleGradient";
static const char __pyx_k_usecodeversion[] = "usecodeversion";
static const char __pyx_k_util_monalbase[] = "util.monalbase";
static const char __pyx_k_CodeDebutInclus[] = "CodeDebutInclus";
static const char __pyx_k_CurrentHeader_2[] = "CurrentHeader";
static const char __pyx_k_ExternVectors_2[] = "ExternVectors";
static const char __pyx_k_ExtraParamsDecl[] = "ExtraParamsDecl";
static const char __pyx_k_ExtraParamsInit[] = "ExtraParamsInit";
static const char __pyx_k_ForAllOutputs_2[] = "ForAllOutputs";
static const char __pyx_k_GetDimensionStr[] = "GetDimensionStr";
static const char __pyx_k_GetInOutputsStr[] = "GetInOutputsStr";
static const char __pyx_k_GetIncludeFiles[] = "GetIncludeFiles";
static const char __pyx_k_GetMatrixSource[] = "GetMatrixSource";
static const char __pyx_k_GetOutputValues[] = "GetOutputValues";
static const char __pyx_k_GetTransferList[] = "GetTransferList";
static const char __pyx_k_Get_IndexOutput[] = "Get_IndexOutput";
static const char __pyx_k_HalfDispersionR[] = "HalfDispersionR";
static const char __pyx_k_InputNamesProto[] = "InputNamesProto";
static const char __pyx_k_InputRangesDecl[] = "InputRangesDecl";
static const char __pyx_k_InputRangesLong[] = "InputRangesLong";
static const char __pyx_k_MaxLineLength_2[] = "MaxLineLength";
static const char __pyx_k_MultiCondition1[] = "MultiCondition1";
static const char __pyx_k_PptyLeverageStr[] = "PptyLeverageStr";
static const char __pyx_k_StForAllOutputs[] = "StForAllOutputs";
static const char __pyx_k_StTransGradStat[] = "StTransGradStat";
static const char __pyx_k_StTransferStat2[] = "StTransferStat2";
static const char __pyx_k_StartCommentOut[] = "StartCommentOut";
static const char __pyx_k_defineMODELNAME[] = "defineMODELNAME";
static const char __pyx_k_int_indexoutput[] = "int_indexoutput";
static const char __pyx_k_proprietaryname[] = "proprietaryname";
static const char __pyx_k_returnInputName[] = "returnInputName";
static const char __pyx_k_studentvariable[] = "studentvariable";
static const char __pyx_k_ConfigurationStr[] = "ConfigurationStr";
static const char __pyx_k_EndComment0extra[] = "EndComment0extra";
static const char __pyx_k_ExtraWeightCount[] = "ExtraWeightCount";
static const char __pyx_k_GetBiasBasedList[] = "GetBiasBasedList";
static const char __pyx_k_GetJurCommentStr[] = "GetJurCommentStr";
static const char __pyx_k_GetMultiTransfer[] = "GetMultiTransfer";
static const char __pyx_k_GetOriginBaseStr[] = "GetOriginBaseStr";
static const char __pyx_k_GetOutputSynList[] = "GetOutputSynList";
static const char __pyx_k_GetRealptrInputs[] = "GetRealptrInputs";
static const char __pyx_k_GetShortFileName[] = "GetShortFileName";
static const char __pyx_k_GetTrueModelList[] = "GetTrueModelList";
static const char __pyx_k_Getparamfilename[] = "Getparamfilename";
static const char __pyx_k_InputNameDeclStr[] = "InputNameDeclStr";
static const char __pyx_k_InputNameLongStr[] = "InputNameLongStr";
static const char __pyx_k_InputRangesProto[] = "InputRangesProto";
static const char __pyx_k_NomFGradientCall[] = "_NomFGradientCall";
static const char __pyx_k_PropertyLeverage[] = "PropertyLeverage";
static const char __pyx_k_SingleGradient_2[] = "SingleGradient";
static const char __pyx_k_StWeightRedirIni[] = "StWeightRedirIni";
static const char __pyx_k_TransferGradHess[] = "TransferGradHess";
static const char __pyx_k_WeightNamesShort[] = "WeightNamesShort";
static const char __pyx_k_baseCodeFileName[] = "baseCodeFileName";
static const char __pyx_k_code_common_mini[] = "code_common_mini";
static const char __pyx_k_dispersionMatrix[] = "dispersionMatrix";
static const char __pyx_k_dynamiclinking_2[] = "dynamiclinking";
static const char __pyx_k_ftsingletraindll[] = "ftsingletraindll";
static const char __pyx_k_returnOutputName[] = "returnOutputName";
static const char __pyx_k_BracketOutDeclStr[] = "BracketOutDeclStr";
static const char __pyx_k_ChaineCodeNeurone[] = "ChaineCodeNeurone";
static const char __pyx_k_GetAllSynapsesStr[] = "GetAllSynapsesStr";
static const char __pyx_k_GetIntIndexOutput[] = "GetIntIndexOutput";
static const char __pyx_k_GetMarkversionStr[] = "GetMarkversionStr";
static const char __pyx_k_Getbiasbasedcount[] = "Getbiasbasedcount";
static const char __pyx_k_GetdefineMODELStr[] = "GetdefineMODELStr";
static const char __pyx_k_Getoutputsyncount[] = "Getoutputsyncount";
static const char __pyx_k_InputNameProtoStr[] = "InputNameProtoStr";
static const char __pyx_k_InputRangeDeclStr[] = "InputRangeDeclStr";
static const char __pyx_k_InputRangeLongStr[] = "InputRangeLongStr";
static const char __pyx_k_ReplaceDictionary[] = "ReplaceDictionary";
static const char __pyx_k_TransferGradInput[] = "TransferGradInput";
static const char __pyx_k_ftsinglebasetrain[] = "ftsinglebasetrain";
static const char __pyx_k_getDynamicLinking[] = "getDynamicLinking";
static const char __pyx_k_getUseCodeVersion[] = "getUseCodeVersion";
static const char __pyx_k_modelTrueNameList[] = "modelTrueNameList";
static const char __pyx_k_transferprimelist[] = "transferprimelist";
static const char __pyx_k_CodeProtoProcedure[] = "CodeProtoProcedure";
static const char __pyx_k_CommentTeteFichier[] = "CommentTeteFichier";
static const char __pyx_k_DeclarationMatrice[] = "DeclarationMatrice";
static const char __pyx_k_DeclarationVecteur[] = "DeclarationVecteur";
static const char __pyx_k_ExtraParamsDeclStr[] = "ExtraParamsDeclStr";
static const char __pyx_k_GetCommentCountStr[] = "GetCommentCountStr";
static const char __pyx_k_GetSynapseRangeStr[] = "GetSynapseRangeStr";
static const char __pyx_k_GetreturnInputName[] = "GetreturnInputName";
static const char __pyx_k_InputRangeProtoStr[] = "InputRangeProtoStr";
static const char __pyx_k_NomFGradientCall_2[] = "NomFGradientCall";
static const char __pyx_k_StTransGradDynCall[] = "StTransGradDynCall";
static const char __pyx_k_StartComment0extra[] = "StartComment0extra";
static const char __pyx_k_TransferGradHessFD[] = "TransferGradHessFD";
static const char __pyx_k_WeightNameShortStr[] = "WeightNameShortStr";
static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback";
static const char __pyx_k_inputNamesFullDecl[] = "inputNamesFullDecl";
static const char __pyx_k_ChaineSortieNeurone[] = "ChaineSortieNeurone";
static const char __pyx_k_CurrentCodeFileName[] = "CurrentCodeFileName";
static const char __pyx_k_CurrentFunctionType[] = "_CurrentFunctionType";
static const char __pyx_k_ExtractFileNameOnly[] = "ExtractFileNameOnly";
static const char __pyx_k_GetreturnOutputName[] = "GetreturnOutputName";
static const char __pyx_k_SetDecimalSeparator[] = "SetDecimalSeparator";
static const char __pyx_k_StTransGradStatCall[] = "StTransGradStatCall";
static const char __pyx_k_SubstituteVariables[] = "SubstituteVariables";
static const char __pyx_k_ftTransfertLeverage[] = "ftTransfertLeverage";
static const char __pyx_k_outputNamesFullDecl[] = "outputNamesFullDecl";
static const char __pyx_k_setCurrentFileTypes[] = "setCurrentFileTypes";
static const char __pyx_k_CodeWriterBase_Suite[] = "CodeWriterBase.Suite";
static const char __pyx_k_DispersionReduiteStr[] = "DispersionReduiteStr";
static const char __pyx_k_ExtraWeightsCountStr[] = "ExtraWeightsCountStr";
static const char __pyx_k_GetTransferPrimeList[] = "GetTransferPrimeList";
static const char __pyx_k_nonASCIICharsConvert[] = "nonASCIICharsConvert";
static const char __pyx_k_CodeFonctionTransfert[] = "CodeFonctionTransfert";
static const char __pyx_k_CodeWriterBase___init[] = "CodeWriterBase.__init__";
static const char __pyx_k_CodeWriterBase__dosub[] = "CodeWriterBase._dosub";
static const char __pyx_k_CurrentFunctionType_2[] = "CurrentFunctionType";
static const char __pyx_k_GetdefineMODELNAMEStr[] = "GetdefineMODELNAMEStr";
static const char __pyx_k_GetinputNamesFullDecl[] = "GetinputNamesFullDecl";
static const char __pyx_k_InitialisationMatrice[] = "InitialisationMatrice";
static const char __pyx_k_InitialisationVecteur[] = "InitialisationVecteur";
static const char __pyx_k_MultiTransferGradient[] = "MultiTransferGradient";
static const char __pyx_k_CodeWriterBase_FileExt[] = "CodeWriterBase.FileExt";
static const char __pyx_k_GetoutputNamesFullDecl[] = "GetoutputNamesFullDecl";
static const char __pyx_k_error_on_s_replacement[] = "error on %s replacement";
static const char __pyx_k_CodeFichierAvecTemplate[] = "CodeFichierAvecTemplate";
static const char __pyx_k_CodeWriterBase_DoAffect[] = "CodeWriterBase.DoAffect";
static const char __pyx_k_CodeWriterBase_GetMuStr[] = "CodeWriterBase.GetMuStr";
static const char __pyx_k_CodeWriterBase_PlusEgal[] = "CodeWriterBase.PlusEgal";
static const char __pyx_k_CodeWriterBase_ValToStr[] = "CodeWriterBase.ValToStr";
static const char __pyx_k_DefaultDecimalSeparator[] = "DefaultDecimalSeparator";
static const char __pyx_k_CodeFonctionTransfertAdv[] = "CodeFonctionTransfertAdv";
static const char __pyx_k_CodeWriterBase_BaseCount[] = "CodeWriterBase.BaseCount";
static const char __pyx_k_CodeWriterBase_GetAffect[] = "CodeWriterBase.GetAffect";
static const char __pyx_k_CodeWriterBase_GetEndStr[] = "CodeWriterBase.GetEndStr";
static const char __pyx_k_CodeWriterBase_GetXmlStr[] = "CodeWriterBase.GetXmlStr";
static const char __pyx_k_CodeWriterBase_Getsmiles[] = "CodeWriterBase.Getsmiles";
static const char __pyx_k_CodeWriterBase_IsComment[] = "CodeWriterBase.IsComment";
static const char __pyx_k_CodeWriterBase_LimitLine[] = "CodeWriterBase.LimitLine";
static const char __pyx_k_CodeWriterBase_ModuleStr[] = "CodeWriterBase.ModuleStr";
static const char __pyx_k_CodeWriterBase_MoinsEgal[] = "CodeWriterBase.MoinsEgal";
static const char __pyx_k_CodeWriterBase_MultiEgal[] = "CodeWriterBase.MultiEgal";
static const char __pyx_k_CodeWriterBase_NetSource[] = "CodeWriterBase.NetSource";
static const char __pyx_k_CodeWriterBase_setSource[] = "CodeWriterBase.setSource";
static const char __pyx_k_DemiDispersionReduiteStr[] = "DemiDispersionReduiteStr";
static const char __pyx_k_GetMultiTransferGradient[] = "GetMultiTransferGradient";
static const char __pyx_k_metaphor_nntoolbox_utils[] = "metaphor.nntoolbox.utils";
static const char __pyx_k_CodeWriterBase_DiviseEgal[] = "CodeWriterBase.DiviseEgal";
static const char __pyx_k_CodeWriterBase_GetCodeStr[] = "CodeWriterBase.GetCodeStr";
static const char __pyx_k_CodeWriterBase_GetDateStr[] = "CodeWriterBase.GetDateStr";
static const char __pyx_k_CodeWriterBase_GetMarkStr[] = "CodeWriterBase.GetMarkStr";
static const char __pyx_k_CodeWriterBase_GetNameStr[] = "CodeWriterBase.GetNameStr";
static const char __pyx_k_CodeWriterBase_GetNodeStr[] = "CodeWriterBase.GetNodeStr";
static const char __pyx_k_CodeWriterBase_GetTimeStr[] = "CodeWriterBase.GetTimeStr";
static const char __pyx_k_CodeWriterBase_GetUserStr[] = "CodeWriterBase.GetUserStr";
static const char __pyx_k_CodeWriterBase_ModulePStr[] = "CodeWriterBase.ModulePStr";
static const char __pyx_k_CodeWriterBase_SaveToFile[] = "CodeWriterBase.SaveToFile";
static const char __pyx_k_partialExtraParamsInitStr[] = "partialExtraParamsInitStr";
static const char __pyx_k_CodeFichierGradientInterne[] = "CodeFichierGradientInterne";
static const char __pyx_k_CodeWriterBase_CodeFichier[] = "CodeWriterBase.CodeFichier";
static const char __pyx_k_CodeWriterBase_CommentLine[] = "CodeWriterBase.CommentLine";
static const char __pyx_k_CodeWriterBase_GetBeginStr[] = "CodeWriterBase.GetBeginStr";
static const char __pyx_k_CodeWriterBase_GetCodeType[] = "CodeWriterBase.GetCodeType";
static const char __pyx_k_CodeWriterBase_GetDecalIni[] = "CodeWriterBase.GetDecalIni";
static const char __pyx_k_CodeWriterBase_GetInOutStr[] = "CodeWriterBase.GetInOutStr";
static const char __pyx_k_CodeWriterBase_GetNumpyDir[] = "CodeWriterBase.GetNumpyDir";
static const char __pyx_k_CodeWriterBase_GetOrderStr[] = "CodeWriterBase.GetOrderStr";
static const char __pyx_k_CodeWriterBase_TouslesNoms[] = "CodeWriterBase.TouslesNoms";
static const char __pyx_k_CodeWriterBase_TransferStr[] = "CodeWriterBase.TransferStr";
static const char __pyx_k_CodeWriterBase_getTemplate[] = "CodeWriterBase.getTemplate";
static const char __pyx_k_CodeFichierTransfertInterne[] = "CodeFichierTransfertInterne";
static const char __pyx_k_CodeWriterBase_CodeFileName[] = "CodeWriterBase.CodeFileName";
static const char __pyx_k_CodeWriterBase_DriverSource[] = "CodeWriterBase.DriverSource";
static const char __pyx_k_CodeWriterBase_GetCodeStrII[] = "CodeWriterBase.GetCodeStrII";
static const char __pyx_k_CodeWriterBase_GetCodeStrJI[] = "CodeWriterBase.GetCodeStrJI";
static const char __pyx_k_CodeWriterBase_GetDataCount[] = "CodeWriterBase.GetDataCount";
static const char __pyx_k_CodeWriterBase_GetHiddenStr[] = "CodeWriterBase.GetHiddenStr";
static const char __pyx_k_CodeWriterBase_GetInputsStr[] = "CodeWriterBase.GetInputsStr";
static const char __pyx_k_CodeWriterBase_GetLinearStr[] = "CodeWriterBase.GetLinearStr";
static const char __pyx_k_CodeWriterBase_GetModelList[] = "CodeWriterBase.GetModelList";
static const char __pyx_k_CodeWriterBase_GetStdDevStr[] = "CodeWriterBase.GetStdDevStr";
static const char __pyx_k_CodeWriterBase_GetTargetStr[] = "CodeWriterBase.GetTargetStr";
static const char __pyx_k_CodeWriterBase_Getmodelname[] = "CodeWriterBase.Getmodelname";
static const char __pyx_k_CodeWriterBase_PptyValueStr[] = "CodeWriterBase.PptyValueStr";
static const char __pyx_k_CodeWriterBase_SetNetSource[] = "CodeWriterBase.SetNetSource";
static const char __pyx_k_CodeWriterBase_getDataRange[] = "CodeWriterBase.getDataRange";
static const char __pyx_k_CodeWriterBase_trainableStr[] = "CodeWriterBase.trainableStr";
static const char __pyx_k_CodeWriterBase_GetDataRecStr[] = "CodeWriterBase.GetDataRecStr";
static const char __pyx_k_CodeWriterBase_GetJurComment[] = "CodeWriterBase.GetJurComment";
static const char __pyx_k_CodeWriterBase_GetLangMarkup[] = "CodeWriterBase.GetLangMarkup";
static const char __pyx_k_CodeWriterBase_GetLongWeight[] = "CodeWriterBase.GetLongWeight";
static const char __pyx_k_CodeWriterBase_GetModelCount[] = "CodeWriterBase.GetModelCount";
static const char __pyx_k_CodeWriterBase_GetOutputsStr[] = "CodeWriterBase.GetOutputsStr";
static const char __pyx_k_CodeWriterBase_GetStudentStr[] = "CodeWriterBase.GetStudentStr";
static const char __pyx_k_CodeWriterBase_GetTargetList[] = "CodeWriterBase.GetTargetList";
static const char __pyx_k_CodeWriterBase_GetTextFromID[] = "CodeWriterBase.GetTextFromID";
static const char __pyx_k_CodeWriterBase_GetWithMatrix[] = "CodeWriterBase.GetWithMatrix";
static const char __pyx_k_CodeWriterBase_GetsmilesList[] = "CodeWriterBase.GetsmilesList";
static const char __pyx_k_CodeWriterBase_SetDecimalSep[] = "CodeWriterBase.SetDecimalSep";
static const char __pyx_k_CodeWriterBase_getModuleType[] = "CodeWriterBase.getModuleType";
static const char __pyx_k_CodeWriterBase_BracketOut0Str[] = "CodeWriterBase.BracketOut0Str";
static const char __pyx_k_CodeWriterBase_Get0TargetList[] = "CodeWriterBase.Get0TargetList";
static const char __pyx_k_CodeWriterBase_GetComputerStr[] = "CodeWriterBase.GetComputerStr";
static const char __pyx_k_CodeWriterBase_GetDitectorStr[] = "CodeWriterBase.GetDitectorStr";
static const char __pyx_k_CodeWriterBase_GetFileNameStr[] = "CodeWriterBase.GetFileNameStr";
static const char __pyx_k_CodeWriterBase_GetInputValues[] = "CodeWriterBase.GetInputValues";
static const char __pyx_k_CodeWriterBase_GetMarkdateStr[] = "CodeWriterBase.GetMarkdateStr";
static const char __pyx_k_CodeWriterBase_GetNetworkKind[] = "CodeWriterBase.GetNetworkKind";
static const char __pyx_k_CodeWriterBase_GetSynapsesStr[] = "CodeWriterBase.GetSynapsesStr";
static const char __pyx_k_CodeWriterBase_GetTrueNameStr[] = "CodeWriterBase.GetTrueNameStr";
static const char __pyx_k_CodeWriterBase_GetUseCountStr[] = "CodeWriterBase.GetUseCountStr";
static const char __pyx_k_CodeWriterBase_ReadCodeFromID[] = "CodeWriterBase.ReadCodeFromID";
static const char __pyx_k_CodeWriterBase_getCodeVersion[] = "CodeWriterBase.getCodeVersion";
static const char __pyx_k_CodeWriterBase_setReplaceDict[] = "CodeWriterBase.setReplaceDict";
static const char __pyx_k_CodeWriterBase_GetDimensionStr[] = "CodeWriterBase.GetDimensionStr";
static const char __pyx_k_CodeWriterBase_GetMatrixSource[] = "CodeWriterBase.GetMatrixSource";
static const char __pyx_k_CodeWriterBase_GetOutputValues[] = "CodeWriterBase.GetOutputValues";
static const char __pyx_k_CodeWriterBase_MultiCondition1[] = "CodeWriterBase.MultiCondition1";
static const char __pyx_k_CodeWriterBase_PptyLeverageStr[] = "CodeWriterBase.PptyLeverageStr";
static const char __pyx_k_CodeWriterBase_ConfigurationStr[] = "CodeWriterBase.ConfigurationStr";
static const char __pyx_k_CodeWriterBase_GetBiasBasedList[] = "CodeWriterBase.GetBiasBasedList";
static const char __pyx_k_CodeWriterBase_GetOriginBaseStr[] = "CodeWriterBase.GetOriginBaseStr";
static const char __pyx_k_CodeWriterBase_GetOutputSynList[] = "CodeWriterBase.GetOutputSynList";
static const char __pyx_k_CodeWriterBase_GetShortFileName[] = "CodeWriterBase.GetShortFileName";
static const char __pyx_k_CodeWriterBase_GetTrueModelList[] = "CodeWriterBase.GetTrueModelList";
static const char __pyx_k_CodeWriterBase_Getparamfilename[] = "CodeWriterBase.Getparamfilename";
static const char __pyx_k_CodeWriterBase_baseCodeFileName[] = "CodeWriterBase.baseCodeFileName";
static const char __pyx_k_Created_on_25_oct_2013_author_j[] = "\nCreated on 25 oct. 2013\n\n@author: jeanluc\n";
static const char __pyx_k_metaphor_monal_lcode_codewriter[] = "metaphor.monal.lcode.codewriter";
static const char __pyx_k_CodeFichierTransfertLeverageInte[] = "CodeFichierTransfertLeverageInterne";
static const char __pyx_k_CodeWriterBase_BracketOutDeclStr[] = "CodeWriterBase.BracketOutDeclStr";
static const char __pyx_k_CodeWriterBase_CodeFichierAvecTe[] = "CodeWriterBase.CodeFichierAvecTemplate";
static const char __pyx_k_CodeWriterBase_CodeFichierGradie[] = "CodeWriterBase.CodeFichierGradientInterne";
static const char __pyx_k_CodeWriterBase_CodeFichierTransf[] = "CodeWriterBase.CodeFichierTransfertInterne";
static const char __pyx_k_CodeWriterBase_CurrentCodeFileNa[] = "CodeWriterBase.CurrentCodeFileName";
static const char __pyx_k_CodeWriterBase_ExtractFileNameOn[] = "CodeWriterBase.ExtractFileNameOnly";
static const char __pyx_k_CodeWriterBase_GetCommentCountSt[] = "CodeWriterBase.GetCommentCountStr";
static const char __pyx_k_CodeWriterBase_GetMarkversionStr[] = "CodeWriterBase.GetMarkversionStr";
static const char __pyx_k_CodeWriterBase_Getbiasbasedcount[] = "CodeWriterBase.Getbiasbasedcount";
static const char __pyx_k_CodeWriterBase_Getoutputsyncount[] = "CodeWriterBase.Getoutputsyncount";
static const char __pyx_k_CodeWriterBase_InitialisationMat[] = "CodeWriterBase.InitialisationMatrice";
static const char __pyx_k_CodeWriterBase_InitialisationVec[] = "CodeWriterBase.InitialisationVecteur";
static const char __pyx_k_CodeWriterBase_SetDecimalSeparat[] = "CodeWriterBase.SetDecimalSeparator";
static const char __pyx_k_CodeWriterBase_SubstituteVariabl[] = "CodeWriterBase.SubstituteVariables";
static const char __pyx_k_CodeWriterBase___init___locals_l[] = "CodeWriterBase.__init__.<locals>.<lambda>";
static const char __pyx_k_CodeWriterBase_getDynamicLinking[] = "CodeWriterBase.getDynamicLinking";
static const char __pyx_k_CodeWriterBase_getUseCodeVersion[] = "CodeWriterBase.getUseCodeVersion";
static const char __pyx_k_CodeWriterBase_setCurrentFileTyp[] = "CodeWriterBase.setCurrentFileTypes";
static const char __pyx_k_metaphor_monal_lcode_codewriter_2[] = "metaphor/monal/lcode/codewriter.py";
static const char __pyx_k_CodeWriterBase_CodeFichierTransf_2[] = "CodeWriterBase.CodeFichierTransfertLeverageInterne";
static PyObject *__pyx_n_s_;
static PyObject *__pyx_kp_u_;
static PyObject *__pyx_kp_u_0;
static PyObject *__pyx_kp_u_0Targetlist;
static PyObject *__pyx_kp_u_0_2;
static PyObject *__pyx_kp_u_0_3;
static PyObject *__pyx_kp_u_0_4;
static PyObject *__pyx_kp_u_18_15g;
static PyObject *__pyx_n_s_Affect;
static PyObject *__pyx_n_u_Affect;
static PyObject *__pyx_n_u_AllSynapses;
static PyObject *__pyx_n_s_AttributeError;
static PyObject *__pyx_n_s_BaseCount;
static PyObject *__pyx_n_u_Baselen;
static PyObject *__pyx_n_s_BaselenStr;
static PyObject *__pyx_n_u_BeginStr;
static PyObject *__pyx_n_s_BlocConstantes;
static PyObject *__pyx_n_s_BlocType;
static PyObject *__pyx_n_u_BracketOut0;
static PyObject *__pyx_n_s_BracketOut0Str;
static PyObject *__pyx_n_u_BracketOutDecl;
static PyObject *__pyx_n_s_BracketOutDeclStr;
static PyObject *__pyx_n_u_C;
static PyObject *__pyx_n_s_CC;
static PyObject *__pyx_n_u_CC;
static PyObject *__pyx_n_s_CCharOnlys;
static PyObject *__pyx_n_u_CFiles;
static PyObject *__pyx_n_s_CPrefix;
static PyObject *__pyx_n_s_CStr;
static PyObject *__pyx_n_s_ChaineCodeNeurone;
static PyObject *__pyx_n_s_ChaineEtat;
static PyObject *__pyx_n_s_ChaineSortieNeurone;
static PyObject *__pyx_n_s_CipherKey;
static PyObject *__pyx_n_s_CipherKey_2;
static PyObject *__pyx_n_u_CipherKey_2;
static PyObject *__pyx_n_s_ClientNum;
static PyObject *__pyx_n_s_ClientNum_2;
static PyObject *__pyx_n_u_ClientNum_2;
static PyObject *__pyx_n_s_CodeDebutInclus;
static PyObject *__pyx_n_s_CodeFichier;
static PyObject *__pyx_n_s_CodeFichierAvecTemplate;
static PyObject *__pyx_n_s_CodeFichierGradientInterne;
static PyObject *__pyx_n_s_CodeFichierTransfertInterne;
static PyObject *__pyx_n_s_CodeFichierTransfertLeverageInte;
static PyObject *__pyx_n_s_CodeFileName;
static PyObject *__pyx_n_s_CodeFinInclus;
static PyObject *__pyx_n_s_CodeFonctionTransfert;
static PyObject *__pyx_n_s_CodeFonctionTransfertAdv;
static PyObject *__pyx_n_s_CodeGradient;
static PyObject *__pyx_n_s_CodeNomEntree;
static PyObject *__pyx_n_s_CodeNomSortie;
static PyObject *__pyx_n_s_CodeProtoProcedure;
static PyObject *__pyx_n_s_CodeStr;
static PyObject *__pyx_n_u_CodeType;
static PyObject *__pyx_n_s_CodeWriterBase;
static PyObject *__pyx_n_s_iso885915_CodeWriterBase;
static PyObject *__pyx_n_s_CodeWriterBase_BaseCount;
static PyObject *__pyx_n_s_CodeWriterBase_BracketOut0Str;
static PyObject *__pyx_n_s_CodeWriterBase_BracketOutDeclStr;
static PyObject *__pyx_n_s_CodeWriterBase_CodeFichier;
static PyObject *__pyx_n_s_CodeWriterBase_CodeFichierAvecTe;
static PyObject *__pyx_n_s_CodeWriterBase_CodeFichierGradie;
static PyObject *__pyx_n_s_CodeWriterBase_CodeFichierTransf;
static PyObject *__pyx_n_s_CodeWriterBase_CodeFichierTransf_2;
static PyObject *__pyx_n_s_CodeWriterBase_CodeFileName;
static PyObject *__pyx_n_s_CodeWriterBase_CommentLine;
static PyObject *__pyx_n_s_CodeWriterBase_ConfigurationStr;
static PyObject *__pyx_n_s_CodeWriterBase_CurrentCodeFileNa;
static PyObject *__pyx_n_s_CodeWriterBase_DiviseEgal;
static PyObject *__pyx_n_s_CodeWriterBase_DoAffect;
static PyObject *__pyx_n_s_CodeWriterBase_DriverSource;
static PyObject *__pyx_n_s_CodeWriterBase_ExtractFileNameOn;
static PyObject *__pyx_n_s_CodeWriterBase_FileExt;
static PyObject *__pyx_n_s_CodeWriterBase_Get0TargetList;
static PyObject *__pyx_n_s_CodeWriterBase_GetAffect;
static PyObject *__pyx_n_s_CodeWriterBase_GetBeginStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetBiasBasedList;
static PyObject *__pyx_n_s_CodeWriterBase_GetCodeStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetCodeStrII;
static PyObject *__pyx_n_s_CodeWriterBase_GetCodeStrJI;
static PyObject *__pyx_n_s_CodeWriterBase_GetCodeType;
static PyObject *__pyx_n_s_CodeWriterBase_GetCommentCountSt;
static PyObject *__pyx_n_s_CodeWriterBase_GetComputerStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetDataCount;
static PyObject *__pyx_n_s_CodeWriterBase_GetDataRecStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetDateStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetDecalIni;
static PyObject *__pyx_n_s_CodeWriterBase_GetDimensionStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetDitectorStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetEndStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetFileNameStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetHiddenStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetInOutStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetInputValues;
static PyObject *__pyx_n_s_CodeWriterBase_GetInputsStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetJurComment;
static PyObject *__pyx_n_s_CodeWriterBase_GetLangMarkup;
static PyObject *__pyx_n_s_CodeWriterBase_GetLinearStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetLongWeight;
static PyObject *__pyx_n_s_CodeWriterBase_GetMarkStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetMarkdateStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetMarkversionStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetMatrixSource;
static PyObject *__pyx_n_s_CodeWriterBase_GetModelCount;
static PyObject *__pyx_n_s_CodeWriterBase_GetModelList;
static PyObject *__pyx_n_s_CodeWriterBase_GetMuStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetNameStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetNetworkKind;
static PyObject *__pyx_n_s_CodeWriterBase_GetNodeStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetNumpyDir;
static PyObject *__pyx_n_s_CodeWriterBase_GetOrderStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetOriginBaseStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetOutputSynList;
static PyObject *__pyx_n_s_CodeWriterBase_GetOutputValues;
static PyObject *__pyx_n_s_CodeWriterBase_GetOutputsStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetShortFileName;
static PyObject *__pyx_n_s_CodeWriterBase_GetStdDevStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetStudentStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetSynapsesStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetTargetList;
static PyObject *__pyx_n_s_CodeWriterBase_GetTargetStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetTextFromID;
static PyObject *__pyx_n_s_CodeWriterBase_GetTimeStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetTrueModelList;
static PyObject *__pyx_n_s_CodeWriterBase_GetTrueNameStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetUseCountStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetUserStr;
static PyObject *__pyx_n_s_CodeWriterBase_GetWithMatrix;
static PyObject *__pyx_n_s_CodeWriterBase_GetXmlStr;
static PyObject *__pyx_n_s_CodeWriterBase_Getbiasbasedcount;
static PyObject *__pyx_n_s_CodeWriterBase_Getmodelname;
static PyObject *__pyx_n_s_CodeWriterBase_Getoutputsyncount;
static PyObject *__pyx_n_s_CodeWriterBase_Getparamfilename;
static PyObject *__pyx_n_s_CodeWriterBase_Getsmiles;
static PyObject *__pyx_n_s_CodeWriterBase_GetsmilesList;
static PyObject *__pyx_n_s_CodeWriterBase_InitialisationMat;
static PyObject *__pyx_n_s_CodeWriterBase_InitialisationVec;
static PyObject *__pyx_n_s_CodeWriterBase_IsComment;
static PyObject *__pyx_n_s_CodeWriterBase_LimitLine;
static PyObject *__pyx_n_s_CodeWriterBase_ModulePStr;
static PyObject *__pyx_n_s_CodeWriterBase_ModuleStr;
static PyObject *__pyx_n_s_CodeWriterBase_MoinsEgal;
static PyObject *__pyx_n_s_CodeWriterBase_MultiCondition1;
static PyObject *__pyx_n_s_CodeWriterBase_MultiEgal;
static PyObject *__pyx_n_s_CodeWriterBase_NetSource;
static PyObject *__pyx_n_s_CodeWriterBase_PlusEgal;
static PyObject *__pyx_n_s_CodeWriterBase_PptyLeverageStr;
static PyObject *__pyx_n_s_CodeWriterBase_PptyValueStr;
static PyObject *__pyx_n_s_CodeWriterBase_ReadCodeFromID;
static PyObject *__pyx_n_s_CodeWriterBase_SaveToFile;
static PyObject *__pyx_n_s_CodeWriterBase_SetDecimalSep;
static PyObject *__pyx_n_s_CodeWriterBase_SetDecimalSeparat;
static PyObject *__pyx_n_s_CodeWriterBase_SetNetSource;
static PyObject *__pyx_n_s_CodeWriterBase_SubstituteVariabl;
static PyObject *__pyx_n_s_CodeWriterBase_Suite;
static PyObject *__pyx_n_s_CodeWriterBase_TouslesNoms;
static PyObject *__pyx_n_s_CodeWriterBase_TransferStr;
static PyObject *__pyx_n_s_CodeWriterBase_ValToStr;
static PyObject *__pyx_n_s_CodeWriterBase___init;
static PyObject *__pyx_n_s_CodeWriterBase___init___locals_l;
static PyObject *__pyx_n_s_CodeWriterBase__dosub;
static PyObject *__pyx_n_s_CodeWriterBase_baseCodeFileName;
static PyObject *__pyx_n_s_CodeWriterBase_getCodeVersion;
static PyObject *__pyx_n_s_CodeWriterBase_getDataRange;
static PyObject *__pyx_n_s_CodeWriterBase_getDynamicLinking;
static PyObject *__pyx_n_s_CodeWriterBase_getModuleType;
static PyObject *__pyx_n_s_CodeWriterBase_getTemplate;
static PyObject *__pyx_n_s_CodeWriterBase_getUseCodeVersion;
static PyObject *__pyx_n_s_CodeWriterBase_setCurrentFileTyp;
static PyObject *__pyx_n_s_CodeWriterBase_setReplaceDict;
static PyObject *__pyx_n_s_CodeWriterBase_setSource;
static PyObject *__pyx_n_s_CodeWriterBase_trainableStr;
static PyObject *__pyx_n_s_Comment;
static PyObject *__pyx_n_u_Comment;
static PyObject *__pyx_n_u_CommentCount;
static PyObject *__pyx_n_s_CommentLine;
static PyObject *__pyx_n_s_CommentTeteFichier;
static PyObject *__pyx_n_u_Comments;
static PyObject *__pyx_n_u_Common;
static PyObject *__pyx_n_s_Component;
static PyObject *__pyx_n_u_Computer;
static PyObject *__pyx_n_s_ComputerName;
static PyObject *__pyx_n_s_ComputerName_2;
static PyObject *__pyx_n_u_ComputerName_2;
static PyObject *__pyx_n_u_Configuration;
static PyObject *__pyx_n_s_ConfigurationStr;
static PyObject *__pyx_n_s_CorrectChar;
static PyObject *__pyx_n_u_Count;
static PyObject *__pyx_n_s_CurrentCodeFileName;
static PyObject *__pyx_n_s_CurrentFunctionType;
static PyObject *__pyx_n_s_CurrentFunctionType_2;
static PyObject *__pyx_n_u_CurrentFunctionType_2;
static PyObject *__pyx_n_s_CurrentHeader;
static PyObject *__pyx_n_s_CurrentHeader_2;
static PyObject *__pyx_n_u_CurrentHeader_2;
static PyObject *__pyx_n_u_Date;
static PyObject *__pyx_n_s_DebutLigne;
static PyObject *__pyx_n_s_DecalIni;
static PyObject *__pyx_n_u_DecalIni;
static PyObject *__pyx_n_s_DecimalSep;
static PyObject *__pyx_n_s_DecimalSep_2;
static PyObject *__pyx_n_u_DecimalSep_2;
static PyObject *__pyx_n_s_DeclarationMatrice;
static PyObject *__pyx_n_s_DeclarationVecteur;
static PyObject *__pyx_n_s_DefaultDecimalSeparator;
static PyObject *__pyx_n_s_DemiDispersionReduiteStr;
static PyObject *__pyx_n_s_DependStr;
static PyObject *__pyx_n_u_DimZtZ;
static PyObject *__pyx_n_u_Dimension;
static PyObject *__pyx_n_u_Director;
static PyObject *__pyx_n_u_Dispersion;
static PyObject *__pyx_n_u_DispersionR;
static PyObject *__pyx_n_s_DispersionReduiteStr;
static PyObject *__pyx_n_s_DispersionStr;
static PyObject *__pyx_n_s_DiviseEgal;
static PyObject *__pyx_n_s_DoAffect;
static PyObject *__pyx_n_s_DriverSource;
static PyObject *__pyx_n_s_DriverSource_2;
static PyObject *__pyx_n_s_EnQueue;
static PyObject *__pyx_n_s_EnTete;
static PyObject *__pyx_n_s_EndComment0extra;
static PyObject *__pyx_n_u_EndComment0extra;
static PyObject *__pyx_n_s_EndCommentOut;
static PyObject *__pyx_n_u_EndCommentOut;
static PyObject *__pyx_n_u_EndStr;
static PyObject *__pyx_n_s_Ext;
static PyObject *__pyx_n_s_ExternVectors;
static PyObject *__pyx_n_u_ExternVectors_2;
static PyObject *__pyx_n_u_ExtraParamsDecl;
static PyObject *__pyx_n_s_ExtraParamsDeclStr;
static PyObject *__pyx_n_u_ExtraParamsInit;
static PyObject *__pyx_n_u_ExtraWeightCount;
static PyObject *__pyx_n_s_ExtraWeightsCountStr;
static PyObject *__pyx_n_s_ExtractFileNameOnly;
static PyObject *__pyx_n_s_FType;
static PyObject *__pyx_n_s_FileExt;
static PyObject *__pyx_n_s_FileExtLang;
static PyObject *__pyx_n_s_FileName;
static PyObject *__pyx_n_s_FileName_2;
static PyObject *__pyx_n_u_FileName_2;
static PyObject *__pyx_n_s_ForAllOutputs;
static PyObject *__pyx_n_s_ForAllOutputs_2;
static PyObject *__pyx_n_u_ForAllOutputs_2;
static PyObject *__pyx_n_u_Freedom;
static PyObject *__pyx_n_s_FreedomStr;
static PyObject *__pyx_n_u_Get;
static PyObject *__pyx_n_s_Get0TargetList;
static PyObject *__pyx_n_s_GetAffect;
static PyObject *__pyx_n_s_GetAllSynapsesStr;
static PyObject *__pyx_n_s_GetBeginStr;
static PyObject *__pyx_n_s_GetBiasBasedList;
static PyObject *__pyx_n_s_GetCCStr;
static PyObject *__pyx_n_s_GetCFiles;
static PyObject *__pyx_n_s_GetCodeStr;
static PyObject *__pyx_n_s_GetCodeStrII;
static PyObject *__pyx_n_s_GetCodeStrJI;
static PyObject *__pyx_n_s_GetCodeType;
static PyObject *__pyx_n_s_GetCommentCountStr;
static PyObject *__pyx_n_s_GetCommentsStr;
static PyObject *__pyx_n_s_GetCommonStr;
static PyObject *__pyx_n_s_GetComputerStr;
static PyObject *__pyx_n_s_GetDataCount;
static PyObject *__pyx_n_s_GetDataRecStr;
static PyObject *__pyx_n_s_GetDateStr;
static PyObject *__pyx_n_s_GetDecalIni;
static PyObject *__pyx_n_s_GetDimZtZStr;
static PyObject *__pyx_n_s_GetDimensionStr;
static PyObject *__pyx_n_s_GetDitectorStr;
static PyObject *__pyx_n_s_GetEndStr;
static PyObject *__pyx_n_s_GetFileNameStr;
static PyObject *__pyx_n_s_GetHiddenStr;
static PyObject *__pyx_n_s_GetInOutStr;
static PyObject *__pyx_n_s_GetInOutputsStr;
static PyObject *__pyx_n_s_GetIncludeFiles;
static PyObject *__pyx_n_s_GetInputValues;
static PyObject *__pyx_n_s_GetInputsStr;
static PyObject *__pyx_n_s_GetIntIndexOutput;
static PyObject *__pyx_n_s_GetIntdecl;
static PyObject *__pyx_n_s_GetJurComment;
static PyObject *__pyx_n_s_GetJurCommentStr;
static PyObject *__pyx_n_s_GetLangMarkup;
static PyObject *__pyx_n_s_GetLibNameStr;
static PyObject *__pyx_n_s_GetLinearStr;
static PyObject *__pyx_n_s_GetLongWeight;
static PyObject *__pyx_n_s_GetMakeLinkLib;
static PyObject *__pyx_n_s_GetMakeParams;
static PyObject *__pyx_n_s_GetMarkStr;
static PyObject *__pyx_n_s_GetMarkdateStr;
static PyObject *__pyx_n_s_GetMarkversionStr;
static PyObject *__pyx_n_s_GetMatrixSource;
static PyObject *__pyx_n_s_GetModelCount;
static PyObject *__pyx_n_s_GetModelFile;
static PyObject *__pyx_n_s_GetModelList;
static PyObject *__pyx_n_s_GetMuStr;
static PyObject *__pyx_n_s_GetMultiTransfer;
static PyObject *__pyx_n_s_GetMultiTransferGradient;
static PyObject *__pyx_n_s_GetNameStr;
static PyObject *__pyx_n_s_GetNetworkKind;
static PyObject *__pyx_n_s_GetNodeStr;
static PyObject *__pyx_n_s_GetNumpyDir;
static PyObject *__pyx_n_s_GetOrderStr;
static PyObject *__pyx_n_s_GetOriginBaseStr;
static PyObject *__pyx_n_s_GetOutputSynList;
static PyObject *__pyx_n_s_GetOutputValues;
static PyObject *__pyx_n_s_GetOutputsStr;
static PyObject *__pyx_n_s_GetRealptrInputs;
static PyObject *__pyx_n_s_GetRealptrdecl;
static PyObject *__pyx_n_s_GetShortFileName;
static PyObject *__pyx_n_s_GetStdDevStr;
static PyObject *__pyx_n_s_GetString;
static PyObject *__pyx_n_u_GetString_2;
static PyObject *__pyx_n_s_GetStudentStr;
static PyObject *__pyx_n_s_GetSynapseRangeStr;
static PyObject *__pyx_n_s_GetSynapsesStr;
static PyObject *__pyx_n_s_GetTargetList;
static PyObject *__pyx_n_s_GetTargetStr;
static PyObject *__pyx_n_s_GetTextFromID;
static PyObject *__pyx_n_s_GetTimeStr;
static PyObject *__pyx_n_s_GetTransferList;
static PyObject *__pyx_n_s_GetTransferPrimeList;
static PyObject *__pyx_n_s_GetTrueModelList;
static PyObject *__pyx_n_s_GetTrueNameStr;
static PyObject *__pyx_n_s_GetUseCountStr;
static PyObject *__pyx_n_s_GetUserStr;
static PyObject *__pyx_n_s_GetWithMatrix;
static PyObject *__pyx_n_s_GetXmlStr;
static PyObject *__pyx_n_s_Get_IndexOutput;
static PyObject *__pyx_n_s_Get_Inputs;
static PyObject *__pyx_n_s_Getbiasbasedcount;
static PyObject *__pyx_n_s_GetdefineMODELNAMEStr;
static PyObject *__pyx_n_s_GetdefineMODELStr;
static PyObject *__pyx_n_s_GetinputNamesFullDecl;
static PyObject *__pyx_n_s_Getmodelname;
static PyObject *__pyx_n_s_GetoutputNamesFullDecl;
static PyObject *__pyx_n_s_Getoutputsyncount;
static PyObject *__pyx_n_s_Getparamfilename;
static PyObject *__pyx_n_s_GetreturnInputName;
static PyObject *__pyx_n_s_GetreturnOutputName;
static PyObject *__pyx_n_s_Getsmiles;
static PyObject *__pyx_n_s_GetsmilesList;
static PyObject *__pyx_n_s_GradHessFDStr;
static PyObject *__pyx_n_s_GradHessStr;
static PyObject *__pyx_n_s_GradInputStr;
static PyObject *__pyx_n_s_GradStr;
static PyObject *__pyx_kp_u_H_M_S;
static PyObject *__pyx_n_u_HalfDispersionR;
static PyObject *__pyx_n_u_Hidden;
static PyObject *__pyx_n_s_IDName;
static PyObject *__pyx_kp_u_ISO_8859_1;
static PyObject *__pyx_kp_u_ISO_8859_15;
static PyObject *__pyx_n_u_InNorm;
static PyObject *__pyx_n_s_InNormStr;
static PyObject *__pyx_n_u_InOut;
static PyObject *__pyx_n_u_InOutputs;
static PyObject *__pyx_n_u_IncludeFiles;
static PyObject *__pyx_n_s_Indent;
static PyObject *__pyx_n_s_Indent0;
static PyObject *__pyx_n_s_IniStStr;
static PyObject *__pyx_n_u_IniState;
static PyObject *__pyx_n_s_IniWeightStr;
static PyObject *__pyx_n_u_IniWeights;
static PyObject *__pyx_n_s_InitialisationMatrice;
static PyObject *__pyx_n_s_InitialisationVecteur;
static PyObject *__pyx_n_s_InputNameDeclStr;
static PyObject *__pyx_n_s_InputNameLongStr;
static PyObject *__pyx_n_s_InputNameProtoStr;
static PyObject *__pyx_n_s_InputNameStr;
static PyObject *__pyx_n_u_InputNames;
static PyObject *__pyx_n_u_InputNamesDecl;
static PyObject *__pyx_n_u_InputNamesLong;
static PyObject *__pyx_n_u_InputNamesProto;
static PyObject *__pyx_n_s_InputRangeDeclStr;
static PyObject *__pyx_n_s_InputRangeLongStr;
static PyObject *__pyx_n_s_InputRangeProtoStr;
static PyObject *__pyx_n_s_InputRangeStr;
static PyObject *__pyx_n_u_InputRanges;
static PyObject *__pyx_n_u_InputRangesDecl;
static PyObject *__pyx_n_u_InputRangesLong;
static PyObject *__pyx_n_u_InputRangesProto;
static PyObject *__pyx_n_u_InputValues;
static PyObject *__pyx_n_u_Inputs;
static PyObject *__pyx_n_s_IsComment;
static PyObject *__pyx_n_s_JurComment;
static PyObject *__pyx_n_s_KeyError;
static PyObject *__pyx_kp_u_Key_unknown;
static PyObject *__pyx_n_u_LangMarkup;
static PyObject *__pyx_n_s_LimitLine;
static PyObject *__pyx_n_s_Line;
static PyObject *__pyx_n_u_LongWeight;
static PyObject *__pyx_n_u_MakeDLM;
static PyObject *__pyx_n_u_MakeLinkLib;
static PyObject *__pyx_n_u_MakeParams;
static PyObject *__pyx_n_u_Mark;
static PyObject *__pyx_n_u_Markdate;
static PyObject *__pyx_n_s_MarkupList;
static PyObject *__pyx_n_u_Markversion;
static PyObject *__pyx_n_s_Mat;
static PyObject *__pyx_n_s_MatDecl;
static PyObject *__pyx_n_s_MatDecl_2;
static PyObject *__pyx_n_u_MatDecl_2;
static PyObject *__pyx_n_s_MatStr;
static PyObject *__pyx_n_s_Matrix;
static PyObject *__pyx_n_s_MatrixSource;
static PyObject *__pyx_n_u_MatrixSource;
static PyObject *__pyx_n_s_Matrix_2;
static PyObject *__pyx_n_u_Matrix_2;
static PyObject *__pyx_n_u_Max;
static PyObject *__pyx_n_s_MaxDecl;
static PyObject *__pyx_n_s_MaxDecl_2;
static PyObject *__pyx_n_u_MaxDecl_2;
static PyObject *__pyx_n_s_MaxLineLength;
static PyObject *__pyx_n_u_MaxLineLength_2;
static PyObject *__pyx_n_s_MaxStr;
static PyObject *__pyx_n_s_Mess1;
static PyObject *__pyx_n_s_Mess2;
static PyObject *__pyx_n_u_Min;
static PyObject *__pyx_n_s_MinDecl;
static PyObject *__pyx_n_s_MinDecl_2;
static PyObject *__pyx_n_u_MinDecl_2;
static PyObject *__pyx_n_s_MinStr;
static PyObject *__pyx_n_s_Model;
static PyObject *__pyx_n_u_ModelFile;
static PyObject *__pyx_n_u_ModelName;
static PyObject *__pyx_n_u_Module;
static PyObject *__pyx_n_u_ModuleP;
static PyObject *__pyx_n_s_ModulePStr;
static PyObject *__pyx_n_s_ModuleStr;
static PyObject *__pyx_n_u_ModuleType;
static PyObject *__pyx_n_s_MoinsEgal;
static PyObject *__pyx_n_u_Monalversion;
static PyObject *__pyx_n_u_Mu;
static PyObject *__pyx_n_s_MultiCondition1;
static PyObject *__pyx_n_s_MultiEgal;
static PyObject *__pyx_n_u_MultiTransfer;
static PyObject *__pyx_n_u_MultiTransferGradient;
static PyObject *__pyx_n_s_N;
static PyObject *__pyx_n_s_NNode;
static PyObject *__pyx_n_u_NNode_2;
static PyObject *__pyx_n_u_NULL;
static PyObject *__pyx_n_u_Name;
static PyObject *__pyx_n_s_NetName;
static PyObject *__pyx_n_s_NetName_2;
static PyObject *__pyx_n_u_NetName_2;
static PyObject *__pyx_n_s_NetSource;
static PyObject *__pyx_n_s_NetSource_2;
static PyObject *__pyx_n_s_NetworkKind;
static PyObject *__pyx_n_u_NetworkKind;
static PyObject *__pyx_n_s_NlPlusStr;
static PyObject *__pyx_n_s_NoIndent;
static PyObject *__pyx_n_u_NoIndent_2;
static PyObject *__pyx_n_s_NoTemplate;
static PyObject *__pyx_n_u_NoTemplate_2;
static PyObject *__pyx_n_u_Nodes;
static PyObject *__pyx_n_s_NomFGradient;
static PyObject *__pyx_n_s_NomFGradientCall;
static PyObject *__pyx_n_s_NomFGradientCall_2;
static PyObject *__pyx_n_u_NomFGradientCall_2;
static PyObject *__pyx_n_s_NomFGradient_2;
static PyObject *__pyx_n_u_NomFGradient_2;
static PyObject *__pyx_n_s_NomFTransfer;
static PyObject *__pyx_n_s_NomFTransfer_2;
static PyObject *__pyx_n_u_NomFTransfer_2;
static PyObject *__pyx_n_s_NomFonction;
static PyObject *__pyx_n_s_NomFonction_2;
static PyObject *__pyx_n_u_NomFonction_2;
static PyObject *__pyx_n_s_NumpyDir;
static PyObject *__pyx_n_u_NumpyDir;
static PyObject *__pyx_n_u_Numpydir;
static PyObject *__pyx_n_s_OKMulti;
static PyObject *__pyx_n_u_OKMulti_2;
static PyObject *__pyx_kp_u_OUTPUTCOUNT;
static PyObject *__pyx_n_u_Order;
static PyObject *__pyx_n_u_Originbase;
static PyObject *__pyx_n_u_OutNorm;
static PyObject *__pyx_n_s_OutNormStr;
static PyObject *__pyx_n_u_OutputName0;
static PyObject *__pyx_n_s_OutputName0Str;
static PyObject *__pyx_n_s_OutputNameStr;
static PyObject *__pyx_n_u_OutputNames;
static PyObject *__pyx_n_s_OutputRangeStr;
static PyObject *__pyx_n_u_OutputRanges;
static PyObject *__pyx_n_u_OutputValues;
static PyObject *__pyx_n_u_Outputs;
static PyObject *__pyx_n_s_P;
static PyObject *__pyx_n_s_PY3;
static PyObject *__pyx_n_s_PlusEgal;
static PyObject *__pyx_n_s_PptyLeverageStr;
static PyObject *__pyx_n_s_PptyValueStr;
static PyObject *__pyx_n_s_Properties;
static PyObject *__pyx_n_s_Properties2;
static PyObject *__pyx_n_s_Property;
static PyObject *__pyx_n_u_PropertyLeverage;
static PyObject *__pyx_n_u_PropertyValue;
static PyObject *__pyx_n_s_Q;
static PyObject *__pyx_n_s_ReadCodeFromID;
static PyObject *__pyx_n_s_ReplaceDictionary;
static PyObject *__pyx_n_s_Result;
static PyObject *__pyx_n_s_SaveDir;
static PyObject *__pyx_n_s_SaveDir_2;
static PyObject *__pyx_n_u_SaveDir_2;
static PyObject *__pyx_n_s_SaveToFile;
static PyObject *__pyx_n_u_Set;
static PyObject *__pyx_n_s_SetDecimalSep;
static PyObject *__pyx_n_s_SetDecimalSeparator;
static PyObject *__pyx_n_s_SetNetSource;
static PyObject *__pyx_n_s_ShortFileName;
static PyObject *__pyx_n_u_ShortFileName;
static PyObject *__pyx_n_s_SingleGradient;
static PyObject *__pyx_n_u_SingleGradient_2;
static PyObject *__pyx_n_u_Smiles;
static PyObject *__pyx_n_s_Source;
static PyObject *__pyx_n_s_St;
static PyObject *__pyx_n_s_St0;
static PyObject *__pyx_n_s_St1;
static PyObject *__pyx_n_s_St2;
static PyObject *__pyx_n_s_StForAllOutputs;
static PyObject *__pyx_n_s_StMatIniS;
static PyObject *__pyx_n_s_StMatrixIni;
static PyObject *__pyx_n_s_StMaxIniS;
static PyObject *__pyx_n_s_StMinIniS;
static PyObject *__pyx_n_s_StSource;
static PyObject *__pyx_n_s_StStdDEvInis;
static PyObject *__pyx_n_s_StTarget;
static PyObject *__pyx_n_s_StTransGradDyn;
static PyObject *__pyx_n_s_StTransGradDynCall;
static PyObject *__pyx_n_s_StTransGradStat;
static PyObject *__pyx_n_s_StTransGradStatCall;
static PyObject *__pyx_n_s_StTransferDyn;
static PyObject *__pyx_n_s_StTransferDyn2;
static PyObject *__pyx_n_s_StTransferStat;
static PyObject *__pyx_n_s_StTransferStat2;
static PyObject *__pyx_n_s_StWeightIni;
static PyObject *__pyx_n_s_StWeightIniS;
static PyObject *__pyx_n_s_StWeightRedirIni;
static PyObject *__pyx_n_s_StartComment0extra;
static PyObject *__pyx_n_u_StartComment0extra;
static PyObject *__pyx_n_s_StartCommentOut;
static PyObject *__pyx_n_u_StartCommentOut;
static PyObject *__pyx_n_s_StateNameStr;
static PyObject *__pyx_n_u_StateNames;
static PyObject *__pyx_n_s_StateNode;
static PyObject *__pyx_n_u_StdDev;
static PyObject *__pyx_n_s_StdDevDecl;
static PyObject *__pyx_n_s_StdDevDecl_2;
static PyObject *__pyx_n_u_StdDevDecl_2;
static PyObject *__pyx_n_s_Step;
static PyObject *__pyx_n_s_Step_2;
static PyObject *__pyx_n_u_Step_2;
static PyObject *__pyx_n_u_Student;
static PyObject *__pyx_n_s_SubstituteVariables;
static PyObject *__pyx_n_s_Suite;
static PyObject *__pyx_n_u_SynapseRange;
static PyObject *__pyx_n_u_Synapses;
static PyObject *__pyx_n_u_Target;
static PyObject *__pyx_n_s_TargetName;
static PyObject *__pyx_n_s_TargetName_2;
static PyObject *__pyx_n_u_TargetName_2;
static PyObject *__pyx_n_u_Targetlist;
static PyObject *__pyx_n_s_TemplateDict;
static PyObject *__pyx_n_s_TemplatePath;
static PyObject *__pyx_n_s_TemplatePath_2;
static PyObject *__pyx_n_u_TemplatePath_2;
static PyObject *__pyx_n_s_Text;
static PyObject *__pyx_n_s_TextID;
static PyObject *__pyx_n_u_Time;
static PyObject *__pyx_n_s_TouslesNoms;
static PyObject *__pyx_n_s_TrainStdDev;
static PyObject *__pyx_n_u_Transfer;
static PyObject *__pyx_n_u_TransferGrad;
static PyObject *__pyx_n_u_TransferGradHess;
static PyObject *__pyx_n_u_TransferGradHessFD;
static PyObject *__pyx_n_u_TransferGradInput;
static PyObject *__pyx_n_s_TransferStr;
static PyObject *__pyx_n_u_TrueName;
static PyObject *__pyx_n_s_TypeError;
static PyObject *__pyx_n_u_U;
static PyObject *__pyx_n_s_UseCount;
static PyObject *__pyx_n_s_UseCount_2;
static PyObject *__pyx_n_u_UseCount_2;
static PyObject *__pyx_n_s_UsedWeightStr;
static PyObject *__pyx_n_u_UsedWeights;
static PyObject *__pyx_n_u_User;
static PyObject *__pyx_n_s_UserName;
static PyObject *__pyx_n_s_UserName_2;
static PyObject *__pyx_n_u_UserName_2;
static PyObject *__pyx_n_s_ValToStr;
static PyObject *__pyx_n_s_Value;
static PyObject *__pyx_n_s_WStr;
static PyObject *__pyx_n_s_Weight;
static PyObject *__pyx_n_s_WeightDecl;
static PyObject *__pyx_n_s_WeightDecl_2;
static PyObject *__pyx_n_u_WeightDecl_2;
static PyObject *__pyx_n_s_WeightNameShortStr;
static PyObject *__pyx_n_s_WeightNameStr;
static PyObject *__pyx_n_u_WeightNames;
static PyObject *__pyx_n_u_WeightNamesShort;
static PyObject *__pyx_n_s_WeightRangeStr;
static PyObject *__pyx_n_u_WeightRanges;
static PyObject *__pyx_n_s_WeightRedir;
static PyObject *__pyx_n_u_WeightRedir_2;
static PyObject *__pyx_n_u_Weight_2;
static PyObject *__pyx_n_u_Weights;
static PyObject *__pyx_n_s_WithMatrix;
static PyObject *__pyx_n_u_WithMatrix;
static PyObject *__pyx_n_u_Xml;
static PyObject *__pyx_n_u_ZtZ;
static PyObject *__pyx_kp_u__10;
static PyObject *__pyx_kp_u__14;
static PyObject *__pyx_n_s__15;
static PyObject *__pyx_n_u__15;
static PyObject *__pyx_kp_u__2;
static PyObject *__pyx_kp_u__20;
static PyObject *__pyx_kp_u__21;
static PyObject *__pyx_kp_u__22;
static PyObject *__pyx_kp_u__23;
static PyObject *__pyx_kp_u__26;
static PyObject *__pyx_kp_u__27;
static PyObject *__pyx_kp_u__28;
static PyObject *__pyx_kp_u__30;
static PyObject *__pyx_kp_u__35;
static PyObject *__pyx_kp_u__36;
static PyObject *__pyx_kp_u__39;
static PyObject *__pyx_kp_u__40;
static PyObject *__pyx_n_s_addbra;
static PyObject *__pyx_n_s_addendofline;
static PyObject *__pyx_n_s_aincluded;
static PyObject *__pyx_n_s_atype;
static PyObject *__pyx_n_s_back;
static PyObject *__pyx_n_s_base;
static PyObject *__pyx_n_s_baseCodeFileName;
static PyObject *__pyx_n_s_basename;
static PyObject *__pyx_n_s_biasBaseId;
static PyObject *__pyx_n_u_biasBaseId;
static PyObject *__pyx_n_u_biasbasedcount;
static PyObject *__pyx_n_u_biasbasedlist;
static PyObject *__pyx_n_u_c;
static PyObject *__pyx_n_s_capitalize;
static PyObject *__pyx_kp_s_classdocs;
static PyObject *__pyx_n_s_cline_in_traceback;
static PyObject *__pyx_kp_u_codeWriter;
static PyObject *__pyx_n_s_code_common_mini;
static PyObject *__pyx_n_u_code_templates;
static PyObject *__pyx_n_s_codeconst;
static PyObject *__pyx_n_s_codequote;
static PyObject *__pyx_n_u_codeversion;
static PyObject *__pyx_n_u_codewriter;
static PyObject *__pyx_n_s_collections;
static PyObject *__pyx_n_s_commentCount;
static PyObject *__pyx_n_s_commondict;
static PyObject *__pyx_n_s_compile;
static PyObject *__pyx_n_s_computedNodes;
static PyObject *__pyx_n_s_configuration;
static PyObject *__pyx_n_s_created;
static PyObject *__pyx_n_u_created;
static PyObject *__pyx_n_s_ctUnknown;
static PyObject *__pyx_kp_u_d;
static PyObject *__pyx_kp_u_d_m_Y;
static PyObject *__pyx_kp_u_d_m_Y_H_M_S;
static PyObject *__pyx_n_s_dataCount;
static PyObject *__pyx_n_u_datacount;
static PyObject *__pyx_n_s_datarange;
static PyObject *__pyx_n_u_datarange;
static PyObject *__pyx_n_u_datarecord;
static PyObject *__pyx_n_s_date;
static PyObject *__pyx_n_u_date;
static PyObject *__pyx_n_s_datetime;
static PyObject *__pyx_n_s_decode;
static PyObject *__pyx_n_s_defaultdict;
static PyObject *__pyx_n_u_defineMODEL;
static PyObject *__pyx_n_u_defineMODELNAME;
static PyObject *__pyx_n_u_depends;
static PyObject *__pyx_n_s_dimension;
static PyObject *__pyx_n_s_dirname;
static PyObject *__pyx_n_s_dispersionMatrix;
static PyObject *__pyx_n_u_dll;
static PyObject *__pyx_n_u_dlm;
static PyObject *__pyx_n_s_doc;
static PyObject *__pyx_n_s_dosave;
static PyObject *__pyx_n_s_dosub;
static PyObject *__pyx_n_s_dynamiclinking;
static PyObject *__pyx_n_s_dynamiclinking_2;
static PyObject *__pyx_n_u_dynamiclinking_2;
static PyObject *__pyx_n_s_enter;
static PyObject *__pyx_n_s_err;
static PyObject *__pyx_kp_u_error_on_s_replacement;
static PyObject *__pyx_n_s_exit;
static PyObject *__pyx_n_s_ext;
static PyObject *__pyx_n_s_extranorm;
static PyObject *__pyx_n_s_fType;
static PyObject *__pyx_n_s_fct;
static PyObject *__pyx_n_s_ff;
static PyObject *__pyx_kp_u_fg_ua;
static PyObject *__pyx_n_s_file;
static PyObject *__pyx_n_s_filename;
static PyObject *__pyx_n_s_fillstr;
static PyObject *__pyx_n_s_fname;
static PyObject *__pyx_n_s_format;
static PyObject *__pyx_n_s_ftBase;
static PyObject *__pyx_n_s_ftDLM;
static PyObject *__pyx_n_s_ftDesc;
static PyObject *__pyx_n_s_ftGradient;
static PyObject *__pyx_n_s_ftMakeDLM;
static PyObject *__pyx_n_s_ftOnlyHeader;
static PyObject *__pyx_n_s_ftSetupMulti;
static PyObject *__pyx_n_s_ftSetupPy;
static PyObject *__pyx_n_s_ftSpecialSub;
static PyObject *__pyx_n_s_ftTransfert;
static PyObject *__pyx_n_s_ftTransfertLeverage;
static PyObject *__pyx_n_s_ftWithHeader;
static PyObject *__pyx_n_s_ftbasetrain;
static PyObject *__pyx_n_s_ftbaseuse;
static PyObject *__pyx_n_s_ftmodeltrain;
static PyObject *__pyx_n_s_ftsetupcfg;
static PyObject *__pyx_n_s_ftsinglebasetrain;
static PyObject *__pyx_n_s_ftsingletraindll;
static PyObject *__pyx_n_s_fttrain;
static PyObject *__pyx_n_s_fttraindll;
static PyObject *__pyx_n_s_ftusedll;
static PyObject *__pyx_n_s_ftwithCext;
static PyObject *__pyx_n_s_ftype;
static PyObject *__pyx_n_s_functools;
static PyObject *__pyx_n_s_garb;
static PyObject *__pyx_n_s_getBiasBased;
static PyObject *__pyx_n_u_getBiasBased;
static PyObject *__pyx_n_s_getCodeVersion;
static PyObject *__pyx_n_s_getDataRange;
static PyObject *__pyx_n_s_getDynamicLinking;
static PyObject *__pyx_n_s_getModuleType;
static PyObject *__pyx_n_s_getOutputLinks;
static PyObject *__pyx_n_u_getOutputLinks;
static PyObject *__pyx_n_s_getTemplate;
static PyObject *__pyx_n_s_getUseCodeVersion;
static PyObject *__pyx_n_s_gethostname;
static PyObject *__pyx_n_s_getpass;
static PyObject *__pyx_n_s_getuser;
static PyObject *__pyx_n_u_grd;
static PyObject *__pyx_n_s_group;
static PyObject *__pyx_n_s_hasMinMax;
static PyObject *__pyx_n_s_header;
static PyObject *__pyx_n_s_hidden;
static PyObject *__pyx_n_u_hidden;
static PyObject *__pyx_n_s_hiddenCount;
static PyObject *__pyx_n_u_hiddenCount;
static PyObject *__pyx_n_s_i;
static PyObject *__pyx_kp_u_ia_ib;
static PyObject *__pyx_kp_u_if_ig;
static PyObject *__pyx_kp_u_if_jf;
static PyObject *__pyx_kp_u_ig_ih;
static PyObject *__pyx_kp_u_ig_jg;
static PyObject *__pyx_n_s_import;
static PyObject *__pyx_n_s_included;
static PyObject *__pyx_n_s_ind;
static PyObject *__pyx_n_s_indent;
static PyObject *__pyx_n_s_index;
static PyObject *__pyx_n_u_indexoutput;
static PyObject *__pyx_n_s_init;
static PyObject *__pyx_n_s_inputCount;
static PyObject *__pyx_n_u_inputNamesFullDecl;
static PyObject *__pyx_n_s_inputNodes;
static PyObject *__pyx_n_u_inputs;
static PyObject *__pyx_n_u_int_indexoutput;
static PyObject *__pyx_n_u_intdecl;
static PyObject *__pyx_n_s_isLinear;
static PyObject *__pyx_n_s_isinf;
static PyObject *__pyx_kp_u_iu_ju;
static PyObject *__pyx_n_s_join;
static PyObject *__pyx_n_s_keys;
static PyObject *__pyx_n_u_l;
static PyObject *__pyx_n_u_larten7732;
static PyObject *__pyx_n_u_lev;
static PyObject *__pyx_n_u_libname;
static PyObject *__pyx_n_u_linear;
static PyObject *__pyx_n_s_lower;
static PyObject *__pyx_n_s_lst;
static PyObject *__pyx_n_s_lst2;
static PyObject *__pyx_n_s_main;
static PyObject *__pyx_n_s_mainModel;
static PyObject *__pyx_n_s_mark;
static PyObject *__pyx_n_u_mark;
static PyObject *__pyx_n_s_markdate;
static PyObject *__pyx_n_u_markdate;
static PyObject *__pyx_n_s_markversion;
static PyObject *__pyx_n_u_markversion;
static PyObject *__pyx_n_s_memsep;
static PyObject *__pyx_n_s_metaclass;
static PyObject *__pyx_n_s_metaphor_monal_lcode_codewriter;
static PyObject *__pyx_kp_s_metaphor_monal_lcode_codewriter_2;
static PyObject *__pyx_n_s_metaphor_nntoolbox_utils;
static PyObject *__pyx_n_s_mkdtemp;
static PyObject *__pyx_n_s_model;
static PyObject *__pyx_n_u_model;
static PyObject *__pyx_n_s_modelCount;
static PyObject *__pyx_n_u_modelNameList;
static PyObject *__pyx_n_u_modelTrueNameList;
static PyObject *__pyx_n_s_modelType;
static PyObject *__pyx_n_u_modelcount;
static PyObject *__pyx_n_s_models;
static PyObject *__pyx_n_u_models;
static PyObject *__pyx_n_s_module;
static PyObject *__pyx_n_s_moduleName;
static PyObject *__pyx_n_s_moduleName_2;
static PyObject *__pyx_n_u_moduleName_2;
static PyObject *__pyx_n_s_modulo;
static PyObject *__pyx_n_s_monalversion;
static PyObject *__pyx_n_s_mu;
static PyObject *__pyx_n_s_name;
static PyObject *__pyx_kp_u_ndesc_txt;
static PyObject *__pyx_n_s_ndim;
static PyObject *__pyx_n_s_needPotential;
static PyObject *__pyx_n_s_needpot;
static PyObject *__pyx_n_s_netSource;
static PyObject *__pyx_n_s_nkDyn;
static PyObject *__pyx_n_s_nkStat;
static PyObject *__pyx_n_s_nl;
static PyObject *__pyx_n_s_nlf;
static PyObject *__pyx_n_s_nmodel;
static PyObject *__pyx_n_s_node;
static PyObject *__pyx_n_s_nodeCount;
static PyObject *__pyx_n_u_nodeCount;
static PyObject *__pyx_n_s_nonASCIICharsConvert;
static PyObject *__pyx_n_s_nostartint;
static PyObject *__pyx_n_s_now;
static PyObject *__pyx_n_s_np;
static PyObject *__pyx_n_s_numpy;
static PyObject *__pyx_n_s_open;
static PyObject *__pyx_n_s_order;
static PyObject *__pyx_n_s_original;
static PyObject *__pyx_n_s_originallink;
static PyObject *__pyx_n_s_originallink_2;
static PyObject *__pyx_n_u_originallink_2;
static PyObject *__pyx_n_s_originbase;
static PyObject *__pyx_n_u_originbase;
static PyObject *__pyx_n_s_os;
static PyObject *__pyx_n_s_outputCount;
static PyObject *__pyx_n_u_outputCount;
static PyObject *__pyx_n_s_outputLinkId;
static PyObject *__pyx_n_u_outputLinkId;
static PyObject *__pyx_n_u_outputNamesFullDecl;
static PyObject *__pyx_n_s_outputNodes;
static PyObject *__pyx_n_u_outputsynCount;
static PyObject *__pyx_n_u_outputsynlist;
static PyObject *__pyx_n_s_owner;
static PyObject *__pyx_n_s_p;
static PyObject *__pyx_n_s_param;
static PyObject *__pyx_n_s_paramCount;
static PyObject *__pyx_n_s_paramfilename;
static PyObject *__pyx_n_u_paramfilename;
static PyObject *__pyx_n_s_partial;
static PyObject *__pyx_n_s_partialExtraParamsInitStr;
static PyObject *__pyx_n_s_path;
static PyObject *__pyx_n_s_pptyleverage;
static PyObject *__pyx_n_s_pptyvalue;
static PyObject *__pyx_n_s_prepare;
static PyObject *__pyx_n_s_print;
static PyObject *__pyx_n_s_property;
static PyObject *__pyx_n_s_proprietaryname;
static PyObject *__pyx_kp_u_py;
static PyObject *__pyx_n_s_qualname;
static PyObject *__pyx_n_s_range;
static PyObject *__pyx_n_u_rb;
static PyObject *__pyx_n_s_re;
static PyObject *__pyx_n_s_read;
static PyObject *__pyx_kp_u_real_potential;
static PyObject *__pyx_n_u_real_ptrinputs;
static PyObject *__pyx_n_u_realptrdecl;
static PyObject *__pyx_n_s_replace;
static PyObject *__pyx_n_s_replfct;
static PyObject *__pyx_n_s_res;
static PyObject *__pyx_n_s_result;
static PyObject *__pyx_n_u_returnInputName;
static PyObject *__pyx_n_u_returnOutputName;
static PyObject *__pyx_kp_u_s;
static PyObject *__pyx_kp_u_s_2;
static PyObject *__pyx_kp_u_s_3;
static PyObject *__pyx_kp_u_s_4;
static PyObject *__pyx_n_s_safemakedirs;
static PyObject *__pyx_n_s_sdir;
static PyObject *__pyx_n_s_self;
static PyObject *__pyx_n_s_setCurrentFileTypes;
static PyObject *__pyx_n_s_setReplaceDict;
static PyObject *__pyx_n_s_setSource;
static PyObject *__pyx_n_s_setter;
static PyObject *__pyx_kp_u_setup_cfg;
static PyObject *__pyx_kp_u_setup_py;
static PyObject *__pyx_n_s_shape;
static PyObject *__pyx_n_s_singleGradient;
static PyObject *__pyx_n_u_singleGradient;
static PyObject *__pyx_n_s_six;
static PyObject *__pyx_n_s_smiles;
static PyObject *__pyx_n_u_smiles;
static PyObject *__pyx_n_u_smilesList;
static PyObject *__pyx_n_s_socket;
static PyObject *__pyx_n_s_source;
static PyObject *__pyx_n_s_specialsub;
static PyObject *__pyx_n_s_split;
static PyObject *__pyx_n_s_splitext;
static PyObject *__pyx_n_s_squeeze;
static PyObject *__pyx_n_s_st;
static PyObject *__pyx_n_s_st0;
static PyObject *__pyx_n_s_st1;
static PyObject *__pyx_n_s_st_InDev;
static PyObject *__pyx_n_s_st_Juridic;
static PyObject *__pyx_n_s_start;
static PyObject *__pyx_n_s_stb;
static PyObject *__pyx_n_s_stdtrain;
static PyObject *__pyx_n_s_strftime;
static PyObject *__pyx_n_s_stt;
static PyObject *__pyx_n_s_studentvariable;
static PyObject *__pyx_n_s_style;
static PyObject *__pyx_n_s_sub;
static PyObject *__pyx_n_s_substitute;
static PyObject *__pyx_n_s_sum;
static PyObject *__pyx_n_s_super;
static PyObject *__pyx_n_s_synapseCount;
static PyObject *__pyx_n_s_targets;
static PyObject *__pyx_n_u_targets;
static PyObject *__pyx_n_u_temp_ii;
static PyObject *__pyx_n_u_temp_ji;
static PyObject *__pyx_n_s_tempfile;
static PyObject *__pyx_n_s_test;
static PyObject *__pyx_n_u_tfr;
static PyObject *__pyx_n_s_time;
static PyObject *__pyx_n_s_today;
static PyObject *__pyx_n_u_train;
static PyObject *__pyx_n_s_trainable;
static PyObject *__pyx_n_u_trainable;
static PyObject *__pyx_n_s_trainableStr;
static PyObject *__pyx_n_u_trainbase;
static PyObject *__pyx_n_u_transfer;
static PyObject *__pyx_n_u_transferlist;
static PyObject *__pyx_n_u_transferprimelist;
static PyObject *__pyx_n_s_trueName;
static PyObject *__pyx_n_s_txt;
static PyObject *__pyx_kp_u_uf_fa;
static PyObject *__pyx_kp_u_ug_uh;
static PyObject *__pyx_kp_u_ui_uj;
static PyObject *__pyx_n_s_upper;
static PyObject *__pyx_n_u_usebase;
static PyObject *__pyx_n_u_usecodeversion;
static PyObject *__pyx_n_u_usedll;
static PyObject *__pyx_n_s_useversion;
static PyObject *__pyx_kp_u_utf_8;
static PyObject *__pyx_n_s_util_monalbase;
static PyObject *__pyx_n_s_util_utils;
static PyObject *__pyx_n_s_val;
static PyObject *__pyx_n_s_value;
static PyObject *__pyx_n_s_version;
static PyObject *__pyx_n_s_version_2;
static PyObject *__pyx_n_s_vtMax;
static PyObject *__pyx_n_s_vtMin;
static PyObject *__pyx_n_s_vtStdDev;
static PyObject *__pyx_n_s_vtWeight;
static PyObject *__pyx_kp_u_w;
static PyObject *__pyx_n_u_w_2;
static PyObject *__pyx_n_u_wb;
static PyObject *__pyx_n_s_withneedpot;
static PyObject *__pyx_n_s_write;
static PyObject *__pyx_n_s_xml;
static PyObject *__pyx_n_u_xml;
static PyObject *__pyx_n_s_xore;
static PyObject *__pyx_lambda_funcdef_lambda(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_owner, PyObject *__pyx_v_Source, PyObject *__pyx_v_name); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_2setReplaceDict(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_4setSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_source); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_6trainableStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_8getDynamicLinking(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_10getCodeVersion(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_12getDataRange(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_14getUseCodeVersion(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_16GetOriginBaseStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_18GetXmlStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_20GetMarkStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_22GetMarkversionStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_24GetMarkdateStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_26GetHiddenStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_28setCurrentFileTypes(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_atype, PyObject *__pyx_v_aincluded); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_30TouslesNoms(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_32_dosub(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_group, PyObject *__pyx_v_Indent0); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_34SubstituteVariables(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Source, PyObject *__pyx_v_Indent0); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_36CodeFichierAvecTemplate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_ftype, PyObject *__pyx_v_included); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_38CodeFichier(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_included, PyObject *__pyx_v_dosave, PyObject *__pyx_v_back); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_40CodeFichierTransfertInterne(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_included); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_42CodeFichierGradientInterne(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_included); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_44CodeFichierTransfertLeverageInterne(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_included); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_46TransferStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Indent0); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_48GetTextFromID(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_TextID, PyObject *__pyx_v_MarkupList); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_50ReadCodeFromID(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_IDName, CYTHON_UNUSED PyObject *__pyx_v_specialsub); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_52DriverSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_54NetSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_56NetSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_58SetNetSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Source); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_60baseCodeFileName(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_base, PyObject *__pyx_v_substitute, PyObject *__pyx_v_param, PyObject *__pyx_v_Ext); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_62CodeFileName(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_FType, PyObject *__pyx_v_Ext); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_64CurrentCodeFileName(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_sdir); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_66FileExt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_header, PyObject *__pyx_v_ftype); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_68GetDecalIni(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_70Suite(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_72getTemplate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_TextID); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_74SetDecimalSep(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Value); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_76SetDecimalSeparator(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_78GetNetworkKind(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_80GetAffect(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_82InitialisationVecteur(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent0); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_84InitialisationMatrice(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent0); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_86ValToStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value, PyObject *__pyx_v_squeeze, PyObject *__pyx_v_addbra); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_88PlusEgal(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_StTarget, PyObject *__pyx_v_StSource); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_90MoinsEgal(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_StTarget, PyObject *__pyx_v_StSource); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_92MultiEgal(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_StTarget, PyObject *__pyx_v_StSource); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_94MultiCondition1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_val); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_96DiviseEgal(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_StTarget, PyObject *__pyx_v_StSource); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_98GetBeginStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_100GetEndStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_102GetMatrixSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_104GetLangMarkup(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_106GetWithMatrix(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_108GetShortFileName(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_110GetLongWeight(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_112GetCodeType(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_114GetJurComment(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_116DoAffect(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_St1, PyObject *__pyx_v_St2); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_118CommentLine(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Mess1, PyObject *__pyx_v_Mess2); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_120GetCodeStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_index); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_122GetCodeStrII(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_124GetCodeStrJI(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_126GetNameStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_128GetTrueNameStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_130Getparamfilename(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_132ConfigurationStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_134PptyValueStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_136PptyLeverageStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_138ModuleStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_140getModuleType(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_142ModulePStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_144GetTargetStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_146GetDateStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_148GetTimeStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_150GetUserStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_152GetComputerStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_154GetFileNameStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_156GetNumpyDir(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_158GetInOutStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_160GetInputValues(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_162GetOutputValues(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_164GetInputsStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_166GetOutputsStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_168GetSynapsesStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_170GetDimensionStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_172GetOrderStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_174GetNodeStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_176GetStdDevStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_178GetStudentStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_180GetMuStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_182GetUseCountStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_184GetCommentCountStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_186GetLinearStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_188BaseCount(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_190SaveToFile(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_St, PyObject *__pyx_v_back); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_192LimitLine(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_Text); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_194IsComment(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Line); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_196ExtractFileNameOnly(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_filename); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_198GetDataRecStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_200GetModelCount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_202GetDataCount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_204GetModelList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_206GetTrueModelList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_208Getsmiles(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_210Getmodelname(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_212GetsmilesList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_214GetDitectorStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_216Get0TargetList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_218GetTargetList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_220GetBiasBasedList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_222Getbiasbasedcount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_224GetOutputSynList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_226Getoutputsyncount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_indent); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_228BracketOutDeclStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_230BracketOut0Str(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_float_1E308;
static PyObject *__pyx_float_neg_1E308;
static PyObject *__pyx_int_0;
static PyObject *__pyx_int_1;
static PyObject *__pyx_int_2;
static PyObject *__pyx_int_3;
static PyObject *__pyx_int_32;
static PyObject *__pyx_int_35535;
static PyObject *__pyx_int_neg_1;
static PyObject *__pyx_int_neg_32;
static PyObject *__pyx_slice__5;
static PyObject *__pyx_slice__6;
static PyObject *__pyx_slice__7;
static PyObject *__pyx_slice__8;
static PyObject *__pyx_tuple__3;
static PyObject *__pyx_tuple__4;
static PyObject *__pyx_tuple__9;
static PyObject *__pyx_tuple__11;
static PyObject *__pyx_tuple__12;
static PyObject *__pyx_tuple__13;
static PyObject *__pyx_tuple__16;
static PyObject *__pyx_tuple__17;
static PyObject *__pyx_tuple__18;
static PyObject *__pyx_tuple__19;
static PyObject *__pyx_tuple__24;
static PyObject *__pyx_tuple__25;
static PyObject *__pyx_tuple__29;
static PyObject *__pyx_tuple__31;
static PyObject *__pyx_tuple__32;
static PyObject *__pyx_tuple__33;
static PyObject *__pyx_tuple__34;
static PyObject *__pyx_tuple__37;
static PyObject *__pyx_tuple__38;
static PyObject *__pyx_tuple__41;
static PyObject *__pyx_tuple__43;
static PyObject *__pyx_tuple__44;
static PyObject *__pyx_tuple__46;
static PyObject *__pyx_tuple__48;
static PyObject *__pyx_tuple__50;
static PyObject *__pyx_tuple__51;
static PyObject *__pyx_tuple__53;
static PyObject *__pyx_tuple__54;
static PyObject *__pyx_tuple__56;
static PyObject *__pyx_tuple__57;
static PyObject *__pyx_tuple__59;
static PyObject *__pyx_tuple__60;
static PyObject *__pyx_tuple__62;
static PyObject *__pyx_tuple__63;
static PyObject *__pyx_tuple__65;
static PyObject *__pyx_tuple__66;
static PyObject *__pyx_tuple__68;
static PyObject *__pyx_tuple__69;
static PyObject *__pyx_tuple__71;
static PyObject *__pyx_tuple__72;
static PyObject *__pyx_tuple__74;
static PyObject *__pyx_tuple__75;
static PyObject *__pyx_tuple__77;
static PyObject *__pyx_tuple__78;
static PyObject *__pyx_tuple__80;
static PyObject *__pyx_tuple__81;
static PyObject *__pyx_tuple__83;
static PyObject *__pyx_tuple__84;
static PyObject *__pyx_tuple__86;
static PyObject *__pyx_tuple__88;
static PyObject *__pyx_tuple__89;
static PyObject *__pyx_tuple__91;
static PyObject *__pyx_tuple__92;
static PyObject *__pyx_tuple__94;
static PyObject *__pyx_tuple__96;
static PyObject *__pyx_tuple__97;
static PyObject *__pyx_tuple__99;
static PyObject *__pyx_tuple__100;
static PyObject *__pyx_tuple__102;
static PyObject *__pyx_tuple__103;
static PyObject *__pyx_tuple__105;
static PyObject *__pyx_tuple__106;
static PyObject *__pyx_tuple__108;
static PyObject *__pyx_tuple__109;
static PyObject *__pyx_tuple__111;
static PyObject *__pyx_tuple__112;
static PyObject *__pyx_tuple__114;
static PyObject *__pyx_tuple__115;
static PyObject *__pyx_tuple__117;
static PyObject *__pyx_tuple__119;
static PyObject *__pyx_tuple__121;
static PyObject *__pyx_tuple__123;
static PyObject *__pyx_tuple__125;
static PyObject *__pyx_tuple__126;
static PyObject *__pyx_tuple__128;
static PyObject *__pyx_tuple__129;
static PyObject *__pyx_tuple__131;
static PyObject *__pyx_tuple__132;
static PyObject *__pyx_tuple__134;
static PyObject *__pyx_tuple__135;
static PyObject *__pyx_tuple__137;
static PyObject *__pyx_tuple__139;
static PyObject *__pyx_tuple__141;
static PyObject *__pyx_tuple__143;
static PyObject *__pyx_tuple__145;
static PyObject *__pyx_tuple__147;
static PyObject *__pyx_tuple__149;
static PyObject *__pyx_tuple__151;
static PyObject *__pyx_tuple__152;
static PyObject *__pyx_tuple__154;
static PyObject *__pyx_tuple__155;
static PyObject *__pyx_tuple__157;
static PyObject *__pyx_tuple__158;
static PyObject *__pyx_tuple__160;
static PyObject *__pyx_tuple__162;
static PyObject *__pyx_tuple__164;
static PyObject *__pyx_tuple__166;
static PyObject *__pyx_tuple__168;
static PyObject *__pyx_tuple__170;
static PyObject *__pyx_tuple__172;
static PyObject *__pyx_tuple__174;
static PyObject *__pyx_tuple__176;
static PyObject *__pyx_tuple__178;
static PyObject *__pyx_tuple__180;
static PyObject *__pyx_tuple__182;
static PyObject *__pyx_tuple__184;
static PyObject *__pyx_tuple__186;
static PyObject *__pyx_tuple__188;
static PyObject *__pyx_tuple__190;
static PyObject *__pyx_tuple__191;
static PyObject *__pyx_tuple__193;
static PyObject *__pyx_tuple__195;
static PyObject *__pyx_tuple__196;
static PyObject *__pyx_tuple__198;
static PyObject *__pyx_tuple__199;
static PyObject *__pyx_tuple__201;
static PyObject *__pyx_tuple__202;
static PyObject *__pyx_tuple__204;
static PyObject *__pyx_tuple__205;
static PyObject *__pyx_tuple__207;
static PyObject *__pyx_tuple__208;
static PyObject *__pyx_tuple__210;
static PyObject *__pyx_tuple__211;
static PyObject *__pyx_tuple__213;
static PyObject *__pyx_tuple__214;
static PyObject *__pyx_tuple__216;
static PyObject *__pyx_tuple__217;
static PyObject *__pyx_tuple__219;
static PyObject *__pyx_tuple__220;
static PyObject *__pyx_tuple__222;
static PyObject *__pyx_tuple__223;
static PyObject *__pyx_tuple__225;
static PyObject *__pyx_tuple__226;
static PyObject *__pyx_tuple__228;
static PyObject *__pyx_tuple__229;
static PyObject *__pyx_tuple__231;
static PyObject *__pyx_tuple__232;
static PyObject *__pyx_tuple__234;
static PyObject *__pyx_tuple__235;
static PyObject *__pyx_tuple__237;
static PyObject *__pyx_tuple__238;
static PyObject *__pyx_tuple__240;
static PyObject *__pyx_tuple__241;
static PyObject *__pyx_tuple__243;
static PyObject *__pyx_tuple__244;
static PyObject *__pyx_tuple__246;
static PyObject *__pyx_tuple__247;
static PyObject *__pyx_tuple__249;
static PyObject *__pyx_tuple__250;
static PyObject *__pyx_tuple__252;
static PyObject *__pyx_tuple__253;
static PyObject *__pyx_tuple__255;
static PyObject *__pyx_tuple__256;
static PyObject *__pyx_tuple__258;
static PyObject *__pyx_tuple__259;
static PyObject *__pyx_tuple__261;
static PyObject *__pyx_tuple__262;
static PyObject *__pyx_tuple__264;
static PyObject *__pyx_tuple__265;
static PyObject *__pyx_tuple__267;
static PyObject *__pyx_tuple__268;
static PyObject *__pyx_tuple__270;
static PyObject *__pyx_tuple__271;
static PyObject *__pyx_tuple__273;
static PyObject *__pyx_tuple__274;
static PyObject *__pyx_tuple__276;
static PyObject *__pyx_tuple__277;
static PyObject *__pyx_tuple__279;
static PyObject *__pyx_tuple__280;
static PyObject *__pyx_tuple__282;
static PyObject *__pyx_tuple__283;
static PyObject *__pyx_tuple__285;
static PyObject *__pyx_tuple__286;
static PyObject *__pyx_tuple__288;
static PyObject *__pyx_tuple__289;
static PyObject *__pyx_tuple__291;
static PyObject *__pyx_tuple__292;
static PyObject *__pyx_tuple__294;
static PyObject *__pyx_tuple__296;
static PyObject *__pyx_tuple__297;
static PyObject *__pyx_tuple__299;
static PyObject *__pyx_tuple__301;
static PyObject *__pyx_tuple__303;
static PyObject *__pyx_tuple__305;
static PyObject *__pyx_tuple__306;
static PyObject *__pyx_tuple__308;
static PyObject *__pyx_tuple__309;
static PyObject *__pyx_tuple__311;
static PyObject *__pyx_tuple__312;
static PyObject *__pyx_tuple__314;
static PyObject *__pyx_tuple__315;
static PyObject *__pyx_tuple__317;
static PyObject *__pyx_tuple__318;
static PyObject *__pyx_tuple__320;
static PyObject *__pyx_tuple__321;
static PyObject *__pyx_tuple__323;
static PyObject *__pyx_tuple__324;
static PyObject *__pyx_tuple__326;
static PyObject *__pyx_tuple__327;
static PyObject *__pyx_tuple__329;
static PyObject *__pyx_tuple__330;
static PyObject *__pyx_tuple__332;
static PyObject *__pyx_tuple__333;
static PyObject *__pyx_tuple__335;
static PyObject *__pyx_tuple__336;
static PyObject *__pyx_tuple__338;
static PyObject *__pyx_tuple__339;
static PyObject *__pyx_tuple__341;
static PyObject *__pyx_tuple__342;
static PyObject *__pyx_tuple__344;
static PyObject *__pyx_tuple__345;
static PyObject *__pyx_tuple__347;
static PyObject *__pyx_tuple__348;
static PyObject *__pyx_tuple__350;
static PyObject *__pyx_tuple__352;
static PyObject *__pyx_tuple__353;
static PyObject *__pyx_tuple__354;
static PyObject *__pyx_tuple__355;
static PyObject *__pyx_tuple__356;
static PyObject *__pyx_tuple__357;
static PyObject *__pyx_codeobj__42;
static PyObject *__pyx_codeobj__45;
static PyObject *__pyx_codeobj__47;
static PyObject *__pyx_codeobj__49;
static PyObject *__pyx_codeobj__52;
static PyObject *__pyx_codeobj__55;
static PyObject *__pyx_codeobj__58;
static PyObject *__pyx_codeobj__61;
static PyObject *__pyx_codeobj__64;
static PyObject *__pyx_codeobj__67;
static PyObject *__pyx_codeobj__70;
static PyObject *__pyx_codeobj__73;
static PyObject *__pyx_codeobj__76;
static PyObject *__pyx_codeobj__79;
static PyObject *__pyx_codeobj__82;
static PyObject *__pyx_codeobj__85;
static PyObject *__pyx_codeobj__87;
static PyObject *__pyx_codeobj__90;
static PyObject *__pyx_codeobj__93;
static PyObject *__pyx_codeobj__95;
static PyObject *__pyx_codeobj__98;
static PyObject *__pyx_codeobj__101;
static PyObject *__pyx_codeobj__104;
static PyObject *__pyx_codeobj__107;
static PyObject *__pyx_codeobj__110;
static PyObject *__pyx_codeobj__113;
static PyObject *__pyx_codeobj__116;
static PyObject *__pyx_codeobj__118;
static PyObject *__pyx_codeobj__120;
static PyObject *__pyx_codeobj__122;
static PyObject *__pyx_codeobj__124;
static PyObject *__pyx_codeobj__127;
static PyObject *__pyx_codeobj__130;
static PyObject *__pyx_codeobj__133;
static PyObject *__pyx_codeobj__136;
static PyObject *__pyx_codeobj__138;
static PyObject *__pyx_codeobj__140;
static PyObject *__pyx_codeobj__142;
static PyObject *__pyx_codeobj__144;
static PyObject *__pyx_codeobj__146;
static PyObject *__pyx_codeobj__148;
static PyObject *__pyx_codeobj__150;
static PyObject *__pyx_codeobj__153;
static PyObject *__pyx_codeobj__156;
static PyObject *__pyx_codeobj__159;
static PyObject *__pyx_codeobj__161;
static PyObject *__pyx_codeobj__163;
static PyObject *__pyx_codeobj__165;
static PyObject *__pyx_codeobj__167;
static PyObject *__pyx_codeobj__169;
static PyObject *__pyx_codeobj__171;
static PyObject *__pyx_codeobj__173;
static PyObject *__pyx_codeobj__175;
static PyObject *__pyx_codeobj__177;
static PyObject *__pyx_codeobj__179;
static PyObject *__pyx_codeobj__181;
static PyObject *__pyx_codeobj__183;
static PyObject *__pyx_codeobj__185;
static PyObject *__pyx_codeobj__187;
static PyObject *__pyx_codeobj__189;
static PyObject *__pyx_codeobj__192;
static PyObject *__pyx_codeobj__194;
static PyObject *__pyx_codeobj__197;
static PyObject *__pyx_codeobj__200;
static PyObject *__pyx_codeobj__203;
static PyObject *__pyx_codeobj__206;
static PyObject *__pyx_codeobj__209;
static PyObject *__pyx_codeobj__212;
static PyObject *__pyx_codeobj__215;
static PyObject *__pyx_codeobj__218;
static PyObject *__pyx_codeobj__221;
static PyObject *__pyx_codeobj__224;
static PyObject *__pyx_codeobj__227;
static PyObject *__pyx_codeobj__230;
static PyObject *__pyx_codeobj__233;
static PyObject *__pyx_codeobj__236;
static PyObject *__pyx_codeobj__239;
static PyObject *__pyx_codeobj__242;
static PyObject *__pyx_codeobj__245;
static PyObject *__pyx_codeobj__248;
static PyObject *__pyx_codeobj__251;
static PyObject *__pyx_codeobj__254;
static PyObject *__pyx_codeobj__257;
static PyObject *__pyx_codeobj__260;
static PyObject *__pyx_codeobj__263;
static PyObject *__pyx_codeobj__266;
static PyObject *__pyx_codeobj__269;
static PyObject *__pyx_codeobj__272;
static PyObject *__pyx_codeobj__275;
static PyObject *__pyx_codeobj__278;
static PyObject *__pyx_codeobj__281;
static PyObject *__pyx_codeobj__284;
static PyObject *__pyx_codeobj__287;
static PyObject *__pyx_codeobj__290;
static PyObject *__pyx_codeobj__293;
static PyObject *__pyx_codeobj__295;
static PyObject *__pyx_codeobj__298;
static PyObject *__pyx_codeobj__300;
static PyObject *__pyx_codeobj__302;
static PyObject *__pyx_codeobj__304;
static PyObject *__pyx_codeobj__307;
static PyObject *__pyx_codeobj__310;
static PyObject *__pyx_codeobj__313;
static PyObject *__pyx_codeobj__316;
static PyObject *__pyx_codeobj__319;
static PyObject *__pyx_codeobj__322;
static PyObject *__pyx_codeobj__325;
static PyObject *__pyx_codeobj__328;
static PyObject *__pyx_codeobj__331;
static PyObject *__pyx_codeobj__334;
static PyObject *__pyx_codeobj__337;
static PyObject *__pyx_codeobj__340;
static PyObject *__pyx_codeobj__343;
static PyObject *__pyx_codeobj__346;
static PyObject *__pyx_codeobj__349;
static PyObject *__pyx_codeobj__351;
/* Late includes */

/* "metaphor/monal/lcode/codewriter.py":60
 *     classdocs
 *     '''
 *     def __init__(self, owner, Source, name="codewriter"):             # <<<<<<<<<<<<<<
 *         '''
 *         Constructor
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static char __pyx_doc_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase___init__[] = "\n        Constructor\n        ";
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_1__init__ = {"__init__", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_1__init__, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase___init__};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_owner = 0;
  PyObject *__pyx_v_Source = 0;
  PyObject *__pyx_v_name = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_owner,&__pyx_n_s_Source,&__pyx_n_s_name,0};
    PyObject* values[4] = {0,0,0,0};
    values[3] = ((PyObject *)((PyObject*)__pyx_n_u_codewriter));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        CYTHON_FALLTHROUGH;
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_owner)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 4, 1); __PYX_ERR(0, 60, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Source)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 4, 2); __PYX_ERR(0, 60, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  3:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_name);
          if (value) { values[3] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 60, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        CYTHON_FALLTHROUGH;
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_owner = values[1];
    __pyx_v_Source = values[2];
    __pyx_v_name = values[3];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 60, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase___init__(__pyx_self, __pyx_v_self, __pyx_v_owner, __pyx_v_Source, __pyx_v_name);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":113
 * 
 *         #self.DecimalSep = CC.DefaultDecimalSeparator
 *         self.TemplateDict = defaultdict(lambda:"")             # <<<<<<<<<<<<<<
 * 
 *         self.setSource(Source)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_8__init___lambda(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_8__init___lambda = {"lambda", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_8__init___lambda, METH_NOARGS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_8__init___lambda(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("lambda (wrapper)", 0);
  __pyx_r = __pyx_lambda_funcdef_lambda(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_lambda_funcdef_lambda(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("lambda", 0);
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":60
 *     classdocs
 *     '''
 *     def __init__(self, owner, Source, name="codewriter"):             # <<<<<<<<<<<<<<
 *         '''
 *         Constructor
 */

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_owner, PyObject *__pyx_v_Source, PyObject *__pyx_v_name) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("__init__", 0);

  /* "metaphor/monal/lcode/codewriter.py":64
 *         Constructor
 *         '''
 *         super(CodeWriterBase, self).__init__(owner, name)             # <<<<<<<<<<<<<<
 *         #self._originallink = True
 *         self._Weight = ""#: string
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_iso885915_CodeWriterBase); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 64, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 64, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_GIVEREF(__pyx_t_2);
  PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
  __Pyx_INCREF(__pyx_v_self);
  __Pyx_GIVEREF(__pyx_v_self);
  PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self);
  __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_super, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 64, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_init); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 64, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = NULL;
  __pyx_t_4 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    if (likely(__pyx_t_2)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_3, function);
      __pyx_t_4 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_3)) {
    PyObject *__pyx_temp[3] = {__pyx_t_2, __pyx_v_owner, __pyx_v_name};
    __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 64, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
    PyObject *__pyx_temp[3] = {__pyx_t_2, __pyx_v_owner, __pyx_v_name};
    __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 64, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else
  #endif
  {
    __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 64, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__pyx_t_2) {
      __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2); __pyx_t_2 = NULL;
    }
    __Pyx_INCREF(__pyx_v_owner);
    __Pyx_GIVEREF(__pyx_v_owner);
    PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_v_owner);
    __Pyx_INCREF(__pyx_v_name);
    __Pyx_GIVEREF(__pyx_v_name);
    PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_name);
    __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 64, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  }
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":66
 *         super(CodeWriterBase, self).__init__(owner, name)
 *         #self._originallink = True
 *         self._Weight = ""#: string             # <<<<<<<<<<<<<<
 *         self._WeightRedir = ""#: string
 *         self._WeightDecl = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_Weight, __pyx_kp_u_) < 0) __PYX_ERR(0, 66, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":67
 *         #self._originallink = True
 *         self._Weight = ""#: string
 *         self._WeightRedir = ""#: string             # <<<<<<<<<<<<<<
 *         self._WeightDecl = ""#: string
 *         self._OKMulti = False#: Boolean
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_WeightRedir, __pyx_kp_u_) < 0) __PYX_ERR(0, 67, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":68
 *         self._Weight = ""#: string
 *         self._WeightRedir = ""#: string
 *         self._WeightDecl = ""#: string             # <<<<<<<<<<<<<<
 *         self._OKMulti = False#: Boolean
 *         self._ForAllOutputs = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_WeightDecl, __pyx_kp_u_) < 0) __PYX_ERR(0, 68, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":69
 *         self._WeightRedir = ""#: string
 *         self._WeightDecl = ""#: string
 *         self._OKMulti = False#: Boolean             # <<<<<<<<<<<<<<
 *         self._ForAllOutputs = ""#: string
 *         self._CurrentFunctionType = None#: TFunctionType
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_OKMulti, Py_False) < 0) __PYX_ERR(0, 69, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":70
 *         self._WeightDecl = ""#: string
 *         self._OKMulti = False#: Boolean
 *         self._ForAllOutputs = ""#: string             # <<<<<<<<<<<<<<
 *         self._CurrentFunctionType = None#: TFunctionType
 *         self._CurrentHeader = 0
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ForAllOutputs, __pyx_kp_u_) < 0) __PYX_ERR(0, 70, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":71
 *         self._OKMulti = False#: Boolean
 *         self._ForAllOutputs = ""#: string
 *         self._CurrentFunctionType = None#: TFunctionType             # <<<<<<<<<<<<<<
 *         self._CurrentHeader = 0
 *         self._CipherKey = 'larten7732'
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_CurrentFunctionType, Py_None) < 0) __PYX_ERR(0, 71, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":72
 *         self._ForAllOutputs = ""#: string
 *         self._CurrentFunctionType = None#: TFunctionType
 *         self._CurrentHeader = 0             # <<<<<<<<<<<<<<
 *         self._CipherKey = 'larten7732'
 *         self._GetString = None#: TGetStringIndexMarkUpEvent
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_CurrentHeader, __pyx_int_0) < 0) __PYX_ERR(0, 72, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":73
 *         self._CurrentFunctionType = None#: TFunctionType
 *         self._CurrentHeader = 0
 *         self._CipherKey = 'larten7732'             # <<<<<<<<<<<<<<
 *         self._GetString = None#: TGetStringIndexMarkUpEvent
 *         self._NoTemplate = False#: Boolean
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_CipherKey, __pyx_n_u_larten7732) < 0) __PYX_ERR(0, 73, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":74
 *         self._CurrentHeader = 0
 *         self._CipherKey = 'larten7732'
 *         self._GetString = None#: TGetStringIndexMarkUpEvent             # <<<<<<<<<<<<<<
 *         self._NoTemplate = False#: Boolean
 *         self._NetName = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_GetString, Py_None) < 0) __PYX_ERR(0, 74, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":75
 *         self._CipherKey = 'larten7732'
 *         self._GetString = None#: TGetStringIndexMarkUpEvent
 *         self._NoTemplate = False#: Boolean             # <<<<<<<<<<<<<<
 *         self._NetName = ""#: string
 *         self._TargetName = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NoTemplate, Py_False) < 0) __PYX_ERR(0, 75, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":76
 *         self._GetString = None#: TGetStringIndexMarkUpEvent
 *         self._NoTemplate = False#: Boolean
 *         self._NetName = ""#: string             # <<<<<<<<<<<<<<
 *         self._TargetName = ""#: string
 *         self._FileName = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NetName, __pyx_kp_u_) < 0) __PYX_ERR(0, 76, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":77
 *         self._NoTemplate = False#: Boolean
 *         self._NetName = ""#: string
 *         self._TargetName = ""#: string             # <<<<<<<<<<<<<<
 *         self._FileName = ""#: string
 *         self._Step = 2
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_TargetName, __pyx_kp_u_) < 0) __PYX_ERR(0, 77, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":78
 *         self._NetName = ""#: string
 *         self._TargetName = ""#: string
 *         self._FileName = ""#: string             # <<<<<<<<<<<<<<
 *         self._Step = 2
 *         self._NoIndent = False#: Boolean
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_FileName, __pyx_kp_u_) < 0) __PYX_ERR(0, 78, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":79
 *         self._TargetName = ""#: string
 *         self._FileName = ""#: string
 *         self._Step = 2             # <<<<<<<<<<<<<<
 *         self._NoIndent = False#: Boolean
 *         self._MaxLineLength = 35535
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_Step, __pyx_int_2) < 0) __PYX_ERR(0, 79, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":80
 *         self._FileName = ""#: string
 *         self._Step = 2
 *         self._NoIndent = False#: Boolean             # <<<<<<<<<<<<<<
 *         self._MaxLineLength = 35535
 *         self._DecimalSep = ','#: Char
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NoIndent, Py_False) < 0) __PYX_ERR(0, 80, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":81
 *         self._Step = 2
 *         self._NoIndent = False#: Boolean
 *         self._MaxLineLength = 35535             # <<<<<<<<<<<<<<
 *         self._DecimalSep = ','#: Char
 *         self._ClientNum = 1#: Integer
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_MaxLineLength, __pyx_int_35535) < 0) __PYX_ERR(0, 81, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":82
 *         self._NoIndent = False#: Boolean
 *         self._MaxLineLength = 35535
 *         self._DecimalSep = ','#: Char             # <<<<<<<<<<<<<<
 *         self._ClientNum = 1#: Integer
 *         self._UseCount = 0#: Integer
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_DecimalSep, __pyx_kp_u__2) < 0) __PYX_ERR(0, 82, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":83
 *         self._MaxLineLength = 35535
 *         self._DecimalSep = ','#: Char
 *         self._ClientNum = 1#: Integer             # <<<<<<<<<<<<<<
 *         self._UseCount = 0#: Integer
 *         self._ExternVectors = False#: Boolean
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ClientNum, __pyx_int_1) < 0) __PYX_ERR(0, 83, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":84
 *         self._DecimalSep = ','#: Char
 *         self._ClientNum = 1#: Integer
 *         self._UseCount = 0#: Integer             # <<<<<<<<<<<<<<
 *         self._ExternVectors = False#: Boolean
 *         self._NNode = 0#: Integer
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_UseCount, __pyx_int_0) < 0) __PYX_ERR(0, 84, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":85
 *         self._ClientNum = 1#: Integer
 *         self._UseCount = 0#: Integer
 *         self._ExternVectors = False#: Boolean             # <<<<<<<<<<<<<<
 *         self._NNode = 0#: Integer
 *         self._Matrix = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ExternVectors, Py_False) < 0) __PYX_ERR(0, 85, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":86
 *         self._UseCount = 0#: Integer
 *         self._ExternVectors = False#: Boolean
 *         self._NNode = 0#: Integer             # <<<<<<<<<<<<<<
 *         self._Matrix = ""#: string
 *         self._MatDecl = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NNode, __pyx_int_0) < 0) __PYX_ERR(0, 86, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":87
 *         self._ExternVectors = False#: Boolean
 *         self._NNode = 0#: Integer
 *         self._Matrix = ""#: string             # <<<<<<<<<<<<<<
 *         self._MatDecl = ""#: string
 *         self._SingleGradient = False#: Boolean
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_Matrix, __pyx_kp_u_) < 0) __PYX_ERR(0, 87, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":88
 *         self._NNode = 0#: Integer
 *         self._Matrix = ""#: string
 *         self._MatDecl = ""#: string             # <<<<<<<<<<<<<<
 *         self._SingleGradient = False#: Boolean
 *         self._MinDecl = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_MatDecl, __pyx_kp_u_) < 0) __PYX_ERR(0, 88, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":89
 *         self._Matrix = ""#: string
 *         self._MatDecl = ""#: string
 *         self._SingleGradient = False#: Boolean             # <<<<<<<<<<<<<<
 *         self._MinDecl = ""#: string
 *         self._MaxDecl = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_SingleGradient, Py_False) < 0) __PYX_ERR(0, 89, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":90
 *         self._MatDecl = ""#: string
 *         self._SingleGradient = False#: Boolean
 *         self._MinDecl = ""#: string             # <<<<<<<<<<<<<<
 *         self._MaxDecl = ""#: string
 *         self._StdDevDecl = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_MinDecl, __pyx_kp_u_) < 0) __PYX_ERR(0, 90, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":91
 *         self._SingleGradient = False#: Boolean
 *         self._MinDecl = ""#: string
 *         self._MaxDecl = ""#: string             # <<<<<<<<<<<<<<
 *         self._StdDevDecl = ""#: string
 *         self._NomFonction = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_MaxDecl, __pyx_kp_u_) < 0) __PYX_ERR(0, 91, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":92
 *         self._MinDecl = ""#: string
 *         self._MaxDecl = ""#: string
 *         self._StdDevDecl = ""#: string             # <<<<<<<<<<<<<<
 *         self._NomFonction = ""#: string
 *         self._NomFGradient = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_StdDevDecl, __pyx_kp_u_) < 0) __PYX_ERR(0, 92, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":93
 *         self._MaxDecl = ""#: string
 *         self._StdDevDecl = ""#: string
 *         self._NomFonction = ""#: string             # <<<<<<<<<<<<<<
 *         self._NomFGradient = ""#: string
 *         self._NomFGradientCall = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFonction, __pyx_kp_u_) < 0) __PYX_ERR(0, 93, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":94
 *         self._StdDevDecl = ""#: string
 *         self._NomFonction = ""#: string
 *         self._NomFGradient = ""#: string             # <<<<<<<<<<<<<<
 *         self._NomFGradientCall = ""#: string
 *         self._NomFTransfer = ""#: string
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFGradient, __pyx_kp_u_) < 0) __PYX_ERR(0, 94, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":95
 *         self._NomFonction = ""#: string
 *         self._NomFGradient = ""#: string
 *         self._NomFGradientCall = ""#: string             # <<<<<<<<<<<<<<
 *         self._NomFTransfer = ""#: string
 * #        self._NumpyDir = "C:/Python27/Lib/site-packages/numpy"
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFGradientCall, __pyx_kp_u_) < 0) __PYX_ERR(0, 95, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":96
 *         self._NomFGradient = ""#: string
 *         self._NomFGradientCall = ""#: string
 *         self._NomFTransfer = ""#: string             # <<<<<<<<<<<<<<
 * #        self._NumpyDir = "C:/Python27/Lib/site-packages/numpy"
 *         self._moduleName = "models"
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFTransfer, __pyx_kp_u_) < 0) __PYX_ERR(0, 96, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":98
 *         self._NomFTransfer = ""#: string
 * #        self._NumpyDir = "C:/Python27/Lib/site-packages/numpy"
 *         self._moduleName = "models"             # <<<<<<<<<<<<<<
 *         self._originallink = True
 *         self._dynamiclinking = False
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_moduleName, __pyx_n_u_models) < 0) __PYX_ERR(0, 98, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":99
 * #        self._NumpyDir = "C:/Python27/Lib/site-packages/numpy"
 *         self._moduleName = "models"
 *         self._originallink = True             # <<<<<<<<<<<<<<
 *         self._dynamiclinking = False
 *         self.trainable = True
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_originallink, Py_True) < 0) __PYX_ERR(0, 99, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":100
 *         self._moduleName = "models"
 *         self._originallink = True
 *         self._dynamiclinking = False             # <<<<<<<<<<<<<<
 *         self.trainable = True
 * 
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_dynamiclinking, Py_False) < 0) __PYX_ERR(0, 100, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":101
 *         self._originallink = True
 *         self._dynamiclinking = False
 *         self.trainable = True             # <<<<<<<<<<<<<<
 * 
 *         self._TemplatePath = os.path.join(os.path.dirname(__file__), "code_templates")
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_trainable, Py_True) < 0) __PYX_ERR(0, 101, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":103
 *         self.trainable = True
 * 
 *         self._TemplatePath = os.path.join(os.path.dirname(__file__), "code_templates")             # <<<<<<<<<<<<<<
 *         self._UserName = getpass.getuser() #: string
 *         self._ComputerName = socket.gethostname()#: string
 */
  __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_os); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 103, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_path); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 103, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_join); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 103, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_os); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 103, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_path); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 103, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_dirname); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 103, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_file); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 103, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_7 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_7)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_7);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_7) {
    __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 103, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_GOTREF(__pyx_t_5);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
      __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 103, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
      __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 103, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    } else
    #endif
    {
      __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 103, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
      __Pyx_GIVEREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_6);
      __pyx_t_6 = 0;
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 103, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = NULL;
  __pyx_t_4 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    if (likely(__pyx_t_2)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_3, function);
      __pyx_t_4 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_3)) {
    PyObject *__pyx_temp[3] = {__pyx_t_2, __pyx_t_5, __pyx_n_u_code_templates};
    __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 103, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
    PyObject *__pyx_temp[3] = {__pyx_t_2, __pyx_t_5, __pyx_n_u_code_templates};
    __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 103, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  } else
  #endif
  {
    __pyx_t_8 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 103, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_8);
    if (__pyx_t_2) {
      __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_2); __pyx_t_2 = NULL;
    }
    __Pyx_GIVEREF(__pyx_t_5);
    PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_4, __pyx_t_5);
    __Pyx_INCREF(__pyx_n_u_code_templates);
    __Pyx_GIVEREF(__pyx_n_u_code_templates);
    PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_4, __pyx_n_u_code_templates);
    __pyx_t_5 = 0;
    __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 103, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  }
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_TemplatePath, __pyx_t_1) < 0) __PYX_ERR(0, 103, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":104
 * 
 *         self._TemplatePath = os.path.join(os.path.dirname(__file__), "code_templates")
 *         self._UserName = getpass.getuser() #: string             # <<<<<<<<<<<<<<
 *         self._ComputerName = socket.gethostname()#: string
 *         self._SaveDir = tempfile.mkdtemp()
 */
  __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_getpass); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 104, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_getuser); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 104, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_8))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_8);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_8, function);
    }
  }
  if (__pyx_t_3) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 104, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 104, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_UserName, __pyx_t_1) < 0) __PYX_ERR(0, 104, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":105
 *         self._TemplatePath = os.path.join(os.path.dirname(__file__), "code_templates")
 *         self._UserName = getpass.getuser() #: string
 *         self._ComputerName = socket.gethostname()#: string             # <<<<<<<<<<<<<<
 *         self._SaveDir = tempfile.mkdtemp()
 * 
 */
  __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_socket); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 105, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_gethostname); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 105, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  __pyx_t_8 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_3);
    if (likely(__pyx_t_8)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_8);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_3, function);
    }
  }
  if (__pyx_t_8) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 105, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 105, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ComputerName, __pyx_t_1) < 0) __PYX_ERR(0, 105, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":106
 *         self._UserName = getpass.getuser() #: string
 *         self._ComputerName = socket.gethostname()#: string
 *         self._SaveDir = tempfile.mkdtemp()             # <<<<<<<<<<<<<<
 * 
 *         self._DriverSource = None
 */
  __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_tempfile); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 106, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_mkdtemp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 106, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_8))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_8);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_8, function);
    }
  }
  if (__pyx_t_3) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 106, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 106, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_SaveDir, __pyx_t_1) < 0) __PYX_ERR(0, 106, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":108
 *         self._SaveDir = tempfile.mkdtemp()
 * 
 *         self._DriverSource = None             # <<<<<<<<<<<<<<
 *         self._netSource = None
 * 
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource, Py_None) < 0) __PYX_ERR(0, 108, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":109
 * 
 *         self._DriverSource = None
 *         self._netSource = None             # <<<<<<<<<<<<<<
 * 
 * 
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_netSource, Py_None) < 0) __PYX_ERR(0, 109, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":113
 * 
 *         #self.DecimalSep = CC.DefaultDecimalSeparator
 *         self.TemplateDict = defaultdict(lambda:"")             # <<<<<<<<<<<<<<
 * 
 *         self.setSource(Source)
 */
  __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_defaultdict); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 113, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_t_3 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_8__init___lambda, 0, __pyx_n_s_CodeWriterBase___init___locals_l, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 113, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_5 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_8))) {
    __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8);
    if (likely(__pyx_t_5)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
      __Pyx_INCREF(__pyx_t_5);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_8, function);
    }
  }
  if (!__pyx_t_5) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 113, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_8)) {
      PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_t_3};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 113, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
      PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_t_3};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 113, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else
    #endif
    {
      __pyx_t_2 = PyTuple_New(1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 113, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_5); __pyx_t_5 = NULL;
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_2, 0+1, __pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 113, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_TemplateDict, __pyx_t_1) < 0) __PYX_ERR(0, 113, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":115
 *         self.TemplateDict = defaultdict(lambda:"")
 * 
 *         self.setSource(Source)             # <<<<<<<<<<<<<<
 * #         if Source is not None:
 * #             if isinstance(Source, Model):
 */
  __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_setSource); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 115, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_t_2 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_8);
    if (likely(__pyx_t_2)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_8, function);
    }
  }
  if (!__pyx_t_2) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_v_Source); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 115, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_8)) {
      PyObject *__pyx_temp[2] = {__pyx_t_2, __pyx_v_Source};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 115, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
      PyObject *__pyx_temp[2] = {__pyx_t_2, __pyx_v_Source};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 115, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    {
      __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 115, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = NULL;
      __Pyx_INCREF(__pyx_v_Source);
      __Pyx_GIVEREF(__pyx_v_Source);
      PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_Source);
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 115, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":60
 *     classdocs
 *     '''
 *     def __init__(self, owner, Source, name="codewriter"):             # <<<<<<<<<<<<<<
 *         '''
 *         Constructor
 */

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":124
 * 
 * 
 *     def setReplaceDict(self):             # <<<<<<<<<<<<<<
 *         self.ReplaceDictionary = {
 *             "PropertyValue": self.PptyValueStr,
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_3setReplaceDict(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_3setReplaceDict = {"setReplaceDict", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_3setReplaceDict, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_3setReplaceDict(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("setReplaceDict (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_2setReplaceDict(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_2setReplaceDict(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("setReplaceDict", 0);

  /* "metaphor/monal/lcode/codewriter.py":126
 *     def setReplaceDict(self):
 *         self.ReplaceDictionary = {
 *             "PropertyValue": self.PptyValueStr,             # <<<<<<<<<<<<<<
 *             "PropertyLeverage": self.PptyLeverageStr,
 *             "Configuration": self.ConfigurationStr,
 */
  __pyx_t_1 = __Pyx_PyDict_NewPresized(135); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_PptyValueStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_PropertyValue, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":127
 *         self.ReplaceDictionary = {
 *             "PropertyValue": self.PptyValueStr,
 *             "PropertyLeverage": self.PptyLeverageStr,             # <<<<<<<<<<<<<<
 *             "Configuration": self.ConfigurationStr,
 * #            "ConfigurationLong": self.ConfigurationLongStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_PptyLeverageStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 127, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_PropertyLeverage, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":128
 *             "PropertyValue": self.PptyValueStr,
 *             "PropertyLeverage": self.PptyLeverageStr,
 *             "Configuration": self.ConfigurationStr,             # <<<<<<<<<<<<<<
 * #            "ConfigurationLong": self.ConfigurationLongStr,
 *             'Monalversion': monalversion,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ConfigurationStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 128, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Configuration, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":130
 *             "Configuration": self.ConfigurationStr,
 * #            "ConfigurationLong": self.ConfigurationLongStr,
 *             'Monalversion': monalversion,             # <<<<<<<<<<<<<<
 *             'Module' : self.ModuleStr,
 *             'ModuleType': self.getModuleType,
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_monalversion); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 130, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Monalversion, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":131
 * #            "ConfigurationLong": self.ConfigurationLongStr,
 *             'Monalversion': monalversion,
 *             'Module' : self.ModuleStr,             # <<<<<<<<<<<<<<
 *             'ModuleType': self.getModuleType,
 *             'ModuleP' : self.ModulePStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ModuleStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 131, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Module, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":132
 *             'Monalversion': monalversion,
 *             'Module' : self.ModuleStr,
 *             'ModuleType': self.getModuleType,             # <<<<<<<<<<<<<<
 *             'ModuleP' : self.ModulePStr,
 *             "InputNames" : self.InputNameStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_getModuleType); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 132, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_ModuleType, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":133
 *             'Module' : self.ModuleStr,
 *             'ModuleType': self.getModuleType,
 *             'ModuleP' : self.ModulePStr,             # <<<<<<<<<<<<<<
 *             "InputNames" : self.InputNameStr,
 *             "InputNamesDecl" : self.InputNameDeclStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ModulePStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 133, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_ModuleP, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":134
 *             'ModuleType': self.getModuleType,
 *             'ModuleP' : self.ModulePStr,
 *             "InputNames" : self.InputNameStr,             # <<<<<<<<<<<<<<
 *             "InputNamesDecl" : self.InputNameDeclStr,
 *             "InputNamesProto": self.InputNameProtoStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_InputNameStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 134, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InputNames, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":135
 *             'ModuleP' : self.ModulePStr,
 *             "InputNames" : self.InputNameStr,
 *             "InputNamesDecl" : self.InputNameDeclStr,             # <<<<<<<<<<<<<<
 *             "InputNamesProto": self.InputNameProtoStr,
 *             "InputNamesLong" : self.InputNameLongStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_InputNameDeclStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 135, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InputNamesDecl, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":136
 *             "InputNames" : self.InputNameStr,
 *             "InputNamesDecl" : self.InputNameDeclStr,
 *             "InputNamesProto": self.InputNameProtoStr,             # <<<<<<<<<<<<<<
 *             "InputNamesLong" : self.InputNameLongStr,
 *             "OutputName0" : self.OutputName0Str,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_InputNameProtoStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 136, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InputNamesProto, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":137
 *             "InputNamesDecl" : self.InputNameDeclStr,
 *             "InputNamesProto": self.InputNameProtoStr,
 *             "InputNamesLong" : self.InputNameLongStr,             # <<<<<<<<<<<<<<
 *             "OutputName0" : self.OutputName0Str,
 *             "OutputNames" : self.OutputNameStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_InputNameLongStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 137, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InputNamesLong, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":138
 *             "InputNamesProto": self.InputNameProtoStr,
 *             "InputNamesLong" : self.InputNameLongStr,
 *             "OutputName0" : self.OutputName0Str,             # <<<<<<<<<<<<<<
 *             "OutputNames" : self.OutputNameStr,
 *             "WeightNames" : self.WeightNameStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_OutputName0Str); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 138, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_OutputName0, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":139
 *             "InputNamesLong" : self.InputNameLongStr,
 *             "OutputName0" : self.OutputName0Str,
 *             "OutputNames" : self.OutputNameStr,             # <<<<<<<<<<<<<<
 *             "WeightNames" : self.WeightNameStr,
 *             "UsedWeights" : self.UsedWeightStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_OutputNameStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 139, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_OutputNames, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":140
 *             "OutputName0" : self.OutputName0Str,
 *             "OutputNames" : self.OutputNameStr,
 *             "WeightNames" : self.WeightNameStr,             # <<<<<<<<<<<<<<
 *             "UsedWeights" : self.UsedWeightStr,
 *             "WeightNamesShort" : self.WeightNameShortStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_WeightNameStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 140, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_WeightNames, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":141
 *             "OutputNames" : self.OutputNameStr,
 *             "WeightNames" : self.WeightNameStr,
 *             "UsedWeights" : self.UsedWeightStr,             # <<<<<<<<<<<<<<
 *             "WeightNamesShort" : self.WeightNameShortStr,
 *             "StateNames" : self.StateNameStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_UsedWeightStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_UsedWeights, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":142
 *             "WeightNames" : self.WeightNameStr,
 *             "UsedWeights" : self.UsedWeightStr,
 *             "WeightNamesShort" : self.WeightNameShortStr,             # <<<<<<<<<<<<<<
 *             "StateNames" : self.StateNameStr,
 *             "WeightRanges" : self.WeightRangeStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_WeightNameShortStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 142, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_WeightNamesShort, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":143
 *             "UsedWeights" : self.UsedWeightStr,
 *             "WeightNamesShort" : self.WeightNameShortStr,
 *             "StateNames" : self.StateNameStr,             # <<<<<<<<<<<<<<
 *             "WeightRanges" : self.WeightRangeStr,
 *             "InputValues": self.GetInputValues,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_StateNameStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 143, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_StateNames, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":144
 *             "WeightNamesShort" : self.WeightNameShortStr,
 *             "StateNames" : self.StateNameStr,
 *             "WeightRanges" : self.WeightRangeStr,             # <<<<<<<<<<<<<<
 *             "InputValues": self.GetInputValues,
 *             "OutputValues": self.GetOutputValues,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_WeightRangeStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 144, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_WeightRanges, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":145
 *             "StateNames" : self.StateNameStr,
 *             "WeightRanges" : self.WeightRangeStr,
 *             "InputValues": self.GetInputValues,             # <<<<<<<<<<<<<<
 *             "OutputValues": self.GetOutputValues,
 *             "InputRanges" : self.InputRangeStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetInputValues); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 145, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InputValues, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":146
 *             "WeightRanges" : self.WeightRangeStr,
 *             "InputValues": self.GetInputValues,
 *             "OutputValues": self.GetOutputValues,             # <<<<<<<<<<<<<<
 *             "InputRanges" : self.InputRangeStr,
 *             "OutputRanges" : self.OutputRangeStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetOutputValues); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 146, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_OutputValues, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":147
 *             "InputValues": self.GetInputValues,
 *             "OutputValues": self.GetOutputValues,
 *             "InputRanges" : self.InputRangeStr,             # <<<<<<<<<<<<<<
 *             "OutputRanges" : self.OutputRangeStr,
 *             "InputRangesDecl" : self.InputRangeDeclStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_InputRangeStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 147, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InputRanges, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":148
 *             "OutputValues": self.GetOutputValues,
 *             "InputRanges" : self.InputRangeStr,
 *             "OutputRanges" : self.OutputRangeStr,             # <<<<<<<<<<<<<<
 *             "InputRangesDecl" : self.InputRangeDeclStr,
 *             "InputRangesProto" : self.InputRangeProtoStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_OutputRangeStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_OutputRanges, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":149
 *             "InputRanges" : self.InputRangeStr,
 *             "OutputRanges" : self.OutputRangeStr,
 *             "InputRangesDecl" : self.InputRangeDeclStr,             # <<<<<<<<<<<<<<
 *             "InputRangesProto" : self.InputRangeProtoStr,
 *             "InputRangesLong" : self.InputRangeLongStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_InputRangeDeclStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 149, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InputRangesDecl, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":150
 *             "OutputRanges" : self.OutputRangeStr,
 *             "InputRangesDecl" : self.InputRangeDeclStr,
 *             "InputRangesProto" : self.InputRangeProtoStr,             # <<<<<<<<<<<<<<
 *             "InputRangesLong" : self.InputRangeLongStr,
 *             "OutputRanges" : self.OutputRangeStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_InputRangeProtoStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 150, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InputRangesProto, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":151
 *             "InputRangesDecl" : self.InputRangeDeclStr,
 *             "InputRangesProto" : self.InputRangeProtoStr,
 *             "InputRangesLong" : self.InputRangeLongStr,             # <<<<<<<<<<<<<<
 *             "OutputRanges" : self.OutputRangeStr,
 *             "BracketOutDecl": self.BracketOutDeclStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_InputRangeLongStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 151, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InputRangesLong, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":152
 *             "InputRangesProto" : self.InputRangeProtoStr,
 *             "InputRangesLong" : self.InputRangeLongStr,
 *             "OutputRanges" : self.OutputRangeStr,             # <<<<<<<<<<<<<<
 *             "BracketOutDecl": self.BracketOutDeclStr,
 *             "BracketOut0": self.BracketOut0Str,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_OutputRangeStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 152, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_OutputRanges, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":153
 *             "InputRangesLong" : self.InputRangeLongStr,
 *             "OutputRanges" : self.OutputRangeStr,
 *             "BracketOutDecl": self.BracketOutDeclStr,             # <<<<<<<<<<<<<<
 *             "BracketOut0": self.BracketOut0Str,
 *             "IniWeights" : self.IniWeightStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_BracketOutDeclStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 153, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_BracketOutDecl, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":154
 *             "OutputRanges" : self.OutputRangeStr,
 *             "BracketOutDecl": self.BracketOutDeclStr,
 *             "BracketOut0": self.BracketOut0Str,             # <<<<<<<<<<<<<<
 *             "IniWeights" : self.IniWeightStr,
 *             "Max" : self.MaxStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_BracketOut0Str); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 154, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_BracketOut0, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":155
 *             "BracketOutDecl": self.BracketOutDeclStr,
 *             "BracketOut0": self.BracketOut0Str,
 *             "IniWeights" : self.IniWeightStr,             # <<<<<<<<<<<<<<
 *             "Max" : self.MaxStr,
 *             "Min" : self.MinStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_IniWeightStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 155, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_IniWeights, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":156
 *             "BracketOut0": self.BracketOut0Str,
 *             "IniWeights" : self.IniWeightStr,
 *             "Max" : self.MaxStr,             # <<<<<<<<<<<<<<
 *             "Min" : self.MinStr,
 *             "Weights" : self.WStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_MaxStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 156, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Max, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":157
 *             "IniWeights" : self.IniWeightStr,
 *             "Max" : self.MaxStr,
 *             "Min" : self.MinStr,             # <<<<<<<<<<<<<<
 *             "Weights" : self.WStr,
 *             "Dispersion": self.DispersionStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_MinStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 157, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Min, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":158
 *             "Max" : self.MaxStr,
 *             "Min" : self.MinStr,
 *             "Weights" : self.WStr,             # <<<<<<<<<<<<<<
 *             "Dispersion": self.DispersionStr,
 *             "DispersionR": self.DispersionReduiteStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_WStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 158, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Weights, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":159
 *             "Min" : self.MinStr,
 *             "Weights" : self.WStr,
 *             "Dispersion": self.DispersionStr,             # <<<<<<<<<<<<<<
 *             "DispersionR": self.DispersionReduiteStr,
 *             "HalfDispersionR": self.DemiDispersionReduiteStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DispersionStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 159, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Dispersion, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":160
 *             "Weights" : self.WStr,
 *             "Dispersion": self.DispersionStr,
 *             "DispersionR": self.DispersionReduiteStr,             # <<<<<<<<<<<<<<
 *             "HalfDispersionR": self.DemiDispersionReduiteStr,
 *             "ExtraParamsDecl" : self.ExtraParamsDeclStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DispersionReduiteStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 160, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_DispersionR, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":161
 *             "Dispersion": self.DispersionStr,
 *             "DispersionR": self.DispersionReduiteStr,
 *             "HalfDispersionR": self.DemiDispersionReduiteStr,             # <<<<<<<<<<<<<<
 *             "ExtraParamsDecl" : self.ExtraParamsDeclStr,
 *             "ExtraParamsInit" : self.partialExtraParamsInitStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DemiDispersionReduiteStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 161, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_HalfDispersionR, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":162
 *             "DispersionR": self.DispersionReduiteStr,
 *             "HalfDispersionR": self.DemiDispersionReduiteStr,
 *             "ExtraParamsDecl" : self.ExtraParamsDeclStr,             # <<<<<<<<<<<<<<
 *             "ExtraParamsInit" : self.partialExtraParamsInitStr,
 *         #partial(self.ExtraParamsInitStr, reduced=True),
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ExtraParamsDeclStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 162, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_ExtraParamsDecl, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":163
 *             "HalfDispersionR": self.DemiDispersionReduiteStr,
 *             "ExtraParamsDecl" : self.ExtraParamsDeclStr,
 *             "ExtraParamsInit" : self.partialExtraParamsInitStr,             # <<<<<<<<<<<<<<
 *         #partial(self.ExtraParamsInitStr, reduced=True),
 *             "OutNorm" : self.OutNormStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_partialExtraParamsInitStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 163, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_ExtraParamsInit, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":165
 *             "ExtraParamsInit" : self.partialExtraParamsInitStr,
 *         #partial(self.ExtraParamsInitStr, reduced=True),
 *             "OutNorm" : self.OutNormStr,             # <<<<<<<<<<<<<<
 * #            "InNormDecl": self.InNormDeclStr,
 *             "InNorm" : self.InNormStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_OutNormStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 165, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_OutNorm, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":167
 *             "OutNorm" : self.OutNormStr,
 * #            "InNormDecl": self.InNormDeclStr,
 *             "InNorm" : self.InNormStr,             # <<<<<<<<<<<<<<
 * #            "InNormInit": self.InNormInitStr,
 *             "ExtraWeightCount" : self.ExtraWeightsCountStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_InNormStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 167, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InNorm, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":169
 *             "InNorm" : self.InNormStr,
 * #            "InNormInit": self.InNormInitStr,
 *             "ExtraWeightCount" : self.ExtraWeightsCountStr,             # <<<<<<<<<<<<<<
 *             "StartComment0extra": self.StartComment0extra,
 *             "EndComment0extra": self.EndComment0extra,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ExtraWeightsCountStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 169, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_ExtraWeightCount, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":170
 * #            "InNormInit": self.InNormInitStr,
 *             "ExtraWeightCount" : self.ExtraWeightsCountStr,
 *             "StartComment0extra": self.StartComment0extra,             # <<<<<<<<<<<<<<
 *             "EndComment0extra": self.EndComment0extra,
 *             "StartCommentOut": self.StartCommentOut,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_StartComment0extra); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 170, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_StartComment0extra, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":171
 *             "ExtraWeightCount" : self.ExtraWeightsCountStr,
 *             "StartComment0extra": self.StartComment0extra,
 *             "EndComment0extra": self.EndComment0extra,             # <<<<<<<<<<<<<<
 *             "StartCommentOut": self.StartCommentOut,
 *             "EndCommentOut": self.EndCommentOut,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_EndComment0extra); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 171, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_EndComment0extra, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":172
 *             "StartComment0extra": self.StartComment0extra,
 *             "EndComment0extra": self.EndComment0extra,
 *             "StartCommentOut": self.StartCommentOut,             # <<<<<<<<<<<<<<
 *             "EndCommentOut": self.EndCommentOut,
 *             #"BlocCoord" : self.BlocCoordKoh,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_StartCommentOut); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 172, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_StartCommentOut, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":173
 *             "EndComment0extra": self.EndComment0extra,
 *             "StartCommentOut": self.StartCommentOut,
 *             "EndCommentOut": self.EndCommentOut,             # <<<<<<<<<<<<<<
 *             #"BlocCoord" : self.BlocCoordKoh,
 *             "IniState" : self.IniStStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_EndCommentOut); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 173, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_EndCommentOut, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":175
 *             "EndCommentOut": self.EndCommentOut,
 *             #"BlocCoord" : self.BlocCoordKoh,
 *             "IniState" : self.IniStStr,             # <<<<<<<<<<<<<<
 *             "Transfer" : self.TransferStr,
 *             "TransferGrad" : self.GradStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_IniStStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 175, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_IniState, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":176
 *             #"BlocCoord" : self.BlocCoordKoh,
 *             "IniState" : self.IniStStr,
 *             "Transfer" : self.TransferStr,             # <<<<<<<<<<<<<<
 *             "TransferGrad" : self.GradStr,
 *             #"TransferX" : partial(self.TransferStr, original=False),
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_TransferStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 176, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Transfer, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":177
 *             "IniState" : self.IniStStr,
 *             "Transfer" : self.TransferStr,
 *             "TransferGrad" : self.GradStr,             # <<<<<<<<<<<<<<
 *             #"TransferX" : partial(self.TransferStr, original=False),
 *             #"TransferGradX" : partial(self.GradStr, original=False),
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GradStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 177, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_TransferGrad, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":181
 *             #"TransferGradX" : partial(self.GradStr, original=False),
 *             #"TransferGrad1" : self.GradStr1,
 *             "TransferGradHess" : self.GradHessStr,             # <<<<<<<<<<<<<<
 *             "TransferGradHessFD" : self.GradHessFDStr,
 *             "TransferGradInput" : self.GradInputStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GradHessStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 181, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_TransferGradHess, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":182
 *             #"TransferGrad1" : self.GradStr1,
 *             "TransferGradHess" : self.GradHessStr,
 *             "TransferGradHessFD" : self.GradHessFDStr,             # <<<<<<<<<<<<<<
 *             "TransferGradInput" : self.GradInputStr,
 *             "depends" : self.DependStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GradHessFDStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 182, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_TransferGradHessFD, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":183
 *             "TransferGradHess" : self.GradHessStr,
 *             "TransferGradHessFD" : self.GradHessFDStr,
 *             "TransferGradInput" : self.GradInputStr,             # <<<<<<<<<<<<<<
 *             "depends" : self.DependStr,
 *             #"BlocDim" : self.BlocDimKoh,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GradInputStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 183, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_TransferGradInput, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":184
 *             "TransferGradHessFD" : self.GradHessFDStr,
 *             "TransferGradInput" : self.GradInputStr,
 *             "depends" : self.DependStr,             # <<<<<<<<<<<<<<
 *             #"BlocDim" : self.BlocDimKoh,
 *             "ZtZ" : self.MatStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DependStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 184, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_depends, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":186
 *             "depends" : self.DependStr,
 *             #"BlocDim" : self.BlocDimKoh,
 *             "ZtZ" : self.MatStr,             # <<<<<<<<<<<<<<
 *             "Count" : self.GetUseCountStr,
 *             "temp_ii" : self.GetCodeStrII,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_MatStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 186, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_ZtZ, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":187
 *             #"BlocDim" : self.BlocDimKoh,
 *             "ZtZ" : self.MatStr,
 *             "Count" : self.GetUseCountStr,             # <<<<<<<<<<<<<<
 *             "temp_ii" : self.GetCodeStrII,
 *             "temp_ji" : self.GetCodeStrJI,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetUseCountStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 187, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Count, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":188
 *             "ZtZ" : self.MatStr,
 *             "Count" : self.GetUseCountStr,
 *             "temp_ii" : self.GetCodeStrII,             # <<<<<<<<<<<<<<
 *             "temp_ji" : self.GetCodeStrJI,
 *             "Comment" : self.GetJurCommentStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetCodeStrII); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 188, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_temp_ii, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":189
 *             "Count" : self.GetUseCountStr,
 *             "temp_ii" : self.GetCodeStrII,
 *             "temp_ji" : self.GetCodeStrJI,             # <<<<<<<<<<<<<<
 *             "Comment" : self.GetJurCommentStr,
 *             "Order" : self.GetOrderStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetCodeStrJI); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 189, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_temp_ji, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":190
 *             "temp_ii" : self.GetCodeStrII,
 *             "temp_ji" : self.GetCodeStrJI,
 *             "Comment" : self.GetJurCommentStr,             # <<<<<<<<<<<<<<
 *             "Order" : self.GetOrderStr,
 *             "Nodes" : self.GetNodeStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetJurCommentStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 190, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Comment, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":191
 *             "temp_ji" : self.GetCodeStrJI,
 *             "Comment" : self.GetJurCommentStr,
 *             "Order" : self.GetOrderStr,             # <<<<<<<<<<<<<<
 *             "Nodes" : self.GetNodeStr,
 *             "Inputs" : self.GetInputsStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetOrderStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 191, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Order, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":192
 *             "Comment" : self.GetJurCommentStr,
 *             "Order" : self.GetOrderStr,
 *             "Nodes" : self.GetNodeStr,             # <<<<<<<<<<<<<<
 *             "Inputs" : self.GetInputsStr,
 *             "Outputs" : self.GetOutputsStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetNodeStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 192, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Nodes, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":193
 *             "Order" : self.GetOrderStr,
 *             "Nodes" : self.GetNodeStr,
 *             "Inputs" : self.GetInputsStr,             # <<<<<<<<<<<<<<
 *             "Outputs" : self.GetOutputsStr,
 *             "InOutputs" : self.GetInOutStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetInputsStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 193, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Inputs, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":194
 *             "Nodes" : self.GetNodeStr,
 *             "Inputs" : self.GetInputsStr,
 *             "Outputs" : self.GetOutputsStr,             # <<<<<<<<<<<<<<
 *             "InOutputs" : self.GetInOutStr,
 *             "Dimension" : self.GetDimensionStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetOutputsStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 194, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Outputs, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":195
 *             "Inputs" : self.GetInputsStr,
 *             "Outputs" : self.GetOutputsStr,
 *             "InOutputs" : self.GetInOutStr,             # <<<<<<<<<<<<<<
 *             "Dimension" : self.GetDimensionStr,
 *             #"Nlwcount": self.GetNLWCountStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetInOutStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 195, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InOutputs, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":196
 *             "Outputs" : self.GetOutputsStr,
 *             "InOutputs" : self.GetInOutStr,
 *             "Dimension" : self.GetDimensionStr,             # <<<<<<<<<<<<<<
 *             #"Nlwcount": self.GetNLWCountStr,
 *             "Synapses" : self.GetSynapsesStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetDimensionStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 196, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Dimension, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":198
 *             "Dimension" : self.GetDimensionStr,
 *             #"Nlwcount": self.GetNLWCountStr,
 *             "Synapses" : self.GetSynapsesStr,             # <<<<<<<<<<<<<<
 *             "Hidden": self.GetHiddenStr,
 *             "AllSynapses" : self.GetAllSynapsesStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetSynapsesStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 198, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Synapses, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":199
 *             #"Nlwcount": self.GetNLWCountStr,
 *             "Synapses" : self.GetSynapsesStr,
 *             "Hidden": self.GetHiddenStr,             # <<<<<<<<<<<<<<
 *             "AllSynapses" : self.GetAllSynapsesStr,
 *             "InOut" : self.GetInOutStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetHiddenStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 199, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Hidden, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":200
 *             "Synapses" : self.GetSynapsesStr,
 *             "Hidden": self.GetHiddenStr,
 *             "AllSynapses" : self.GetAllSynapsesStr,             # <<<<<<<<<<<<<<
 *             "InOut" : self.GetInOutStr,
 *             "DimZtZ" : self.GetDimZtZStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetAllSynapsesStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 200, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_AllSynapses, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":201
 *             "Hidden": self.GetHiddenStr,
 *             "AllSynapses" : self.GetAllSynapsesStr,
 *             "InOut" : self.GetInOutStr,             # <<<<<<<<<<<<<<
 *             "DimZtZ" : self.GetDimZtZStr,
 *             "StdDev" : self.GetStdDevStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetInOutStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 201, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_InOut, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":202
 *             "AllSynapses" : self.GetAllSynapsesStr,
 *             "InOut" : self.GetInOutStr,
 *             "DimZtZ" : self.GetDimZtZStr,             # <<<<<<<<<<<<<<
 *             "StdDev" : self.GetStdDevStr,
 *             "Student" : self.GetStudentStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetDimZtZStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_DimZtZ, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":203
 *             "InOut" : self.GetInOutStr,
 *             "DimZtZ" : self.GetDimZtZStr,
 *             "StdDev" : self.GetStdDevStr,             # <<<<<<<<<<<<<<
 *             "Student" : self.GetStudentStr,
 *             "Mu" : self.GetMuStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetStdDevStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 203, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_StdDev, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":204
 *             "DimZtZ" : self.GetDimZtZStr,
 *             "StdDev" : self.GetStdDevStr,
 *             "Student" : self.GetStudentStr,             # <<<<<<<<<<<<<<
 *             "Mu" : self.GetMuStr,
 *             "Freedom": self.FreedomStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetStudentStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 204, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Student, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":205
 *             "StdDev" : self.GetStdDevStr,
 *             "Student" : self.GetStudentStr,
 *             "Mu" : self.GetMuStr,             # <<<<<<<<<<<<<<
 *             "Freedom": self.FreedomStr,
 *             "Baselen": self.BaselenStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetMuStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Mu, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":206
 *             "Student" : self.GetStudentStr,
 *             "Mu" : self.GetMuStr,
 *             "Freedom": self.FreedomStr,             # <<<<<<<<<<<<<<
 *             "Baselen": self.BaselenStr,
 *             "Director": self.GetDitectorStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_FreedomStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 206, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Freedom, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":207
 *             "Mu" : self.GetMuStr,
 *             "Freedom": self.FreedomStr,
 *             "Baselen": self.BaselenStr,             # <<<<<<<<<<<<<<
 *             "Director": self.GetDitectorStr,
 *             "FileName" : self.GetFileNameStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_BaselenStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 207, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Baselen, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":208
 *             "Freedom": self.FreedomStr,
 *             "Baselen": self.BaselenStr,
 *             "Director": self.GetDitectorStr,             # <<<<<<<<<<<<<<
 *             "FileName" : self.GetFileNameStr,
 *             "CC" : self.GetCCStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetDitectorStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 208, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Director, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":209
 *             "Baselen": self.BaselenStr,
 *             "Director": self.GetDitectorStr,
 *             "FileName" : self.GetFileNameStr,             # <<<<<<<<<<<<<<
 *             "CC" : self.GetCCStr,
 *             "Name" : self.GetNameStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetFileNameStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 209, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_FileName_2, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":210
 *             "Director": self.GetDitectorStr,
 *             "FileName" : self.GetFileNameStr,
 *             "CC" : self.GetCCStr,             # <<<<<<<<<<<<<<
 *             "Name" : self.GetNameStr,
 *             "TrueName" : self.GetTrueNameStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetCCStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 210, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_CC, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":211
 *             "FileName" : self.GetFileNameStr,
 *             "CC" : self.GetCCStr,
 *             "Name" : self.GetNameStr,             # <<<<<<<<<<<<<<
 *             "TrueName" : self.GetTrueNameStr,
 *             "Target" : self.GetTargetStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetNameStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Name, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":212
 *             "CC" : self.GetCCStr,
 *             "Name" : self.GetNameStr,
 *             "TrueName" : self.GetTrueNameStr,             # <<<<<<<<<<<<<<
 *             "Target" : self.GetTargetStr,
 *             "libname" : self.GetLibNameStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetTrueNameStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 212, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_TrueName, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":213
 *             "Name" : self.GetNameStr,
 *             "TrueName" : self.GetTrueNameStr,
 *             "Target" : self.GetTargetStr,             # <<<<<<<<<<<<<<
 *             "libname" : self.GetLibNameStr,
 *             "Date" : self.GetDateStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetTargetStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 213, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Target, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":214
 *             "TrueName" : self.GetTrueNameStr,
 *             "Target" : self.GetTargetStr,
 *             "libname" : self.GetLibNameStr,             # <<<<<<<<<<<<<<
 *             "Date" : self.GetDateStr,
 *             "Time" : self.GetTimeStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetLibNameStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 214, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_libname, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":215
 *             "Target" : self.GetTargetStr,
 *             "libname" : self.GetLibNameStr,
 *             "Date" : self.GetDateStr,             # <<<<<<<<<<<<<<
 *             "Time" : self.GetTimeStr,
 *             "User" : self.GetUserStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetDateStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 215, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Date, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":216
 *             "libname" : self.GetLibNameStr,
 *             "Date" : self.GetDateStr,
 *             "Time" : self.GetTimeStr,             # <<<<<<<<<<<<<<
 *             "User" : self.GetUserStr,
 *             "Computer" : self.GetComputerStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetTimeStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 216, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Time, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":217
 *             "Date" : self.GetDateStr,
 *             "Time" : self.GetTimeStr,
 *             "User" : self.GetUserStr,             # <<<<<<<<<<<<<<
 *             "Computer" : self.GetComputerStr,
 *             "Common" : self.GetCommonStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetUserStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 217, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_User, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":218
 *             "Time" : self.GetTimeStr,
 *             "User" : self.GetUserStr,
 *             "Computer" : self.GetComputerStr,             # <<<<<<<<<<<<<<
 *             "Common" : self.GetCommonStr,
 *             "datarecord" : self.GetDataRecStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetComputerStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 218, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Computer, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":219
 *             "User" : self.GetUserStr,
 *             "Computer" : self.GetComputerStr,
 *             "Common" : self.GetCommonStr,             # <<<<<<<<<<<<<<
 *             "datarecord" : self.GetDataRecStr,
 *             "linear" : self.GetLinearStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetCommonStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 219, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Common, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":220
 *             "Computer" : self.GetComputerStr,
 *             "Common" : self.GetCommonStr,
 *             "datarecord" : self.GetDataRecStr,             # <<<<<<<<<<<<<<
 *             "linear" : self.GetLinearStr,
 *             "Comments" : self.GetCommentsStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetDataRecStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 220, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_datarecord, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":221
 *             "Common" : self.GetCommonStr,
 *             "datarecord" : self.GetDataRecStr,
 *             "linear" : self.GetLinearStr,             # <<<<<<<<<<<<<<
 *             "Comments" : self.GetCommentsStr,
 *             "CommentCount" : self.GetCommentCountStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetLinearStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 221, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_linear, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":222
 *             "datarecord" : self.GetDataRecStr,
 *             "linear" : self.GetLinearStr,
 *             "Comments" : self.GetCommentsStr,             # <<<<<<<<<<<<<<
 *             "CommentCount" : self.GetCommentCountStr,
 *             "SynapseRange" : self.GetSynapseRangeStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetCommentsStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 222, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Comments, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":223
 *             "linear" : self.GetLinearStr,
 *             "Comments" : self.GetCommentsStr,
 *             "CommentCount" : self.GetCommentCountStr,             # <<<<<<<<<<<<<<
 *             "SynapseRange" : self.GetSynapseRangeStr,
 *             "MakeParams" : self.GetMakeParams,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetCommentCountStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 223, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_CommentCount, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":224
 *             "Comments" : self.GetCommentsStr,
 *             "CommentCount" : self.GetCommentCountStr,
 *             "SynapseRange" : self.GetSynapseRangeStr,             # <<<<<<<<<<<<<<
 *             "MakeParams" : self.GetMakeParams,
 *             "MakeLinkLib" : self.GetMakeLinkLib,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetSynapseRangeStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 224, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_SynapseRange, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":225
 *             "CommentCount" : self.GetCommentCountStr,
 *             "SynapseRange" : self.GetSynapseRangeStr,
 *             "MakeParams" : self.GetMakeParams,             # <<<<<<<<<<<<<<
 *             "MakeLinkLib" : self.GetMakeLinkLib,
 *             "Numpydir" : self.GetNumpyDir,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetMakeParams); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 225, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_MakeParams, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":226
 *             "SynapseRange" : self.GetSynapseRangeStr,
 *             "MakeParams" : self.GetMakeParams,
 *             "MakeLinkLib" : self.GetMakeLinkLib,             # <<<<<<<<<<<<<<
 *             "Numpydir" : self.GetNumpyDir,
 *             "IncludeFiles": self.GetIncludeFiles,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetMakeLinkLib); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 226, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_MakeLinkLib, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":227
 *             "MakeParams" : self.GetMakeParams,
 *             "MakeLinkLib" : self.GetMakeLinkLib,
 *             "Numpydir" : self.GetNumpyDir,             # <<<<<<<<<<<<<<
 *             "IncludeFiles": self.GetIncludeFiles,
 *             "ModelFile": self.GetModelFile,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetNumpyDir); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 227, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Numpydir, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":228
 *             "MakeLinkLib" : self.GetMakeLinkLib,
 *             "Numpydir" : self.GetNumpyDir,
 *             "IncludeFiles": self.GetIncludeFiles,             # <<<<<<<<<<<<<<
 *             "ModelFile": self.GetModelFile,
 *             "MultiTransfer": self.GetMultiTransfer,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetIncludeFiles); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 228, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_IncludeFiles, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":229
 *             "Numpydir" : self.GetNumpyDir,
 *             "IncludeFiles": self.GetIncludeFiles,
 *             "ModelFile": self.GetModelFile,             # <<<<<<<<<<<<<<
 *             "MultiTransfer": self.GetMultiTransfer,
 *             "MultiTransferGradient": self.GetMultiTransferGradient,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetModelFile); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_ModelFile, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":230
 *             "IncludeFiles": self.GetIncludeFiles,
 *             "ModelFile": self.GetModelFile,
 *             "MultiTransfer": self.GetMultiTransfer,             # <<<<<<<<<<<<<<
 *             "MultiTransferGradient": self.GetMultiTransferGradient,
 *             "CFiles": self.GetCFiles,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetMultiTransfer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 230, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_MultiTransfer, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":231
 *             "ModelFile": self.GetModelFile,
 *             "MultiTransfer": self.GetMultiTransfer,
 *             "MultiTransferGradient": self.GetMultiTransferGradient,             # <<<<<<<<<<<<<<
 *             "CFiles": self.GetCFiles,
 *             "modelcount": self.GetModelCount,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetMultiTransferGradient); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 231, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_MultiTransferGradient, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":232
 *             "MultiTransfer": self.GetMultiTransfer,
 *             "MultiTransferGradient": self.GetMultiTransferGradient,
 *             "CFiles": self.GetCFiles,             # <<<<<<<<<<<<<<
 *             "modelcount": self.GetModelCount,
 *             "datacount": self.GetDataCount,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetCFiles); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 232, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_CFiles, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":233
 *             "MultiTransferGradient": self.GetMultiTransferGradient,
 *             "CFiles": self.GetCFiles,
 *             "modelcount": self.GetModelCount,             # <<<<<<<<<<<<<<
 *             "datacount": self.GetDataCount,
 *             "modelNameList": self.GetModelList,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetModelCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 233, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_modelcount, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":234
 *             "CFiles": self.GetCFiles,
 *             "modelcount": self.GetModelCount,
 *             "datacount": self.GetDataCount,             # <<<<<<<<<<<<<<
 *             "modelNameList": self.GetModelList,
 *             "modelTrueNameList": self.GetTrueModelList,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetDataCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 234, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_datacount, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":235
 *             "modelcount": self.GetModelCount,
 *             "datacount": self.GetDataCount,
 *             "modelNameList": self.GetModelList,             # <<<<<<<<<<<<<<
 *             "modelTrueNameList": self.GetTrueModelList,
 *             "smilesList": self.GetsmilesList,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetModelList); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 235, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_modelNameList, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":236
 *             "datacount": self.GetDataCount,
 *             "modelNameList": self.GetModelList,
 *             "modelTrueNameList": self.GetTrueModelList,             # <<<<<<<<<<<<<<
 *             "smilesList": self.GetsmilesList,
 *             "Smiles": self.Getsmiles,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetTrueModelList); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_modelTrueNameList, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":237
 *             "modelNameList": self.GetModelList,
 *             "modelTrueNameList": self.GetTrueModelList,
 *             "smilesList": self.GetsmilesList,             # <<<<<<<<<<<<<<
 *             "Smiles": self.Getsmiles,
 *             "defineMODEL": self.GetdefineMODELStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetsmilesList); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 237, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_smilesList, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":238
 *             "modelTrueNameList": self.GetTrueModelList,
 *             "smilesList": self.GetsmilesList,
 *             "Smiles": self.Getsmiles,             # <<<<<<<<<<<<<<
 *             "defineMODEL": self.GetdefineMODELStr,
 *             "defineMODELNAME" : self.GetdefineMODELNAMEStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Getsmiles); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 238, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Smiles, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":239
 *             "smilesList": self.GetsmilesList,
 *             "Smiles": self.Getsmiles,
 *             "defineMODEL": self.GetdefineMODELStr,             # <<<<<<<<<<<<<<
 *             "defineMODELNAME" : self.GetdefineMODELNAMEStr,
 *             "ModelName" : self.Getmodelname,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetdefineMODELStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 239, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_defineMODEL, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":240
 *             "Smiles": self.Getsmiles,
 *             "defineMODEL": self.GetdefineMODELStr,
 *             "defineMODELNAME" : self.GetdefineMODELNAMEStr,             # <<<<<<<<<<<<<<
 *             "ModelName" : self.Getmodelname,
 *             "Originbase": self.GetOriginBaseStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetdefineMODELNAMEStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 240, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_defineMODELNAME, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":241
 *             "defineMODEL": self.GetdefineMODELStr,
 *             "defineMODELNAME" : self.GetdefineMODELNAMEStr,
 *             "ModelName" : self.Getmodelname,             # <<<<<<<<<<<<<<
 *             "Originbase": self.GetOriginBaseStr,
 *             "Mark": self.GetMarkStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Getmodelname); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 241, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_ModelName, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":242
 *             "defineMODELNAME" : self.GetdefineMODELNAMEStr,
 *             "ModelName" : self.Getmodelname,
 *             "Originbase": self.GetOriginBaseStr,             # <<<<<<<<<<<<<<
 *             "Mark": self.GetMarkStr,
 *             "Xml": self.GetXmlStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetOriginBaseStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 242, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Originbase, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":243
 *             "ModelName" : self.Getmodelname,
 *             "Originbase": self.GetOriginBaseStr,
 *             "Mark": self.GetMarkStr,             # <<<<<<<<<<<<<<
 *             "Xml": self.GetXmlStr,
 *             "Markversion": self.GetMarkversionStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetMarkStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 243, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Mark, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":244
 *             "Originbase": self.GetOriginBaseStr,
 *             "Mark": self.GetMarkStr,
 *             "Xml": self.GetXmlStr,             # <<<<<<<<<<<<<<
 *             "Markversion": self.GetMarkversionStr,
 *             "Markdate": self.GetMarkdateStr,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetXmlStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 244, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Xml, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":245
 *             "Mark": self.GetMarkStr,
 *             "Xml": self.GetXmlStr,
 *             "Markversion": self.GetMarkversionStr,             # <<<<<<<<<<<<<<
 *             "Markdate": self.GetMarkdateStr,
 *             "Targetlist": self.GetTargetList,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetMarkversionStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 245, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Markversion, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":246
 *             "Xml": self.GetXmlStr,
 *             "Markversion": self.GetMarkversionStr,
 *             "Markdate": self.GetMarkdateStr,             # <<<<<<<<<<<<<<
 *             "Targetlist": self.GetTargetList,
 *             "0Targetlist": self.Get0TargetList,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetMarkdateStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 246, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Markdate, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":247
 *             "Markversion": self.GetMarkversionStr,
 *             "Markdate": self.GetMarkdateStr,
 *             "Targetlist": self.GetTargetList,             # <<<<<<<<<<<<<<
 *             "0Targetlist": self.Get0TargetList,
 *             "biasbasedlist": self.GetBiasBasedList,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetTargetList); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 247, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_Targetlist, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":248
 *             "Markdate": self.GetMarkdateStr,
 *             "Targetlist": self.GetTargetList,
 *             "0Targetlist": self.Get0TargetList,             # <<<<<<<<<<<<<<
 *             "biasbasedlist": self.GetBiasBasedList,
 *             "biasbasedcount": self.Getbiasbasedcount,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Get0TargetList); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 248, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_kp_u_0Targetlist, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":249
 *             "Targetlist": self.GetTargetList,
 *             "0Targetlist": self.Get0TargetList,
 *             "biasbasedlist": self.GetBiasBasedList,             # <<<<<<<<<<<<<<
 *             "biasbasedcount": self.Getbiasbasedcount,
 *             "outputsynlist": self.GetOutputSynList,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetBiasBasedList); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 249, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_biasbasedlist, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":250
 *             "0Targetlist": self.Get0TargetList,
 *             "biasbasedlist": self.GetBiasBasedList,
 *             "biasbasedcount": self.Getbiasbasedcount,             # <<<<<<<<<<<<<<
 *             "outputsynlist": self.GetOutputSynList,
 *             "outputsynCount": self.Getoutputsyncount,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Getbiasbasedcount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 250, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_biasbasedcount, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":251
 *             "biasbasedlist": self.GetBiasBasedList,
 *             "biasbasedcount": self.Getbiasbasedcount,
 *             "outputsynlist": self.GetOutputSynList,             # <<<<<<<<<<<<<<
 *             "outputsynCount": self.Getoutputsyncount,
 *             "int_indexoutput": self.GetIntIndexOutput,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetOutputSynList); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 251, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_outputsynlist, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":252
 *             "biasbasedcount": self.Getbiasbasedcount,
 *             "outputsynlist": self.GetOutputSynList,
 *             "outputsynCount": self.Getoutputsyncount,             # <<<<<<<<<<<<<<
 *             "int_indexoutput": self.GetIntIndexOutput,
 *             #"transfersingle": self.GetTransferSingle,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Getoutputsyncount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 252, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_outputsynCount, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":253
 *             "outputsynlist": self.GetOutputSynList,
 *             "outputsynCount": self.Getoutputsyncount,
 *             "int_indexoutput": self.GetIntIndexOutput,             # <<<<<<<<<<<<<<
 *             #"transfersingle": self.GetTransferSingle,
 *             #"transferprimesingle": self.GetTransferPrimeSingle,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetIntIndexOutput); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 253, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_int_indexoutput, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":256
 *             #"transfersingle": self.GetTransferSingle,
 *             #"transferprimesingle": self.GetTransferPrimeSingle,
 *             "transferlist": self.GetTransferList,             # <<<<<<<<<<<<<<
 *             "transferprimelist": self.GetTransferPrimeList,
 *             "intdecl": self.GetIntdecl,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetTransferList); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 256, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_transferlist, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":257
 *             #"transferprimesingle": self.GetTransferPrimeSingle,
 *             "transferlist": self.GetTransferList,
 *             "transferprimelist": self.GetTransferPrimeList,             # <<<<<<<<<<<<<<
 *             "intdecl": self.GetIntdecl,
 *             "real_ptrinputs": self.GetRealptrInputs,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetTransferPrimeList); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 257, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_transferprimelist, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":258
 *             "transferlist": self.GetTransferList,
 *             "transferprimelist": self.GetTransferPrimeList,
 *             "intdecl": self.GetIntdecl,             # <<<<<<<<<<<<<<
 *             "real_ptrinputs": self.GetRealptrInputs,
 *             "_inputs": self.Get_Inputs,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetIntdecl); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 258, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_intdecl, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":259
 *             "transferprimelist": self.GetTransferPrimeList,
 *             "intdecl": self.GetIntdecl,
 *             "real_ptrinputs": self.GetRealptrInputs,             # <<<<<<<<<<<<<<
 *             "_inputs": self.Get_Inputs,
 *             "realptrdecl": self.GetRealptrdecl,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetRealptrInputs); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 259, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_real_ptrinputs, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":260
 *             "intdecl": self.GetIntdecl,
 *             "real_ptrinputs": self.GetRealptrInputs,
 *             "_inputs": self.Get_Inputs,             # <<<<<<<<<<<<<<
 *             "realptrdecl": self.GetRealptrdecl,
 *             "_indexoutput": self.Get_IndexOutput,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Get_Inputs); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 260, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_inputs, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":261
 *             "real_ptrinputs": self.GetRealptrInputs,
 *             "_inputs": self.Get_Inputs,
 *             "realptrdecl": self.GetRealptrdecl,             # <<<<<<<<<<<<<<
 *             "_indexoutput": self.Get_IndexOutput,
 *             "inputNamesFullDecl": self.GetinputNamesFullDecl,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetRealptrdecl); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 261, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_realptrdecl, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":262
 *             "_inputs": self.Get_Inputs,
 *             "realptrdecl": self.GetRealptrdecl,
 *             "_indexoutput": self.Get_IndexOutput,             # <<<<<<<<<<<<<<
 *             "inputNamesFullDecl": self.GetinputNamesFullDecl,
 *             "outputNamesFullDecl": self.GetoutputNamesFullDecl,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Get_IndexOutput); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 262, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_indexoutput, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":263
 *             "realptrdecl": self.GetRealptrdecl,
 *             "_indexoutput": self.Get_IndexOutput,
 *             "inputNamesFullDecl": self.GetinputNamesFullDecl,             # <<<<<<<<<<<<<<
 *             "outputNamesFullDecl": self.GetoutputNamesFullDecl,
 *             "returnInputName": self.GetreturnInputName,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetinputNamesFullDecl); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 263, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_inputNamesFullDecl, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":264
 *             "_indexoutput": self.Get_IndexOutput,
 *             "inputNamesFullDecl": self.GetinputNamesFullDecl,
 *             "outputNamesFullDecl": self.GetoutputNamesFullDecl,             # <<<<<<<<<<<<<<
 *             "returnInputName": self.GetreturnInputName,
 *             "returnOutputName": self.GetreturnOutputName,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetoutputNamesFullDecl); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 264, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_outputNamesFullDecl, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":265
 *             "inputNamesFullDecl": self.GetinputNamesFullDecl,
 *             "outputNamesFullDecl": self.GetoutputNamesFullDecl,
 *             "returnInputName": self.GetreturnInputName,             # <<<<<<<<<<<<<<
 *             "returnOutputName": self.GetreturnOutputName,
 *             "paramfilename": self.Getparamfilename,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetreturnInputName); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 265, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_returnInputName, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":266
 *             "outputNamesFullDecl": self.GetoutputNamesFullDecl,
 *             "returnInputName": self.GetreturnInputName,
 *             "returnOutputName": self.GetreturnOutputName,             # <<<<<<<<<<<<<<
 *             "paramfilename": self.Getparamfilename,
 *             "codeversion": self.getCodeVersion,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetreturnOutputName); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 266, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_returnOutputName, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":267
 *             "returnInputName": self.GetreturnInputName,
 *             "returnOutputName": self.GetreturnOutputName,
 *             "paramfilename": self.Getparamfilename,             # <<<<<<<<<<<<<<
 *             "codeversion": self.getCodeVersion,
 *             "usecodeversion": self.getUseCodeVersion,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Getparamfilename); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 267, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_paramfilename, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":268
 *             "returnOutputName": self.GetreturnOutputName,
 *             "paramfilename": self.Getparamfilename,
 *             "codeversion": self.getCodeVersion,             # <<<<<<<<<<<<<<
 *             "usecodeversion": self.getUseCodeVersion,
 *             "dynamiclinking": self.getDynamicLinking,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_getCodeVersion); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 268, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_codeversion, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":269
 *             "paramfilename": self.Getparamfilename,
 *             "codeversion": self.getCodeVersion,
 *             "usecodeversion": self.getUseCodeVersion,             # <<<<<<<<<<<<<<
 *             "dynamiclinking": self.getDynamicLinking,
 *             "datarange": self.getDataRange,
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_getUseCodeVersion); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 269, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_usecodeversion, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":270
 *             "codeversion": self.getCodeVersion,
 *             "usecodeversion": self.getUseCodeVersion,
 *             "dynamiclinking": self.getDynamicLinking,             # <<<<<<<<<<<<<<
 *             "datarange": self.getDataRange,
 *             "trainable": self.trainableStr }
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_getDynamicLinking); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 270, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_dynamiclinking_2, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":271
 *             "usecodeversion": self.getUseCodeVersion,
 *             "dynamiclinking": self.getDynamicLinking,
 *             "datarange": self.getDataRange,             # <<<<<<<<<<<<<<
 *             "trainable": self.trainableStr }
 * 
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_getDataRange); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 271, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_datarange, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":272
 *             "dynamiclinking": self.getDynamicLinking,
 *             "datarange": self.getDataRange,
 *             "trainable": self.trainableStr }             # <<<<<<<<<<<<<<
 * 
 *     def setSource(self, source):
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_trainableStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 272, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_u_trainable, __pyx_t_2) < 0) __PYX_ERR(0, 126, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":125
 * 
 *     def setReplaceDict(self):
 *         self.ReplaceDictionary = {             # <<<<<<<<<<<<<<
 *             "PropertyValue": self.PptyValueStr,
 *             "PropertyLeverage": self.PptyLeverageStr,
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ReplaceDictionary, __pyx_t_1) < 0) __PYX_ERR(0, 125, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":124
 * 
 * 
 *     def setReplaceDict(self):             # <<<<<<<<<<<<<<
 *         self.ReplaceDictionary = {
 *             "PropertyValue": self.PptyValueStr,
 */

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.setReplaceDict", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":274
 *             "trainable": self.trainableStr }
 * 
 *     def setSource(self, source):             # <<<<<<<<<<<<<<
 *         if source is not None:
 *             self._DriverSource = source
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_5setSource(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_5setSource = {"setSource", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_5setSource, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_5setSource(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_source = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("setSource (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_source,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_source)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("setSource", 1, 2, 2, 1); __PYX_ERR(0, 274, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSource") < 0)) __PYX_ERR(0, 274, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_source = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("setSource", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 274, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.setSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_4setSource(__pyx_self, __pyx_v_self, __pyx_v_source);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_4setSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_source) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("setSource", 0);

  /* "metaphor/monal/lcode/codewriter.py":275
 * 
 *     def setSource(self, source):
 *         if source is not None:             # <<<<<<<<<<<<<<
 *             self._DriverSource = source
 *             if isinstance(source, Model):
 */
  __pyx_t_1 = (__pyx_v_source != Py_None);
  __pyx_t_2 = (__pyx_t_1 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":276
 *     def setSource(self, source):
 *         if source is not None:
 *             self._DriverSource = source             # <<<<<<<<<<<<<<
 *             if isinstance(source, Model):
 *                 self.SetNetSource(source)
 */
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource, __pyx_v_source) < 0) __PYX_ERR(0, 276, __pyx_L1_error)

    /* "metaphor/monal/lcode/codewriter.py":277
 *         if source is not None:
 *             self._DriverSource = source
 *             if isinstance(source, Model):             # <<<<<<<<<<<<<<
 *                 self.SetNetSource(source)
 *             else:
 */
    __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_Model); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 277, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_2 = PyObject_IsInstance(__pyx_v_source, __pyx_t_3); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 277, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_1 = (__pyx_t_2 != 0);
    if (__pyx_t_1) {

      /* "metaphor/monal/lcode/codewriter.py":278
 *             self._DriverSource = source
 *             if isinstance(source, Model):
 *                 self.SetNetSource(source)             # <<<<<<<<<<<<<<
 *             else:
 *                 self.SetNetSource(source.mainModel)
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetNetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 278, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_5)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      if (!__pyx_t_5) {
        __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_source); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_4)) {
          PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_source};
          __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_GOTREF(__pyx_t_3);
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
          PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_source};
          __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_GOTREF(__pyx_t_3);
        } else
        #endif
        {
          __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 278, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
          __Pyx_INCREF(__pyx_v_source);
          __Pyx_GIVEREF(__pyx_v_source);
          PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_v_source);
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

      /* "metaphor/monal/lcode/codewriter.py":277
 *         if source is not None:
 *             self._DriverSource = source
 *             if isinstance(source, Model):             # <<<<<<<<<<<<<<
 *                 self.SetNetSource(source)
 *             else:
 */
      goto __pyx_L4;
    }

    /* "metaphor/monal/lcode/codewriter.py":280
 *                 self.SetNetSource(source)
 *             else:
 *                 self.SetNetSource(source.mainModel)             # <<<<<<<<<<<<<<
 *         self.setReplaceDict()
 * 
 */
    /*else*/ {
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetNetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 280, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_mainModel); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 280, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_5)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      if (!__pyx_t_5) {
        __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 280, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_3);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_4)) {
          PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_t_6};
          __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 280, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
          PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_t_6};
          __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 280, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        } else
        #endif
        {
          __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 280, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
          __Pyx_GIVEREF(__pyx_t_6);
          PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_6);
          __pyx_t_6 = 0;
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 280, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
    __pyx_L4:;

    /* "metaphor/monal/lcode/codewriter.py":275
 * 
 *     def setSource(self, source):
 *         if source is not None:             # <<<<<<<<<<<<<<
 *             self._DriverSource = source
 *             if isinstance(source, Model):
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":281
 *             else:
 *                 self.SetNetSource(source.mainModel)
 *         self.setReplaceDict()             # <<<<<<<<<<<<<<
 * 
 *     def trainableStr(self, Indent=0):
 */
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_setReplaceDict); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 281, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_7 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
    if (likely(__pyx_t_7)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
      __Pyx_INCREF(__pyx_t_7);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_4, function);
    }
  }
  if (__pyx_t_7) {
    __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  } else {
    __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

  /* "metaphor/monal/lcode/codewriter.py":274
 *             "trainable": self.trainableStr }
 * 
 *     def setSource(self, source):             # <<<<<<<<<<<<<<
 *         if source is not None:
 *             self._DriverSource = source
 */

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.setSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":283
 *         self.setReplaceDict()
 * 
 *     def trainableStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'trainable'):
 *             return str(int(self.NetSource.trainable))
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_7trainableStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_7trainableStr = {"trainableStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_7trainableStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_7trainableStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("trainableStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trainableStr") < 0)) __PYX_ERR(0, 283, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("trainableStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 283, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.trainableStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_6trainableStr(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_6trainableStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("trainableStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":284
 * 
 *     def trainableStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'trainable'):             # <<<<<<<<<<<<<<
 *             return str(int(self.NetSource.trainable))
 *         else:
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 284, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_u_trainable); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 284, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":285
 *     def trainableStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'trainable'):
 *             return str(int(self.NetSource.trainable))             # <<<<<<<<<<<<<<
 *         else:
 *             return "0"
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 285, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_trainable); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 285, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 285, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 285, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_r = __pyx_t_4;
    __pyx_t_4 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":284
 * 
 *     def trainableStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'trainable'):             # <<<<<<<<<<<<<<
 *             return str(int(self.NetSource.trainable))
 *         else:
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":287
 *             return str(int(self.NetSource.trainable))
 *         else:
 *             return "0"             # <<<<<<<<<<<<<<
 * 
 *     def getDynamicLinking(self, Indent=0):
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_kp_u_0);
    __pyx_r = __pyx_kp_u_0;
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":283
 *         self.setReplaceDict()
 * 
 *     def trainableStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'trainable'):
 *             return str(int(self.NetSource.trainable))
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.trainableStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":289
 *             return "0"
 * 
 *     def getDynamicLinking(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(int(self.dynamiclinking))
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_9getDynamicLinking(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_9getDynamicLinking = {"getDynamicLinking", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_9getDynamicLinking, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_9getDynamicLinking(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("getDynamicLinking (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getDynamicLinking") < 0)) __PYX_ERR(0, 289, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("getDynamicLinking", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 289, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getDynamicLinking", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_8getDynamicLinking(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_8getDynamicLinking(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("getDynamicLinking", 0);

  /* "metaphor/monal/lcode/codewriter.py":290
 * 
 *     def getDynamicLinking(self, Indent=0):
 *         return str(int(self.dynamiclinking))             # <<<<<<<<<<<<<<
 * 
 *     def getCodeVersion(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dynamiclinking_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 290, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyNumber_Int(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 290, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 290, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":289
 *             return "0"
 * 
 *     def getDynamicLinking(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(int(self.dynamiclinking))
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getDynamicLinking", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":292
 *         return str(int(self.dynamiclinking))
 * 
 *     def getCodeVersion(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(CC.__version__)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_11getCodeVersion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_11getCodeVersion = {"getCodeVersion", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_11getCodeVersion, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_11getCodeVersion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("getCodeVersion (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getCodeVersion") < 0)) __PYX_ERR(0, 292, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("getCodeVersion", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 292, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getCodeVersion", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_10getCodeVersion(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_10getCodeVersion(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("getCodeVersion", 0);

  /* "metaphor/monal/lcode/codewriter.py":293
 * 
 *     def getCodeVersion(self, Indent=0):
 *         return str(CC.__version__)             # <<<<<<<<<<<<<<
 * 
 *     def getDataRange(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 293, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_version); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 293, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 293, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":292
 *         return str(int(self.dynamiclinking))
 * 
 *     def getCodeVersion(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(CC.__version__)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getCodeVersion", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":295
 *         return str(CC.__version__)
 * 
 *     def getDataRange(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "datarange"):
 *             return str(self.NetSource.datarange)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_13getDataRange(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_13getDataRange = {"getDataRange", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_13getDataRange, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_13getDataRange(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("getDataRange (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getDataRange") < 0)) __PYX_ERR(0, 295, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("getDataRange", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 295, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getDataRange", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_12getDataRange(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_12getDataRange(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("getDataRange", 0);

  /* "metaphor/monal/lcode/codewriter.py":296
 * 
 *     def getDataRange(self, Indent=0):
 *         if hasattr(self.NetSource, "datarange"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.datarange)
 *         return ""
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 296, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_u_datarange); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 296, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":297
 *     def getDataRange(self, Indent=0):
 *         if hasattr(self.NetSource, "datarange"):
 *             return str(self.NetSource.datarange)             # <<<<<<<<<<<<<<
 *         return ""
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 297, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_datarange); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 297, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 297, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_r = __pyx_t_1;
    __pyx_t_1 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":296
 * 
 *     def getDataRange(self, Indent=0):
 *         if hasattr(self.NetSource, "datarange"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.datarange)
 *         return ""
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":298
 *         if hasattr(self.NetSource, "datarange"):
 *             return str(self.NetSource.datarange)
 *         return ""             # <<<<<<<<<<<<<<
 * 
 *     def getUseCodeVersion(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":295
 *         return str(CC.__version__)
 * 
 *     def getDataRange(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "datarange"):
 *             return str(self.NetSource.datarange)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getDataRange", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":300
 *         return ""
 * 
 *     def getUseCodeVersion(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(CC.__useversion__)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_15getUseCodeVersion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_15getUseCodeVersion = {"getUseCodeVersion", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_15getUseCodeVersion, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_15getUseCodeVersion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("getUseCodeVersion (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getUseCodeVersion") < 0)) __PYX_ERR(0, 300, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("getUseCodeVersion", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 300, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getUseCodeVersion", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_14getUseCodeVersion(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_14getUseCodeVersion(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("getUseCodeVersion", 0);

  /* "metaphor/monal/lcode/codewriter.py":301
 * 
 *     def getUseCodeVersion(self, Indent=0):
 *         return str(CC.__useversion__)             # <<<<<<<<<<<<<<
 * 
 *     def GetOriginBaseStr(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 301, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_useversion); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 301, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 301, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":300
 *         return ""
 * 
 *     def getUseCodeVersion(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(CC.__useversion__)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getUseCodeVersion", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":303
 *         return str(CC.__useversion__)
 * 
 *     def GetOriginBaseStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "originbase"):
 *             return str(self.NetSource.originbase)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_17GetOriginBaseStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_17GetOriginBaseStr = {"GetOriginBaseStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_17GetOriginBaseStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_17GetOriginBaseStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetOriginBaseStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetOriginBaseStr") < 0)) __PYX_ERR(0, 303, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetOriginBaseStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 303, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOriginBaseStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_16GetOriginBaseStr(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_16GetOriginBaseStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("GetOriginBaseStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":304
 * 
 *     def GetOriginBaseStr(self, Indent=0):
 *         if hasattr(self.NetSource, "originbase"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.originbase)
 *         return ""
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 304, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_u_originbase); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 304, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":305
 *     def GetOriginBaseStr(self, Indent=0):
 *         if hasattr(self.NetSource, "originbase"):
 *             return str(self.NetSource.originbase)             # <<<<<<<<<<<<<<
 *         return ""
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 305, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_originbase); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 305, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 305, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_r = __pyx_t_1;
    __pyx_t_1 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":304
 * 
 *     def GetOriginBaseStr(self, Indent=0):
 *         if hasattr(self.NetSource, "originbase"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.originbase)
 *         return ""
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":306
 *         if hasattr(self.NetSource, "originbase"):
 *             return str(self.NetSource.originbase)
 *         return ""             # <<<<<<<<<<<<<<
 * 
 *     def GetXmlStr(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":303
 *         return str(CC.__useversion__)
 * 
 *     def GetOriginBaseStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "originbase"):
 *             return str(self.NetSource.originbase)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOriginBaseStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":308
 *         return ""
 * 
 *     def GetXmlStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'xml'):
 *             st = codequote(self.NetSource.xml())
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_19GetXmlStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_19GetXmlStr = {"GetXmlStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_19GetXmlStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_19GetXmlStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetXmlStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetXmlStr") < 0)) __PYX_ERR(0, 308, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetXmlStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 308, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetXmlStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_18GetXmlStr(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_18GetXmlStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_v_st = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("GetXmlStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":309
 * 
 *     def GetXmlStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'xml'):             # <<<<<<<<<<<<<<
 *             st = codequote(self.NetSource.xml())
 *             st = addendofline(st)
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 309, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_u_xml); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 309, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":310
 *     def GetXmlStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'xml'):
 *             st = codequote(self.NetSource.xml())             # <<<<<<<<<<<<<<
 *             st = addendofline(st)
 *             return st
 */
    __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_codequote); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 310, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 310, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_xml); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 310, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_7, function);
      }
    }
    if (__pyx_t_6) {
      __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 310, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    } else {
      __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 310, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __pyx_t_7 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_7)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_7);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_7) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 310, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_5};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 310, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_5};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 310, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      } else
      #endif
      {
        __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 310, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL;
        __Pyx_GIVEREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 310, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_v_st = __pyx_t_1;
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":311
 *         if hasattr(self.NetSource, 'xml'):
 *             st = codequote(self.NetSource.xml())
 *             st = addendofline(st)             # <<<<<<<<<<<<<<
 *             return st
 *         return ""
 */
    __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_addendofline); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 311, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_st); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 311, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_v_st};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 311, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_v_st};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 311, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      {
        __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 311, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_INCREF(__pyx_v_st);
        __Pyx_GIVEREF(__pyx_v_st);
        PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_v_st);
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 311, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF_SET(__pyx_v_st, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":312
 *             st = codequote(self.NetSource.xml())
 *             st = addendofline(st)
 *             return st             # <<<<<<<<<<<<<<
 *         return ""
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_v_st);
    __pyx_r = __pyx_v_st;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":309
 * 
 *     def GetXmlStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'xml'):             # <<<<<<<<<<<<<<
 *             st = codequote(self.NetSource.xml())
 *             st = addendofline(st)
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":313
 *             st = addendofline(st)
 *             return st
 *         return ""             # <<<<<<<<<<<<<<
 * 
 *     def GetMarkStr(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":308
 *         return ""
 * 
 *     def GetXmlStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'xml'):
 *             st = codequote(self.NetSource.xml())
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetXmlStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_st);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":315
 *         return ""
 * 
 *     def GetMarkStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "mark"):
 *             return str(self.NetSource.mark)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_21GetMarkStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_21GetMarkStr = {"GetMarkStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_21GetMarkStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_21GetMarkStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetMarkStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetMarkStr") < 0)) __PYX_ERR(0, 315, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetMarkStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 315, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMarkStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_20GetMarkStr(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_20GetMarkStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("GetMarkStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":316
 * 
 *     def GetMarkStr(self, Indent=0):
 *         if hasattr(self.NetSource, "mark"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.mark)
 *         return ""
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 316, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_u_mark); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 316, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":317
 *     def GetMarkStr(self, Indent=0):
 *         if hasattr(self.NetSource, "mark"):
 *             return str(self.NetSource.mark)             # <<<<<<<<<<<<<<
 *         return ""
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 317, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_mark); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 317, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 317, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_r = __pyx_t_1;
    __pyx_t_1 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":316
 * 
 *     def GetMarkStr(self, Indent=0):
 *         if hasattr(self.NetSource, "mark"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.mark)
 *         return ""
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":318
 *         if hasattr(self.NetSource, "mark"):
 *             return str(self.NetSource.mark)
 *         return ""             # <<<<<<<<<<<<<<
 * 
 *     def GetMarkversionStr(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":315
 *         return ""
 * 
 *     def GetMarkStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "mark"):
 *             return str(self.NetSource.mark)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMarkStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":320
 *         return ""
 * 
 *     def GetMarkversionStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "markversion"):
 *             return str(self.NetSource.markversion)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_23GetMarkversionStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_23GetMarkversionStr = {"GetMarkversionStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_23GetMarkversionStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_23GetMarkversionStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetMarkversionStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetMarkversionStr") < 0)) __PYX_ERR(0, 320, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetMarkversionStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 320, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMarkversionStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_22GetMarkversionStr(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_22GetMarkversionStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("GetMarkversionStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":321
 * 
 *     def GetMarkversionStr(self, Indent=0):
 *         if hasattr(self.NetSource, "markversion"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.markversion)
 *         return ""
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 321, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_u_markversion); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 321, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":322
 *     def GetMarkversionStr(self, Indent=0):
 *         if hasattr(self.NetSource, "markversion"):
 *             return str(self.NetSource.markversion)             # <<<<<<<<<<<<<<
 *         return ""
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 322, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_markversion); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 322, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 322, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_r = __pyx_t_1;
    __pyx_t_1 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":321
 * 
 *     def GetMarkversionStr(self, Indent=0):
 *         if hasattr(self.NetSource, "markversion"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.markversion)
 *         return ""
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":323
 *         if hasattr(self.NetSource, "markversion"):
 *             return str(self.NetSource.markversion)
 *         return ""             # <<<<<<<<<<<<<<
 * 
 *     def GetMarkdateStr(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":320
 *         return ""
 * 
 *     def GetMarkversionStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "markversion"):
 *             return str(self.NetSource.markversion)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMarkversionStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":325
 *         return ""
 * 
 *     def GetMarkdateStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'date'):
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_25GetMarkdateStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_25GetMarkdateStr = {"GetMarkdateStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_25GetMarkdateStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_25GetMarkdateStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetMarkdateStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetMarkdateStr") < 0)) __PYX_ERR(0, 325, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetMarkdateStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 325, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMarkdateStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_24GetMarkdateStr(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_24GetMarkdateStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("GetMarkdateStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":326
 * 
 *     def GetMarkdateStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'date'):             # <<<<<<<<<<<<<<
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")
 *         if hasattr(self.NetSource, "markdate"):
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 326, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_u_date); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 326, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":327
 *     def GetMarkdateStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'date'):
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "markdate"):
 *             return str(self.NetSource.markdate)
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 327, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_date); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 327, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_strftime); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 327, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 327, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_r = __pyx_t_4;
    __pyx_t_4 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":326
 * 
 *     def GetMarkdateStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'date'):             # <<<<<<<<<<<<<<
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")
 *         if hasattr(self.NetSource, "markdate"):
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":328
 *         if hasattr(self.NetSource, 'date'):
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")
 *         if hasattr(self.NetSource, "markdate"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.markdate)
 *         if hasattr(self.NetSource, "created"):
 */
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 328, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_3 = __Pyx_HasAttr(__pyx_t_4, __pyx_n_u_markdate); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 328, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_2 = (__pyx_t_3 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":329
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")
 *         if hasattr(self.NetSource, "markdate"):
 *             return str(self.NetSource.markdate)             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "created"):
 *             return str(self.NetSource.created)
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 329, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_markdate); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 329, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 329, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_r = __pyx_t_4;
    __pyx_t_4 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":328
 *         if hasattr(self.NetSource, 'date'):
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")
 *         if hasattr(self.NetSource, "markdate"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.markdate)
 *         if hasattr(self.NetSource, "created"):
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":330
 *         if hasattr(self.NetSource, "markdate"):
 *             return str(self.NetSource.markdate)
 *         if hasattr(self.NetSource, "created"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.created)
 *         return ""
 */
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 330, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_2 = __Pyx_HasAttr(__pyx_t_4, __pyx_n_u_created); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 330, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":331
 *             return str(self.NetSource.markdate)
 *         if hasattr(self.NetSource, "created"):
 *             return str(self.NetSource.created)             # <<<<<<<<<<<<<<
 *         return ""
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 331, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_created); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 331, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 331, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_r = __pyx_t_4;
    __pyx_t_4 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":330
 *         if hasattr(self.NetSource, "markdate"):
 *             return str(self.NetSource.markdate)
 *         if hasattr(self.NetSource, "created"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.created)
 *         return ""
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":332
 *         if hasattr(self.NetSource, "created"):
 *             return str(self.NetSource.created)
 *         return ""             # <<<<<<<<<<<<<<
 * 
 *     def GetHiddenStr(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":325
 *         return ""
 * 
 *     def GetMarkdateStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'date'):
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMarkdateStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":334
 *         return ""
 * 
 *     def GetHiddenStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "hidden"):
 *             return str(self.NetSource.hidden)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_27GetHiddenStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_27GetHiddenStr = {"GetHiddenStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_27GetHiddenStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_27GetHiddenStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetHiddenStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetHiddenStr") < 0)) __PYX_ERR(0, 334, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetHiddenStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 334, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetHiddenStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_26GetHiddenStr(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_26GetHiddenStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("GetHiddenStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":335
 * 
 *     def GetHiddenStr(self, Indent=0):
 *         if hasattr(self.NetSource, "hidden"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.hidden)
 *         if hasattr(self.NetSource, "hiddenCount"):
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 335, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_u_hidden); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 335, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":336
 *     def GetHiddenStr(self, Indent=0):
 *         if hasattr(self.NetSource, "hidden"):
 *             return str(self.NetSource.hidden)             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "hiddenCount"):
 *             return str(self.NetSource.hiddenCount)
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 336, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_hidden); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 336, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 336, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_r = __pyx_t_1;
    __pyx_t_1 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":335
 * 
 *     def GetHiddenStr(self, Indent=0):
 *         if hasattr(self.NetSource, "hidden"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.hidden)
 *         if hasattr(self.NetSource, "hiddenCount"):
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":337
 *         if hasattr(self.NetSource, "hidden"):
 *             return str(self.NetSource.hidden)
 *         if hasattr(self.NetSource, "hiddenCount"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.hiddenCount)
 *         return ""
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 337, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_u_hiddenCount); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 337, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_2 = (__pyx_t_3 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":338
 *             return str(self.NetSource.hidden)
 *         if hasattr(self.NetSource, "hiddenCount"):
 *             return str(self.NetSource.hiddenCount)             # <<<<<<<<<<<<<<
 *         return ""
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 338, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_hiddenCount); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 338, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 338, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_r = __pyx_t_1;
    __pyx_t_1 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":337
 *         if hasattr(self.NetSource, "hidden"):
 *             return str(self.NetSource.hidden)
 *         if hasattr(self.NetSource, "hiddenCount"):             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.hiddenCount)
 *         return ""
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":339
 *         if hasattr(self.NetSource, "hiddenCount"):
 *             return str(self.NetSource.hiddenCount)
 *         return ""             # <<<<<<<<<<<<<<
 * 
 *     def setCurrentFileTypes(self, atype=-1, aincluded=-1):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":334
 *         return ""
 * 
 *     def GetHiddenStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "hidden"):
 *             return str(self.NetSource.hidden)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetHiddenStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":341
 *         return ""
 * 
 *     def setCurrentFileTypes(self, atype=-1, aincluded=-1):             # <<<<<<<<<<<<<<
 *         if atype >= 0:
 *             self.CurrentFunctionType = atype
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_29setCurrentFileTypes(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_29setCurrentFileTypes = {"setCurrentFileTypes", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_29setCurrentFileTypes, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_29setCurrentFileTypes(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_atype = 0;
  PyObject *__pyx_v_aincluded = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("setCurrentFileTypes (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_atype,&__pyx_n_s_aincluded,0};
    PyObject* values[3] = {0,0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_neg_1));
    values[2] = ((PyObject *)((PyObject *)__pyx_int_neg_1));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_atype);
          if (value) { values[1] = value; kw_args--; }
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_aincluded);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCurrentFileTypes") < 0)) __PYX_ERR(0, 341, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_atype = values[1];
    __pyx_v_aincluded = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("setCurrentFileTypes", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 341, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.setCurrentFileTypes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_28setCurrentFileTypes(__pyx_self, __pyx_v_self, __pyx_v_atype, __pyx_v_aincluded);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_28setCurrentFileTypes(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_atype, PyObject *__pyx_v_aincluded) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("setCurrentFileTypes", 0);

  /* "metaphor/monal/lcode/codewriter.py":342
 * 
 *     def setCurrentFileTypes(self, atype=-1, aincluded=-1):
 *         if atype >= 0:             # <<<<<<<<<<<<<<
 *             self.CurrentFunctionType = atype
 *         if aincluded >= 0:
 */
  __pyx_t_1 = PyObject_RichCompare(__pyx_v_atype, __pyx_int_0, Py_GE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 342, __pyx_L1_error)
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 342, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":343
 *     def setCurrentFileTypes(self, atype=-1, aincluded=-1):
 *         if atype >= 0:
 *             self.CurrentFunctionType = atype             # <<<<<<<<<<<<<<
 *         if aincluded >= 0:
 *             self.CurrentHeader = aincluded
 */
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_CurrentFunctionType_2, __pyx_v_atype) < 0) __PYX_ERR(0, 343, __pyx_L1_error)

    /* "metaphor/monal/lcode/codewriter.py":342
 * 
 *     def setCurrentFileTypes(self, atype=-1, aincluded=-1):
 *         if atype >= 0:             # <<<<<<<<<<<<<<
 *             self.CurrentFunctionType = atype
 *         if aincluded >= 0:
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":344
 *         if atype >= 0:
 *             self.CurrentFunctionType = atype
 *         if aincluded >= 0:             # <<<<<<<<<<<<<<
 *             self.CurrentHeader = aincluded
 *         self.FileName = self.CurrentCodeFileName()
 */
  __pyx_t_1 = PyObject_RichCompare(__pyx_v_aincluded, __pyx_int_0, Py_GE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 344, __pyx_L1_error)
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 344, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":345
 *             self.CurrentFunctionType = atype
 *         if aincluded >= 0:
 *             self.CurrentHeader = aincluded             # <<<<<<<<<<<<<<
 *         self.FileName = self.CurrentCodeFileName()
 * 
 */
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_CurrentHeader_2, __pyx_v_aincluded) < 0) __PYX_ERR(0, 345, __pyx_L1_error)

    /* "metaphor/monal/lcode/codewriter.py":344
 *         if atype >= 0:
 *             self.CurrentFunctionType = atype
 *         if aincluded >= 0:             # <<<<<<<<<<<<<<
 *             self.CurrentHeader = aincluded
 *         self.FileName = self.CurrentCodeFileName()
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":346
 *         if aincluded >= 0:
 *             self.CurrentHeader = aincluded
 *         self.FileName = self.CurrentCodeFileName()             # <<<<<<<<<<<<<<
 * 
 *     def  TouslesNoms(self):
 */
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentCodeFileName); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 346, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
    if (likely(__pyx_t_4)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_3, function);
    }
  }
  if (__pyx_t_4) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 346, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 346, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_FileName_2, __pyx_t_1) < 0) __PYX_ERR(0, 346, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":341
 *         return ""
 * 
 *     def setCurrentFileTypes(self, atype=-1, aincluded=-1):             # <<<<<<<<<<<<<<
 *         if atype >= 0:
 *             self.CurrentFunctionType = atype
 */

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.setCurrentFileTypes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":348
 *         self.FileName = self.CurrentCodeFileName()
 * 
 *     def  TouslesNoms(self):             # <<<<<<<<<<<<<<
 *         self._NomFonction = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFGradient = CC.st_InDev + ' codeWriter' #+ Classname
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_31TouslesNoms(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_31TouslesNoms = {"TouslesNoms", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_31TouslesNoms, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_31TouslesNoms(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("TouslesNoms (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_30TouslesNoms(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_30TouslesNoms(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  __Pyx_RefNannySetupContext("TouslesNoms", 0);

  /* "metaphor/monal/lcode/codewriter.py":349
 * 
 *     def  TouslesNoms(self):
 *         self._NomFonction = CC.st_InDev + ' codeWriter' #+ Classname             # <<<<<<<<<<<<<<
 *         self._NomFGradient = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFGradientCall = CC.st_InDev + ' codeWriter' #+ Classname
 */
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 349, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_st_InDev); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 349, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_kp_u_codeWriter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 349, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFonction, __pyx_t_1) < 0) __PYX_ERR(0, 349, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":350
 *     def  TouslesNoms(self):
 *         self._NomFonction = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFGradient = CC.st_InDev + ' codeWriter' #+ Classname             # <<<<<<<<<<<<<<
 *         self._NomFGradientCall = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFTransfer = CC.st_InDev + ' codeWriter' #+ Classname
 */
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 350, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_st_InDev); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 350, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_kp_u_codeWriter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 350, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFGradient, __pyx_t_1) < 0) __PYX_ERR(0, 350, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":351
 *         self._NomFonction = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFGradient = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFGradientCall = CC.st_InDev + ' codeWriter' #+ Classname             # <<<<<<<<<<<<<<
 *         self._NomFTransfer = CC.st_InDev + ' codeWriter' #+ Classname
 *         if self.NetSource.paramCount:
 */
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 351, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_st_InDev); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 351, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_kp_u_codeWriter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 351, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFGradientCall, __pyx_t_1) < 0) __PYX_ERR(0, 351, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":352
 *         self._NomFGradient = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFGradientCall = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFTransfer = CC.st_InDev + ' codeWriter' #+ Classname             # <<<<<<<<<<<<<<
 *         if self.NetSource.paramCount:
 *             #if self.FullCode:
 */
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 352, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_st_InDev); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 352, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_kp_u_codeWriter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 352, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFTransfer, __pyx_t_1) < 0) __PYX_ERR(0, 352, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":353
 *         self._NomFGradientCall = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFTransfer = CC.st_InDev + ' codeWriter' #+ Classname
 *         if self.NetSource.paramCount:             # <<<<<<<<<<<<<<
 *             #if self.FullCode:
 *             self._Weight = CC.StWeightIni
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 353, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_paramCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 353, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 353, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":355
 *         if self.NetSource.paramCount:
 *             #if self.FullCode:
 *             self._Weight = CC.StWeightIni             # <<<<<<<<<<<<<<
 *             self._WeightRedir = CC.StWeightRedirIni
 *             #else:
 */
    __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 355, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_StWeightIni); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 355, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_Weight, __pyx_t_1) < 0) __PYX_ERR(0, 355, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":356
 *             #if self.FullCode:
 *             self._Weight = CC.StWeightIni
 *             self._WeightRedir = CC.StWeightRedirIni             # <<<<<<<<<<<<<<
 *             #else:
 *             #    self.Weight = self.NetName + CC.StWeightIni
 */
    __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 356, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_StWeightRedirIni); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 356, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_WeightRedir, __pyx_t_2) < 0) __PYX_ERR(0, 356, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":353
 *         self._NomFGradientCall = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFTransfer = CC.st_InDev + ' codeWriter' #+ Classname
 *         if self.NetSource.paramCount:             # <<<<<<<<<<<<<<
 *             #if self.FullCode:
 *             self._Weight = CC.StWeightIni
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":361
 *             #    self.WeightRedir = self.NetName + CC.StWeightRedirIni
 *         else:
 *             self._Weight = ''             # <<<<<<<<<<<<<<
 *             self._WeightRedir = ''
 *         if self.WithMatrix:
 */
  /*else*/ {
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_Weight, __pyx_kp_u_) < 0) __PYX_ERR(0, 361, __pyx_L1_error)

    /* "metaphor/monal/lcode/codewriter.py":362
 *         else:
 *             self._Weight = ''
 *             self._WeightRedir = ''             # <<<<<<<<<<<<<<
 *         if self.WithMatrix:
 *             self.Matrix = self.NetName + CC.StMatrixIni
 */
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_WeightRedir, __pyx_kp_u_) < 0) __PYX_ERR(0, 362, __pyx_L1_error)
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":363
 *             self._Weight = ''
 *             self._WeightRedir = ''
 *         if self.WithMatrix:             # <<<<<<<<<<<<<<
 *             self.Matrix = self.NetName + CC.StMatrixIni
 *         else:
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_WithMatrix); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 363, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 363, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":364
 *             self._WeightRedir = ''
 *         if self.WithMatrix:
 *             self.Matrix = self.NetName + CC.StMatrixIni             # <<<<<<<<<<<<<<
 *         else:
 *             self.Matrix = ''
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 364, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 364, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_StMatrixIni); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 364, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 364, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_Matrix_2, __pyx_t_1) < 0) __PYX_ERR(0, 364, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":363
 *             self._Weight = ''
 *             self._WeightRedir = ''
 *         if self.WithMatrix:             # <<<<<<<<<<<<<<
 *             self.Matrix = self.NetName + CC.StMatrixIni
 *         else:
 */
    goto __pyx_L4;
  }

  /* "metaphor/monal/lcode/codewriter.py":366
 *             self.Matrix = self.NetName + CC.StMatrixIni
 *         else:
 *             self.Matrix = ''             # <<<<<<<<<<<<<<
 *         self.WeightDecl = self.NetName + CC.StWeightIniS %(self.NetName)
 *         self.MinDecl = self.NetName + CC.StMinIniS %(self.NetName, self.NetName)
 */
  /*else*/ {
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_Matrix_2, __pyx_kp_u_) < 0) __PYX_ERR(0, 366, __pyx_L1_error)
  }
  __pyx_L4:;

  /* "metaphor/monal/lcode/codewriter.py":367
 *         else:
 *             self.Matrix = ''
 *         self.WeightDecl = self.NetName + CC.StWeightIniS %(self.NetName)             # <<<<<<<<<<<<<<
 *         self.MinDecl = self.NetName + CC.StMinIniS %(self.NetName, self.NetName)
 *         self.MaxDecl = self.NetName + CC.StMaxIniS %(self.NetName, self.NetName)
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 367, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 367, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_StWeightIniS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 367, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 367, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = PyNumber_Remainder(__pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 367, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = PyNumber_Add(__pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 367, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_WeightDecl_2, __pyx_t_4) < 0) __PYX_ERR(0, 367, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":368
 *             self.Matrix = ''
 *         self.WeightDecl = self.NetName + CC.StWeightIniS %(self.NetName)
 *         self.MinDecl = self.NetName + CC.StMinIniS %(self.NetName, self.NetName)             # <<<<<<<<<<<<<<
 *         self.MaxDecl = self.NetName + CC.StMaxIniS %(self.NetName, self.NetName)
 *         self.StdDevDecl = self.NetName + CC.StStdDEvInis %(self.NetName)
 */
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_StMinIniS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_GIVEREF(__pyx_t_5);
  PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5);
  __Pyx_GIVEREF(__pyx_t_2);
  PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_2);
  __pyx_t_5 = 0;
  __pyx_t_2 = 0;
  __pyx_t_2 = PyNumber_Remainder(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = PyNumber_Add(__pyx_t_4, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 368, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_MinDecl_2, __pyx_t_6) < 0) __PYX_ERR(0, 368, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

  /* "metaphor/monal/lcode/codewriter.py":369
 *         self.WeightDecl = self.NetName + CC.StWeightIniS %(self.NetName)
 *         self.MinDecl = self.NetName + CC.StMinIniS %(self.NetName, self.NetName)
 *         self.MaxDecl = self.NetName + CC.StMaxIniS %(self.NetName, self.NetName)             # <<<<<<<<<<<<<<
 *         self.StdDevDecl = self.NetName + CC.StStdDEvInis %(self.NetName)
 *         self.MatDecl = self.NetName + CC.StMatIniS %(self.NetName)
 */
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_StMaxIniS); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_GIVEREF(__pyx_t_2);
  PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_1);
  PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1);
  __pyx_t_2 = 0;
  __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Remainder(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 369, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_MaxDecl_2, __pyx_t_5) < 0) __PYX_ERR(0, 369, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

  /* "metaphor/monal/lcode/codewriter.py":370
 *         self.MinDecl = self.NetName + CC.StMinIniS %(self.NetName, self.NetName)
 *         self.MaxDecl = self.NetName + CC.StMaxIniS %(self.NetName, self.NetName)
 *         self.StdDevDecl = self.NetName + CC.StStdDEvInis %(self.NetName)             # <<<<<<<<<<<<<<
 *         self.MatDecl = self.NetName + CC.StMatIniS %(self.NetName)
 *         self.ForAllOutputs = CC.StForAllOutputs %(self.NetName)
 */
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 370, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 370, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_StStdDEvInis); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 370, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 370, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_4 = PyNumber_Remainder(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 370, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 370, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_StdDevDecl_2, __pyx_t_1) < 0) __PYX_ERR(0, 370, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":371
 *         self.MaxDecl = self.NetName + CC.StMaxIniS %(self.NetName, self.NetName)
 *         self.StdDevDecl = self.NetName + CC.StStdDEvInis %(self.NetName)
 *         self.MatDecl = self.NetName + CC.StMatIniS %(self.NetName)             # <<<<<<<<<<<<<<
 *         self.ForAllOutputs = CC.StForAllOutputs %(self.NetName)
 *         if self.NetworkKind == CC.nkStat:
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 371, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 371, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_StMatIniS); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 371, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 371, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = PyNumber_Remainder(__pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 371, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 371, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_MatDecl_2, __pyx_t_4) < 0) __PYX_ERR(0, 371, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":372
 *         self.StdDevDecl = self.NetName + CC.StStdDEvInis %(self.NetName)
 *         self.MatDecl = self.NetName + CC.StMatIniS %(self.NetName)
 *         self.ForAllOutputs = CC.StForAllOutputs %(self.NetName)             # <<<<<<<<<<<<<<
 *         if self.NetworkKind == CC.nkStat:
 *             self.NomFonction = CC.StTransferStat %(self.NetName)
 */
  __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 372, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_StForAllOutputs); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 372, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 372, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_1 = PyNumber_Remainder(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 372, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ForAllOutputs_2, __pyx_t_1) < 0) __PYX_ERR(0, 372, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":373
 *         self.MatDecl = self.NetName + CC.StMatIniS %(self.NetName)
 *         self.ForAllOutputs = CC.StForAllOutputs %(self.NetName)
 *         if self.NetworkKind == CC.nkStat:             # <<<<<<<<<<<<<<
 *             self.NomFonction = CC.StTransferStat %(self.NetName)
 *             self.NomFGradient = CC.StTransGradStat %(self.NetName)
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetworkKind); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 373, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 373, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_nkStat); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 373, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = PyObject_RichCompare(__pyx_t_1, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 373, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 373, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":374
 *         self.ForAllOutputs = CC.StForAllOutputs %(self.NetName)
 *         if self.NetworkKind == CC.nkStat:
 *             self.NomFonction = CC.StTransferStat %(self.NetName)             # <<<<<<<<<<<<<<
 *             self.NomFGradient = CC.StTransGradStat %(self.NetName)
 *             self.NomFGradientCall = CC.StTransGradStatCall %(self.NetName)
 */
    __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 374, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_StTransferStat); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 374, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 374, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_1 = PyNumber_Remainder(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 374, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFonction_2, __pyx_t_1) < 0) __PYX_ERR(0, 374, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":375
 *         if self.NetworkKind == CC.nkStat:
 *             self.NomFonction = CC.StTransferStat %(self.NetName)
 *             self.NomFGradient = CC.StTransGradStat %(self.NetName)             # <<<<<<<<<<<<<<
 *             self.NomFGradientCall = CC.StTransGradStatCall %(self.NetName)
 *             self.NomFTransfer = CC.StTransferStat2 %(self.NetName)
 */
    __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_StTransGradStat); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_6 = PyNumber_Remainder(__pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFGradient_2, __pyx_t_6) < 0) __PYX_ERR(0, 375, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":376
 *             self.NomFonction = CC.StTransferStat %(self.NetName)
 *             self.NomFGradient = CC.StTransGradStat %(self.NetName)
 *             self.NomFGradientCall = CC.StTransGradStatCall %(self.NetName)             # <<<<<<<<<<<<<<
 *             self.NomFTransfer = CC.StTransferStat2 %(self.NetName)
 *         elif self.NetworkKind == CC.nkDyn:
 */
    __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 376, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_StTransGradStatCall); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 376, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 376, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = PyNumber_Remainder(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 376, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFGradientCall_2, __pyx_t_4) < 0) __PYX_ERR(0, 376, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":377
 *             self.NomFGradient = CC.StTransGradStat %(self.NetName)
 *             self.NomFGradientCall = CC.StTransGradStatCall %(self.NetName)
 *             self.NomFTransfer = CC.StTransferStat2 %(self.NetName)             # <<<<<<<<<<<<<<
 *         elif self.NetworkKind == CC.nkDyn:
 *             self.NomFonction = CC.StTransferDyn %(self.NetName)
 */
    __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 377, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_StTransferStat2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 377, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 377, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_1 = PyNumber_Remainder(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 377, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFTransfer_2, __pyx_t_1) < 0) __PYX_ERR(0, 377, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":373
 *         self.MatDecl = self.NetName + CC.StMatIniS %(self.NetName)
 *         self.ForAllOutputs = CC.StForAllOutputs %(self.NetName)
 *         if self.NetworkKind == CC.nkStat:             # <<<<<<<<<<<<<<
 *             self.NomFonction = CC.StTransferStat %(self.NetName)
 *             self.NomFGradient = CC.StTransGradStat %(self.NetName)
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":378
 *             self.NomFGradientCall = CC.StTransGradStatCall %(self.NetName)
 *             self.NomFTransfer = CC.StTransferStat2 %(self.NetName)
 *         elif self.NetworkKind == CC.nkDyn:             # <<<<<<<<<<<<<<
 *             self.NomFonction = CC.StTransferDyn %(self.NetName)
 *             self.NomFGradient = CC.StTransGradDyn %(self.NetName)
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetworkKind); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 378, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 378, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_nkDyn); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 378, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = PyObject_RichCompare(__pyx_t_1, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 378, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 378, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":379
 *             self.NomFTransfer = CC.StTransferStat2 %(self.NetName)
 *         elif self.NetworkKind == CC.nkDyn:
 *             self.NomFonction = CC.StTransferDyn %(self.NetName)             # <<<<<<<<<<<<<<
 *             self.NomFGradient = CC.StTransGradDyn %(self.NetName)
 *             self.NomFGradientCall = CC.StTransGradDynCall %(self.NetName)
 */
    __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 379, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_StTransferDyn); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 379, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 379, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_1 = PyNumber_Remainder(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 379, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFonction_2, __pyx_t_1) < 0) __PYX_ERR(0, 379, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":380
 *         elif self.NetworkKind == CC.nkDyn:
 *             self.NomFonction = CC.StTransferDyn %(self.NetName)
 *             self.NomFGradient = CC.StTransGradDyn %(self.NetName)             # <<<<<<<<<<<<<<
 *             self.NomFGradientCall = CC.StTransGradDynCall %(self.NetName)
 *             self.NomFTransfer = CC.StTransferDyn2 %(self.NetName)
 */
    __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 380, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_StTransGradDyn); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 380, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 380, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_6 = PyNumber_Remainder(__pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 380, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFGradient_2, __pyx_t_6) < 0) __PYX_ERR(0, 380, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":381
 *             self.NomFonction = CC.StTransferDyn %(self.NetName)
 *             self.NomFGradient = CC.StTransGradDyn %(self.NetName)
 *             self.NomFGradientCall = CC.StTransGradDynCall %(self.NetName)             # <<<<<<<<<<<<<<
 *             self.NomFTransfer = CC.StTransferDyn2 %(self.NetName)
 *         #elif self.NetworkKind == CC.nkKoh:
 */
    __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 381, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_StTransGradDynCall); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 381, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 381, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = PyNumber_Remainder(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 381, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFGradientCall_2, __pyx_t_4) < 0) __PYX_ERR(0, 381, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":382
 *             self.NomFGradient = CC.StTransGradDyn %(self.NetName)
 *             self.NomFGradientCall = CC.StTransGradDynCall %(self.NetName)
 *             self.NomFTransfer = CC.StTransferDyn2 %(self.NetName)             # <<<<<<<<<<<<<<
 *         #elif self.NetworkKind == CC.nkKoh:
 *         #    self.NomFonction = CC.StTransferKoh %(self.NetName)
 */
    __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 382, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_StTransferDyn2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 382, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 382, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_1 = PyNumber_Remainder(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 382, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NomFTransfer_2, __pyx_t_1) < 0) __PYX_ERR(0, 382, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":378
 *             self.NomFGradientCall = CC.StTransGradStatCall %(self.NetName)
 *             self.NomFTransfer = CC.StTransferStat2 %(self.NetName)
 *         elif self.NetworkKind == CC.nkDyn:             # <<<<<<<<<<<<<<
 *             self.NomFonction = CC.StTransferDyn %(self.NetName)
 *             self.NomFGradient = CC.StTransGradDyn %(self.NetName)
 */
  }
  __pyx_L5:;

  /* "metaphor/monal/lcode/codewriter.py":348
 *         self.FileName = self.CurrentCodeFileName()
 * 
 *     def  TouslesNoms(self):             # <<<<<<<<<<<<<<
 *         self._NomFonction = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFGradient = CC.st_InDev + ' codeWriter' #+ Classname
 */

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.TouslesNoms", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":386
 *         #    self.NomFonction = CC.StTransferKoh %(self.NetName)
 * 
 *     def _dosub(self, group, Indent0=0):             # <<<<<<<<<<<<<<
 *         st0 = group.group(0)
 *         if len(st0) <= 2:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_33_dosub(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_33_dosub = {"_dosub", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_33_dosub, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_33_dosub(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_group = 0;
  PyObject *__pyx_v_Indent0 = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("_dosub (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_group,&__pyx_n_s_Indent0,0};
    PyObject* values[3] = {0,0,0};
    values[2] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_group)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("_dosub", 0, 2, 3, 1); __PYX_ERR(0, 386, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent0);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_dosub") < 0)) __PYX_ERR(0, 386, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_group = values[1];
    __pyx_v_Indent0 = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("_dosub", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 386, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase._dosub", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_32_dosub(__pyx_self, __pyx_v_self, __pyx_v_group, __pyx_v_Indent0);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_32_dosub(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_group, PyObject *__pyx_v_Indent0) {
  PyObject *__pyx_v_st0 = NULL;
  PyObject *__pyx_v_st1 = NULL;
  long __pyx_v_style;
  PyObject *__pyx_v_fct = NULL;
  PyObject *__pyx_v_st = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  Py_ssize_t __pyx_t_3;
  int __pyx_t_4;
  int __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  int __pyx_t_11;
  PyObject *__pyx_t_12 = NULL;
  PyObject *__pyx_t_13 = NULL;
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  PyObject *__pyx_t_16 = NULL;
  PyObject *__pyx_t_17 = NULL;
  PyObject *__pyx_t_18 = NULL;
  __Pyx_RefNannySetupContext("_dosub", 0);

  /* "metaphor/monal/lcode/codewriter.py":387
 * 
 *     def _dosub(self, group, Indent0=0):
 *         st0 = group.group(0)             # <<<<<<<<<<<<<<
 *         if len(st0) <= 2:
 *             return ""
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_group, __pyx_n_s_group); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 387, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 387, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_st0 = __pyx_t_2;
  __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":388
 *     def _dosub(self, group, Indent0=0):
 *         st0 = group.group(0)
 *         if len(st0) <= 2:             # <<<<<<<<<<<<<<
 *             return ""
 *         st1 = st0[1:-1]
 */
  __pyx_t_3 = PyObject_Length(__pyx_v_st0); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 388, __pyx_L1_error)
  __pyx_t_4 = ((__pyx_t_3 <= 2) != 0);
  if (__pyx_t_4) {

    /* "metaphor/monal/lcode/codewriter.py":389
 *         st0 = group.group(0)
 *         if len(st0) <= 2:
 *             return ""             # <<<<<<<<<<<<<<
 *         st1 = st0[1:-1]
 *         if (st1[0]=='l') and (st1[-1]=='l'):
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_kp_u_);
    __pyx_r = __pyx_kp_u_;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":388
 *     def _dosub(self, group, Indent0=0):
 *         st0 = group.group(0)
 *         if len(st0) <= 2:             # <<<<<<<<<<<<<<
 *             return ""
 *         st1 = st0[1:-1]
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":390
 *         if len(st0) <= 2:
 *             return ""
 *         st1 = st0[1:-1]             # <<<<<<<<<<<<<<
 *         if (st1[0]=='l') and (st1[-1]=='l'):
 *             style = -1
 */
  __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_st0, 1, -1L, NULL, NULL, &__pyx_slice__5, 1, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 390, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_v_st1 = __pyx_t_2;
  __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":391
 *             return ""
 *         st1 = st0[1:-1]
 *         if (st1[0]=='l') and (st1[-1]=='l'):             # <<<<<<<<<<<<<<
 *             style = -1
 *             st1 = st1[1:-1]
 */
  __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_st1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 391, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_n_u_l, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 391, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_5) {
  } else {
    __pyx_t_4 = __pyx_t_5;
    goto __pyx_L5_bool_binop_done;
  }
  __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_st1, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 391, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_n_u_l, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 391, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_4 = __pyx_t_5;
  __pyx_L5_bool_binop_done:;
  if (__pyx_t_4) {

    /* "metaphor/monal/lcode/codewriter.py":392
 *         st1 = st0[1:-1]
 *         if (st1[0]=='l') and (st1[-1]=='l'):
 *             style = -1             # <<<<<<<<<<<<<<
 *             st1 = st1[1:-1]
 *         elif (st1[0]=='U') and (st1[-1]=='U'):
 */
    __pyx_v_style = -1L;

    /* "metaphor/monal/lcode/codewriter.py":393
 *         if (st1[0]=='l') and (st1[-1]=='l'):
 *             style = -1
 *             st1 = st1[1:-1]             # <<<<<<<<<<<<<<
 *         elif (st1[0]=='U') and (st1[-1]=='U'):
 *             style = 1
 */
    __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_st1, 1, -1L, NULL, NULL, &__pyx_slice__6, 1, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 393, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_st1, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":391
 *             return ""
 *         st1 = st0[1:-1]
 *         if (st1[0]=='l') and (st1[-1]=='l'):             # <<<<<<<<<<<<<<
 *             style = -1
 *             st1 = st1[1:-1]
 */
    goto __pyx_L4;
  }

  /* "metaphor/monal/lcode/codewriter.py":394
 *             style = -1
 *             st1 = st1[1:-1]
 *         elif (st1[0]=='U') and (st1[-1]=='U'):             # <<<<<<<<<<<<<<
 *             style = 1
 *             st1 = st1[1:-1]
 */
  __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_st1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 394, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_n_u_U, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 394, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_5) {
  } else {
    __pyx_t_4 = __pyx_t_5;
    goto __pyx_L7_bool_binop_done;
  }
  __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_st1, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 394, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_n_u_U, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 394, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_4 = __pyx_t_5;
  __pyx_L7_bool_binop_done:;
  if (__pyx_t_4) {

    /* "metaphor/monal/lcode/codewriter.py":395
 *             st1 = st1[1:-1]
 *         elif (st1[0]=='U') and (st1[-1]=='U'):
 *             style = 1             # <<<<<<<<<<<<<<
 *             st1 = st1[1:-1]
 *         elif (st1[0]=='C') and (st1[-1]=='C'):
 */
    __pyx_v_style = 1;

    /* "metaphor/monal/lcode/codewriter.py":396
 *         elif (st1[0]=='U') and (st1[-1]=='U'):
 *             style = 1
 *             st1 = st1[1:-1]             # <<<<<<<<<<<<<<
 *         elif (st1[0]=='C') and (st1[-1]=='C'):
 *             style = 2
 */
    __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_st1, 1, -1L, NULL, NULL, &__pyx_slice__7, 1, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 396, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_st1, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":394
 *             style = -1
 *             st1 = st1[1:-1]
 *         elif (st1[0]=='U') and (st1[-1]=='U'):             # <<<<<<<<<<<<<<
 *             style = 1
 *             st1 = st1[1:-1]
 */
    goto __pyx_L4;
  }

  /* "metaphor/monal/lcode/codewriter.py":397
 *             style = 1
 *             st1 = st1[1:-1]
 *         elif (st1[0]=='C') and (st1[-1]=='C'):             # <<<<<<<<<<<<<<
 *             style = 2
 *             st1 = st1[1:-1]
 */
  __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_st1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 397, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_n_u_C, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 397, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_5) {
  } else {
    __pyx_t_4 = __pyx_t_5;
    goto __pyx_L9_bool_binop_done;
  }
  __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_st1, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 397, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_n_u_C, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 397, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_4 = __pyx_t_5;
  __pyx_L9_bool_binop_done:;
  if (__pyx_t_4) {

    /* "metaphor/monal/lcode/codewriter.py":398
 *             st1 = st1[1:-1]
 *         elif (st1[0]=='C') and (st1[-1]=='C'):
 *             style = 2             # <<<<<<<<<<<<<<
 *             st1 = st1[1:-1]
 *         else:
 */
    __pyx_v_style = 2;

    /* "metaphor/monal/lcode/codewriter.py":399
 *         elif (st1[0]=='C') and (st1[-1]=='C'):
 *             style = 2
 *             st1 = st1[1:-1]             # <<<<<<<<<<<<<<
 *         else:
 *             style = 0
 */
    __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_st1, 1, -1L, NULL, NULL, &__pyx_slice__8, 1, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 399, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_st1, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":397
 *             style = 1
 *             st1 = st1[1:-1]
 *         elif (st1[0]=='C') and (st1[-1]=='C'):             # <<<<<<<<<<<<<<
 *             style = 2
 *             st1 = st1[1:-1]
 */
    goto __pyx_L4;
  }

  /* "metaphor/monal/lcode/codewriter.py":401
 *             st1 = st1[1:-1]
 *         else:
 *             style = 0             # <<<<<<<<<<<<<<
 *         try:
 *             fct = self.ReplaceDictionary[st1]
 */
  /*else*/ {
    __pyx_v_style = 0;
  }
  __pyx_L4:;

  /* "metaphor/monal/lcode/codewriter.py":402
 *         else:
 *             style = 0
 *         try:             # <<<<<<<<<<<<<<
 *             fct = self.ReplaceDictionary[st1]
 *             st = str(fct(Indent0))
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8);
    __Pyx_XGOTREF(__pyx_t_6);
    __Pyx_XGOTREF(__pyx_t_7);
    __Pyx_XGOTREF(__pyx_t_8);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":403
 *             style = 0
 *         try:
 *             fct = self.ReplaceDictionary[st1]             # <<<<<<<<<<<<<<
 *             st = str(fct(Indent0))
 *         except TypeError:
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ReplaceDictionary); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 403, __pyx_L11_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetItem(__pyx_t_2, __pyx_v_st1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 403, __pyx_L11_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_fct = __pyx_t_1;
      __pyx_t_1 = 0;

      /* "metaphor/monal/lcode/codewriter.py":404
 *         try:
 *             fct = self.ReplaceDictionary[st1]
 *             st = str(fct(Indent0))             # <<<<<<<<<<<<<<
 *         except TypeError:
 *             try:
 */
      __Pyx_INCREF(__pyx_v_fct);
      __pyx_t_2 = __pyx_v_fct; __pyx_t_9 = NULL;
      if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_9)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_9);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_9) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_Indent0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 404, __pyx_L11_error)
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_v_Indent0};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 404, __pyx_L11_error)
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_GOTREF(__pyx_t_1);
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_v_Indent0};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 404, __pyx_L11_error)
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_GOTREF(__pyx_t_1);
        } else
        #endif
        {
          __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 404, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
          __Pyx_INCREF(__pyx_v_Indent0);
          __Pyx_GIVEREF(__pyx_v_Indent0);
          PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_v_Indent0);
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 404, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 404, __pyx_L11_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_st = __pyx_t_2;
      __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":402
 *         else:
 *             style = 0
 *         try:             # <<<<<<<<<<<<<<
 *             fct = self.ReplaceDictionary[st1]
 *             st = str(fct(Indent0))
 */
    }
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
    goto __pyx_L16_try_end;
    __pyx_L11_error:;
    __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
    __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":405
 *             fct = self.ReplaceDictionary[st1]
 *             st = str(fct(Indent0))
 *         except TypeError:             # <<<<<<<<<<<<<<
 *             try:
 *                 st = str(fct())
 */
    __pyx_t_11 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError);
    if (__pyx_t_11) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase._dosub", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_1, &__pyx_t_10) < 0) __PYX_ERR(0, 405, __pyx_L13_except_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_GOTREF(__pyx_t_10);

      /* "metaphor/monal/lcode/codewriter.py":406
 *             st = str(fct(Indent0))
 *         except TypeError:
 *             try:             # <<<<<<<<<<<<<<
 *                 st = str(fct())
 *             except:
 */
      {
        __Pyx_PyThreadState_declare
        __Pyx_PyThreadState_assign
        __Pyx_ExceptionSave(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14);
        __Pyx_XGOTREF(__pyx_t_12);
        __Pyx_XGOTREF(__pyx_t_13);
        __Pyx_XGOTREF(__pyx_t_14);
        /*try:*/ {

          /* "metaphor/monal/lcode/codewriter.py":407
 *         except TypeError:
 *             try:
 *                 st = str(fct())             # <<<<<<<<<<<<<<
 *             except:
 *                 print("error on %s replacement"% st0)
 */
          if (unlikely(!__pyx_v_fct)) { __Pyx_RaiseUnboundLocalError("fct"); __PYX_ERR(0, 407, __pyx_L19_error) }
          __Pyx_INCREF(__pyx_v_fct);
          __pyx_t_15 = __pyx_v_fct; __pyx_t_16 = NULL;
          if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_15))) {
            __pyx_t_16 = PyMethod_GET_SELF(__pyx_t_15);
            if (likely(__pyx_t_16)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_15);
              __Pyx_INCREF(__pyx_t_16);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_15, function);
            }
          }
          if (__pyx_t_16) {
            __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_15, __pyx_t_16); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 407, __pyx_L19_error)
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          } else {
            __pyx_t_9 = __Pyx_PyObject_CallNoArg(__pyx_t_15); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 407, __pyx_L19_error)
          }
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __pyx_t_15 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_9); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 407, __pyx_L19_error)
          __Pyx_GOTREF(__pyx_t_15);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF_SET(__pyx_v_st, __pyx_t_15);
          __pyx_t_15 = 0;

          /* "metaphor/monal/lcode/codewriter.py":406
 *             st = str(fct(Indent0))
 *         except TypeError:
 *             try:             # <<<<<<<<<<<<<<
 *                 st = str(fct())
 *             except:
 */
        }
        __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
        __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
        __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
        goto __pyx_L26_try_end;
        __pyx_L19_error:;
        __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;

        /* "metaphor/monal/lcode/codewriter.py":408
 *             try:
 *                 st = str(fct())
 *             except:             # <<<<<<<<<<<<<<
 *                 print("error on %s replacement"% st0)
 *                 raise
 */
        /*except:*/ {
          __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase._dosub", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_9, &__pyx_t_16) < 0) __PYX_ERR(0, 408, __pyx_L21_except_error)
          __Pyx_GOTREF(__pyx_t_15);
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_GOTREF(__pyx_t_16);

          /* "metaphor/monal/lcode/codewriter.py":409
 *                 st = str(fct())
 *             except:
 *                 print("error on %s replacement"% st0)             # <<<<<<<<<<<<<<
 *                 raise
 *         except KeyError:
 */
          __pyx_t_17 = PyUnicode_Format(__pyx_kp_u_error_on_s_replacement, __pyx_v_st0); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 409, __pyx_L21_except_error)
          __Pyx_GOTREF(__pyx_t_17);
          __pyx_t_18 = __Pyx_PyObject_CallOneArg(__pyx_builtin_print, __pyx_t_17); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 409, __pyx_L21_except_error)
          __Pyx_GOTREF(__pyx_t_18);
          __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;

          /* "metaphor/monal/lcode/codewriter.py":410
 *             except:
 *                 print("error on %s replacement"% st0)
 *                 raise             # <<<<<<<<<<<<<<
 *         except KeyError:
 *             print("Key '{}' unknown".format(st1))
 */
          __Pyx_GIVEREF(__pyx_t_15);
          __Pyx_GIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_16);
          __Pyx_ErrRestoreWithState(__pyx_t_15, __pyx_t_9, __pyx_t_16);
          __pyx_t_15 = 0; __pyx_t_9 = 0; __pyx_t_16 = 0; 
          __PYX_ERR(0, 410, __pyx_L21_except_error)
        }
        __pyx_L21_except_error:;

        /* "metaphor/monal/lcode/codewriter.py":406
 *             st = str(fct(Indent0))
 *         except TypeError:
 *             try:             # <<<<<<<<<<<<<<
 *                 st = str(fct())
 *             except:
 */
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
        goto __pyx_L13_except_error;
        __pyx_L26_try_end:;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      goto __pyx_L12_exception_handled;
    }

    /* "metaphor/monal/lcode/codewriter.py":411
 *                 print("error on %s replacement"% st0)
 *                 raise
 *         except KeyError:             # <<<<<<<<<<<<<<
 *             print("Key '{}' unknown".format(st1))
 *             st = ""
 */
    __pyx_t_11 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_KeyError);
    if (__pyx_t_11) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase._dosub", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_10, &__pyx_t_1, &__pyx_t_2) < 0) __PYX_ERR(0, 411, __pyx_L13_except_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_GOTREF(__pyx_t_2);

      /* "metaphor/monal/lcode/codewriter.py":412
 *                 raise
 *         except KeyError:
 *             print("Key '{}' unknown".format(st1))             # <<<<<<<<<<<<<<
 *             st = ""
 *         if not style:
 */
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_kp_u_Key_unknown, __pyx_n_s_format); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 412, __pyx_L13_except_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_15 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_9);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_9, function);
        }
      }
      if (!__pyx_t_15) {
        __pyx_t_16 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_v_st1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 412, __pyx_L13_except_error)
        __Pyx_GOTREF(__pyx_t_16);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_9)) {
          PyObject *__pyx_temp[2] = {__pyx_t_15, __pyx_v_st1};
          __pyx_t_16 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 412, __pyx_L13_except_error)
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_GOTREF(__pyx_t_16);
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
          PyObject *__pyx_temp[2] = {__pyx_t_15, __pyx_v_st1};
          __pyx_t_16 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 412, __pyx_L13_except_error)
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_GOTREF(__pyx_t_16);
        } else
        #endif
        {
          __pyx_t_18 = PyTuple_New(1+1); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 412, __pyx_L13_except_error)
          __Pyx_GOTREF(__pyx_t_18);
          __Pyx_GIVEREF(__pyx_t_15); PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_15); __pyx_t_15 = NULL;
          __Pyx_INCREF(__pyx_v_st1);
          __Pyx_GIVEREF(__pyx_v_st1);
          PyTuple_SET_ITEM(__pyx_t_18, 0+1, __pyx_v_st1);
          __pyx_t_16 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_18, NULL); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 412, __pyx_L13_except_error)
          __Pyx_GOTREF(__pyx_t_16);
          __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_builtin_print, __pyx_t_16); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 412, __pyx_L13_except_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

      /* "metaphor/monal/lcode/codewriter.py":413
 *         except KeyError:
 *             print("Key '{}' unknown".format(st1))
 *             st = ""             # <<<<<<<<<<<<<<
 *         if not style:
 *             return st
 */
      __Pyx_INCREF(__pyx_kp_u_);
      __Pyx_XDECREF_SET(__pyx_v_st, __pyx_kp_u_);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      goto __pyx_L12_exception_handled;
    }
    goto __pyx_L13_except_error;
    __pyx_L13_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":402
 *         else:
 *             style = 0
 *         try:             # <<<<<<<<<<<<<<
 *             fct = self.ReplaceDictionary[st1]
 *             st = str(fct(Indent0))
 */
    __Pyx_XGIVEREF(__pyx_t_6);
    __Pyx_XGIVEREF(__pyx_t_7);
    __Pyx_XGIVEREF(__pyx_t_8);
    __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8);
    goto __pyx_L1_error;
    __pyx_L12_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_6);
    __Pyx_XGIVEREF(__pyx_t_7);
    __Pyx_XGIVEREF(__pyx_t_8);
    __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8);
    __pyx_L16_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":414
 *             print("Key '{}' unknown".format(st1))
 *             st = ""
 *         if not style:             # <<<<<<<<<<<<<<
 *             return st
 *         if style == -1:
 */
  __pyx_t_4 = ((!(__pyx_v_style != 0)) != 0);
  if (__pyx_t_4) {

    /* "metaphor/monal/lcode/codewriter.py":415
 *             st = ""
 *         if not style:
 *             return st             # <<<<<<<<<<<<<<
 *         if style == -1:
 *             return st.lower()
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_v_st);
    __pyx_r = __pyx_v_st;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":414
 *             print("Key '{}' unknown".format(st1))
 *             st = ""
 *         if not style:             # <<<<<<<<<<<<<<
 *             return st
 *         if style == -1:
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":416
 *         if not style:
 *             return st
 *         if style == -1:             # <<<<<<<<<<<<<<
 *             return st.lower()
 *         if style == 1:
 */
  __pyx_t_4 = ((__pyx_v_style == -1L) != 0);
  if (__pyx_t_4) {

    /* "metaphor/monal/lcode/codewriter.py":417
 *             return st
 *         if style == -1:
 *             return st.lower()             # <<<<<<<<<<<<<<
 *         if style == 1:
 *             return st.upper()
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_st, __pyx_n_s_lower); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 417, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_10 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_10)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_10);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (__pyx_t_10) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 417, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    } else {
      __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 417, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_r = __pyx_t_2;
    __pyx_t_2 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":416
 *         if not style:
 *             return st
 *         if style == -1:             # <<<<<<<<<<<<<<
 *             return st.lower()
 *         if style == 1:
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":418
 *         if style == -1:
 *             return st.lower()
 *         if style == 1:             # <<<<<<<<<<<<<<
 *             return st.upper()
 *         if style == 2:
 */
  __pyx_t_4 = ((__pyx_v_style == 1) != 0);
  if (__pyx_t_4) {

    /* "metaphor/monal/lcode/codewriter.py":419
 *             return st.lower()
 *         if style == 1:
 *             return st.upper()             # <<<<<<<<<<<<<<
 *         if style == 2:
 *             return st.capitalize()
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_st, __pyx_n_s_upper); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 419, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_10 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_10)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_10);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (__pyx_t_10) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 419, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    } else {
      __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 419, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_r = __pyx_t_2;
    __pyx_t_2 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":418
 *         if style == -1:
 *             return st.lower()
 *         if style == 1:             # <<<<<<<<<<<<<<
 *             return st.upper()
 *         if style == 2:
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":420
 *         if style == 1:
 *             return st.upper()
 *         if style == 2:             # <<<<<<<<<<<<<<
 *             return st.capitalize()
 *         return st
 */
  __pyx_t_4 = ((__pyx_v_style == 2) != 0);
  if (__pyx_t_4) {

    /* "metaphor/monal/lcode/codewriter.py":421
 *             return st.upper()
 *         if style == 2:
 *             return st.capitalize()             # <<<<<<<<<<<<<<
 *         return st
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_st, __pyx_n_s_capitalize); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 421, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_10 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_10)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_10);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (__pyx_t_10) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 421, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    } else {
      __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 421, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_r = __pyx_t_2;
    __pyx_t_2 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":420
 *         if style == 1:
 *             return st.upper()
 *         if style == 2:             # <<<<<<<<<<<<<<
 *             return st.capitalize()
 *         return st
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":422
 *         if style == 2:
 *             return st.capitalize()
 *         return st             # <<<<<<<<<<<<<<
 * 
 *     def SubstituteVariables(self, Source, Indent0=2):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_st);
  __pyx_r = __pyx_v_st;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":386
 *         #    self.NomFonction = CC.StTransferKoh %(self.NetName)
 * 
 *     def _dosub(self, group, Indent0=0):             # <<<<<<<<<<<<<<
 *         st0 = group.group(0)
 *         if len(st0) <= 2:
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_XDECREF(__pyx_t_16);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase._dosub", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_st0);
  __Pyx_XDECREF(__pyx_v_st1);
  __Pyx_XDECREF(__pyx_v_fct);
  __Pyx_XDECREF(__pyx_v_st);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":424
 *         return st
 * 
 *     def SubstituteVariables(self, Source, Indent0=2):             # <<<<<<<<<<<<<<
 *         replfct = partial(self._dosub, Indent0=Indent0)
 *         p = re.compile(r'%\w*%')
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_35SubstituteVariables(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_35SubstituteVariables = {"SubstituteVariables", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_35SubstituteVariables, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_35SubstituteVariables(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_Source = 0;
  PyObject *__pyx_v_Indent0 = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("SubstituteVariables (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Source,&__pyx_n_s_Indent0,0};
    PyObject* values[3] = {0,0,0};
    values[2] = ((PyObject *)((PyObject *)__pyx_int_2));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Source)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("SubstituteVariables", 0, 2, 3, 1); __PYX_ERR(0, 424, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent0);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "SubstituteVariables") < 0)) __PYX_ERR(0, 424, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Source = values[1];
    __pyx_v_Indent0 = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("SubstituteVariables", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 424, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SubstituteVariables", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_34SubstituteVariables(__pyx_self, __pyx_v_self, __pyx_v_Source, __pyx_v_Indent0);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_34SubstituteVariables(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Source, PyObject *__pyx_v_Indent0) {
  PyObject *__pyx_v_replfct = NULL;
  PyObject *__pyx_v_p = NULL;
  PyObject *__pyx_v_st = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  __Pyx_RefNannySetupContext("SubstituteVariables", 0);

  /* "metaphor/monal/lcode/codewriter.py":425
 * 
 *     def SubstituteVariables(self, Source, Indent0=2):
 *         replfct = partial(self._dosub, Indent0=Indent0)             # <<<<<<<<<<<<<<
 *         p = re.compile(r'%\w*%')
 *         st = p.sub(replfct, Source)
 */
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_partial); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 425, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dosub); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 425, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 425, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_GIVEREF(__pyx_t_2);
  PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
  __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 425, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_Indent0, __pyx_v_Indent0) < 0) __PYX_ERR(0, 425, __pyx_L1_error)
  __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 425, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_replfct = __pyx_t_4;
  __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":426
 *     def SubstituteVariables(self, Source, Indent0=2):
 *         replfct = partial(self._dosub, Indent0=Indent0)
 *         p = re.compile(r'%\w*%')             # <<<<<<<<<<<<<<
 *         st = p.sub(replfct, Source)
 *         return st
 */
  __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_re); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_compile); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__9, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_p = __pyx_t_4;
  __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":427
 *         replfct = partial(self._dosub, Indent0=Indent0)
 *         p = re.compile(r'%\w*%')
 *         st = p.sub(replfct, Source)             # <<<<<<<<<<<<<<
 *         return st
 * 
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_p, __pyx_n_s_sub); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 427, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = NULL;
  __pyx_t_5 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
      __pyx_t_5 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_replfct, __pyx_v_Source};
    __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 427, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_4);
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_replfct, __pyx_v_Source};
    __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 427, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_4);
  } else
  #endif
  {
    __pyx_t_1 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 427, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    if (__pyx_t_3) {
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); __pyx_t_3 = NULL;
    }
    __Pyx_INCREF(__pyx_v_replfct);
    __Pyx_GIVEREF(__pyx_v_replfct);
    PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_5, __pyx_v_replfct);
    __Pyx_INCREF(__pyx_v_Source);
    __Pyx_GIVEREF(__pyx_v_Source);
    PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_5, __pyx_v_Source);
    __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 427, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_st = __pyx_t_4;
  __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":428
 *         p = re.compile(r'%\w*%')
 *         st = p.sub(replfct, Source)
 *         return st             # <<<<<<<<<<<<<<
 * 
 *     def CodeFichierAvecTemplate(self, ftype, included):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_st);
  __pyx_r = __pyx_v_st;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":424
 *         return st
 * 
 *     def SubstituteVariables(self, Source, Indent0=2):             # <<<<<<<<<<<<<<
 *         replfct = partial(self._dosub, Indent0=Indent0)
 *         p = re.compile(r'%\w*%')
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SubstituteVariables", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_replfct);
  __Pyx_XDECREF(__pyx_v_p);
  __Pyx_XDECREF(__pyx_v_st);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":430
 *         return st
 * 
 *     def CodeFichierAvecTemplate(self, ftype, included):             # <<<<<<<<<<<<<<
 *         # creation gener, ique d'un code depuis un template
 *         self.setCurrentFileTypes(ftype, included)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_37CodeFichierAvecTemplate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_37CodeFichierAvecTemplate = {"CodeFichierAvecTemplate", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_37CodeFichierAvecTemplate, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_37CodeFichierAvecTemplate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_ftype = 0;
  PyObject *__pyx_v_included = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("CodeFichierAvecTemplate (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_ftype,&__pyx_n_s_included,0};
    PyObject* values[3] = {0,0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ftype)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("CodeFichierAvecTemplate", 1, 3, 3, 1); __PYX_ERR(0, 430, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_included)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("CodeFichierAvecTemplate", 1, 3, 3, 2); __PYX_ERR(0, 430, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "CodeFichierAvecTemplate") < 0)) __PYX_ERR(0, 430, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
      values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
    }
    __pyx_v_self = values[0];
    __pyx_v_ftype = values[1];
    __pyx_v_included = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("CodeFichierAvecTemplate", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 430, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichierAvecTemplate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_36CodeFichierAvecTemplate(__pyx_self, __pyx_v_self, __pyx_v_ftype, __pyx_v_included);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_36CodeFichierAvecTemplate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_ftype, PyObject *__pyx_v_included) {
  PyObject *__pyx_v_memsep = NULL;
  PyObject *__pyx_v_source = NULL;
  PyObject *__pyx_v_specialsub = NULL;
  PyObject *__pyx_v_Result = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  __Pyx_RefNannySetupContext("CodeFichierAvecTemplate", 0);

  /* "metaphor/monal/lcode/codewriter.py":432
 *     def CodeFichierAvecTemplate(self, ftype, included):
 *         # creation gener, ique d'un code depuis un template
 *         self.setCurrentFileTypes(ftype, included)             # <<<<<<<<<<<<<<
 *         memsep = self.DecimalSep
 *         self.DecimalSep = '.'
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_setCurrentFileTypes); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 432, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = NULL;
  __pyx_t_4 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
      __pyx_t_4 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_ftype, __pyx_v_included};
    __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 432, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_ftype, __pyx_v_included};
    __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 432, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else
  #endif
  {
    __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 432, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__pyx_t_3) {
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
    }
    __Pyx_INCREF(__pyx_v_ftype);
    __Pyx_GIVEREF(__pyx_v_ftype);
    PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_v_ftype);
    __Pyx_INCREF(__pyx_v_included);
    __Pyx_GIVEREF(__pyx_v_included);
    PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_included);
    __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 432, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":433
 *         # creation gener, ique d'un code depuis un template
 *         self.setCurrentFileTypes(ftype, included)
 *         memsep = self.DecimalSep             # <<<<<<<<<<<<<<
 *         self.DecimalSep = '.'
 *         source = self.TemplateDict[(self.CurrentFunctionType, self.NetworkKind, included)]
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DecimalSep_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 433, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_memsep = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":434
 *         self.setCurrentFileTypes(ftype, included)
 *         memsep = self.DecimalSep
 *         self.DecimalSep = '.'             # <<<<<<<<<<<<<<
 *         source = self.TemplateDict[(self.CurrentFunctionType, self.NetworkKind, included)]
 *         specialsub = ftype in CC.ftSpecialSub
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_DecimalSep_2, __pyx_kp_u__10) < 0) __PYX_ERR(0, 434, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":435
 *         memsep = self.DecimalSep
 *         self.DecimalSep = '.'
 *         source = self.TemplateDict[(self.CurrentFunctionType, self.NetworkKind, included)]             # <<<<<<<<<<<<<<
 *         specialsub = ftype in CC.ftSpecialSub
 * 
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_TemplateDict); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 435, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentFunctionType_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 435, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetworkKind); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 435, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 435, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_GIVEREF(__pyx_t_2);
  PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
  __Pyx_GIVEREF(__pyx_t_5);
  PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_5);
  __Pyx_INCREF(__pyx_v_included);
  __Pyx_GIVEREF(__pyx_v_included);
  PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_included);
  __pyx_t_2 = 0;
  __pyx_t_5 = 0;
  __pyx_t_5 = __Pyx_PyObject_GetItem(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 435, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_v_source = __pyx_t_5;
  __pyx_t_5 = 0;

  /* "metaphor/monal/lcode/codewriter.py":436
 *         self.DecimalSep = '.'
 *         source = self.TemplateDict[(self.CurrentFunctionType, self.NetworkKind, included)]
 *         specialsub = ftype in CC.ftSpecialSub             # <<<<<<<<<<<<<<
 * 
 *         Result = self.ReadCodeFromID(source, specialsub)
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftSpecialSub); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_6 = (__Pyx_PySequence_ContainsTF(__pyx_v_ftype, __pyx_t_3, Py_EQ)); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 436, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_v_specialsub = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "metaphor/monal/lcode/codewriter.py":438
 *         specialsub = ftype in CC.ftSpecialSub
 * 
 *         Result = self.ReadCodeFromID(source, specialsub)             # <<<<<<<<<<<<<<
 *         Result = self.LimitLine(Result)
 *         self.DecimalSep = memsep
 */
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ReadCodeFromID); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 438, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_1 = NULL;
  __pyx_t_4 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
    __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5);
    if (likely(__pyx_t_1)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
      __Pyx_INCREF(__pyx_t_1);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_5, function);
      __pyx_t_4 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_5)) {
    PyObject *__pyx_temp[3] = {__pyx_t_1, __pyx_v_source, __pyx_v_specialsub};
    __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 438, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_GOTREF(__pyx_t_3);
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
    PyObject *__pyx_temp[3] = {__pyx_t_1, __pyx_v_source, __pyx_v_specialsub};
    __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 438, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_GOTREF(__pyx_t_3);
  } else
  #endif
  {
    __pyx_t_2 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 438, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    if (__pyx_t_1) {
      __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = NULL;
    }
    __Pyx_INCREF(__pyx_v_source);
    __Pyx_GIVEREF(__pyx_v_source);
    PyTuple_SET_ITEM(__pyx_t_2, 0+__pyx_t_4, __pyx_v_source);
    __Pyx_INCREF(__pyx_v_specialsub);
    __Pyx_GIVEREF(__pyx_v_specialsub);
    PyTuple_SET_ITEM(__pyx_t_2, 1+__pyx_t_4, __pyx_v_specialsub);
    __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 438, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  }
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_v_Result = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "metaphor/monal/lcode/codewriter.py":439
 * 
 *         Result = self.ReadCodeFromID(source, specialsub)
 *         Result = self.LimitLine(Result)             # <<<<<<<<<<<<<<
 *         self.DecimalSep = memsep
 *         return Result
 */
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_LimitLine); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 439, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_2 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_5);
    if (likely(__pyx_t_2)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_5, function);
    }
  }
  if (!__pyx_t_2) {
    __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_v_Result); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 439, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_5)) {
      PyObject *__pyx_temp[2] = {__pyx_t_2, __pyx_v_Result};
      __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 439, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_GOTREF(__pyx_t_3);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
      PyObject *__pyx_temp[2] = {__pyx_t_2, __pyx_v_Result};
      __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 439, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_GOTREF(__pyx_t_3);
    } else
    #endif
    {
      __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 439, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __pyx_t_2 = NULL;
      __Pyx_INCREF(__pyx_v_Result);
      __Pyx_GIVEREF(__pyx_v_Result);
      PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_v_Result);
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 439, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_3);
  __pyx_t_3 = 0;

  /* "metaphor/monal/lcode/codewriter.py":440
 *         Result = self.ReadCodeFromID(source, specialsub)
 *         Result = self.LimitLine(Result)
 *         self.DecimalSep = memsep             # <<<<<<<<<<<<<<
 *         return Result
 * 
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_DecimalSep_2, __pyx_v_memsep) < 0) __PYX_ERR(0, 440, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":441
 *         Result = self.LimitLine(Result)
 *         self.DecimalSep = memsep
 *         return Result             # <<<<<<<<<<<<<<
 * 
 *     def CodeFichier(self, index, included=0, dosave=False, back=False):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_Result);
  __pyx_r = __pyx_v_Result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":430
 *         return st
 * 
 *     def CodeFichierAvecTemplate(self, ftype, included):             # <<<<<<<<<<<<<<
 *         # creation gener, ique d'un code depuis un template
 *         self.setCurrentFileTypes(ftype, included)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichierAvecTemplate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_memsep);
  __Pyx_XDECREF(__pyx_v_source);
  __Pyx_XDECREF(__pyx_v_specialsub);
  __Pyx_XDECREF(__pyx_v_Result);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":443
 *         return Result
 * 
 *     def CodeFichier(self, index, included=0, dosave=False, back=False):             # <<<<<<<<<<<<<<
 *         result = self.CodeFichierAvecTemplate(index, included)
 *         # cas sans template
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_39CodeFichier(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_39CodeFichier = {"CodeFichier", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_39CodeFichier, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_39CodeFichier(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_index = 0;
  PyObject *__pyx_v_included = 0;
  PyObject *__pyx_v_dosave = 0;
  PyObject *__pyx_v_back = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("CodeFichier (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_index,&__pyx_n_s_included,&__pyx_n_s_dosave,&__pyx_n_s_back,0};
    PyObject* values[5] = {0,0,0,0,0};
    values[2] = ((PyObject *)((PyObject *)__pyx_int_0));
    values[3] = ((PyObject *)((PyObject *)Py_False));
    values[4] = ((PyObject *)((PyObject *)Py_False));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
        CYTHON_FALLTHROUGH;
        case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        CYTHON_FALLTHROUGH;
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_index)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("CodeFichier", 0, 2, 5, 1); __PYX_ERR(0, 443, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_included);
          if (value) { values[2] = value; kw_args--; }
        }
        CYTHON_FALLTHROUGH;
        case  3:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_dosave);
          if (value) { values[3] = value; kw_args--; }
        }
        CYTHON_FALLTHROUGH;
        case  4:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_back);
          if (value) { values[4] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "CodeFichier") < 0)) __PYX_ERR(0, 443, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
        CYTHON_FALLTHROUGH;
        case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        CYTHON_FALLTHROUGH;
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_index = values[1];
    __pyx_v_included = values[2];
    __pyx_v_dosave = values[3];
    __pyx_v_back = values[4];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("CodeFichier", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 443, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichier", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_38CodeFichier(__pyx_self, __pyx_v_self, __pyx_v_index, __pyx_v_included, __pyx_v_dosave, __pyx_v_back);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_38CodeFichier(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_included, PyObject *__pyx_v_dosave, PyObject *__pyx_v_back) {
  PyObject *__pyx_v_result = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  int __pyx_t_7;
  __Pyx_RefNannySetupContext("CodeFichier", 0);

  /* "metaphor/monal/lcode/codewriter.py":444
 * 
 *     def CodeFichier(self, index, included=0, dosave=False, back=False):
 *         result = self.CodeFichierAvecTemplate(index, included)             # <<<<<<<<<<<<<<
 *         # cas sans template
 *         if not result:
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeFichierAvecTemplate); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 444, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = NULL;
  __pyx_t_4 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
      __pyx_t_4 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_index, __pyx_v_included};
    __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 444, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_index, __pyx_v_included};
    __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 444, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else
  #endif
  {
    __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 444, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (__pyx_t_3) {
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
    }
    __Pyx_INCREF(__pyx_v_index);
    __Pyx_GIVEREF(__pyx_v_index);
    PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_v_index);
    __Pyx_INCREF(__pyx_v_included);
    __Pyx_GIVEREF(__pyx_v_included);
    PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_included);
    __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 444, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_result = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":446
 *         result = self.CodeFichierAvecTemplate(index, included)
 *         # cas sans template
 *         if not result:             # <<<<<<<<<<<<<<
 *             if index == CC.ftTransfert:
 *                 result = self.CodeFichierTransfertInterne(included)
 */
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 446, __pyx_L1_error)
  __pyx_t_7 = ((!__pyx_t_6) != 0);
  if (__pyx_t_7) {

    /* "metaphor/monal/lcode/codewriter.py":447
 *         # cas sans template
 *         if not result:
 *             if index == CC.ftTransfert:             # <<<<<<<<<<<<<<
 *                 result = self.CodeFichierTransfertInterne(included)
 *             if index == CC.ftGradient:
 */
    __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 447, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ftTransfert); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 447, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyObject_RichCompare(__pyx_v_index, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 447, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 447, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__pyx_t_7) {

      /* "metaphor/monal/lcode/codewriter.py":448
 *         if not result:
 *             if index == CC.ftTransfert:
 *                 result = self.CodeFichierTransfertInterne(included)             # <<<<<<<<<<<<<<
 *             if index == CC.ftGradient:
 *                 result = self.CodeFichierGradientInterne(included)
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeFichierTransfertInterne); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 448, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_5)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_5) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_included); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 448, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_included};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 448, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_GOTREF(__pyx_t_1);
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_included};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 448, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_GOTREF(__pyx_t_1);
        } else
        #endif
        {
          __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 448, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5); __pyx_t_5 = NULL;
          __Pyx_INCREF(__pyx_v_included);
          __Pyx_GIVEREF(__pyx_v_included);
          PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_included);
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 448, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
      __pyx_t_1 = 0;

      /* "metaphor/monal/lcode/codewriter.py":447
 *         # cas sans template
 *         if not result:
 *             if index == CC.ftTransfert:             # <<<<<<<<<<<<<<
 *                 result = self.CodeFichierTransfertInterne(included)
 *             if index == CC.ftGradient:
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":449
 *             if index == CC.ftTransfert:
 *                 result = self.CodeFichierTransfertInterne(included)
 *             if index == CC.ftGradient:             # <<<<<<<<<<<<<<
 *                 result = self.CodeFichierGradientInterne(included)
 *             if index == CC.ftTransfertLeverage:
 */
    __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 449, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ftGradient); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 449, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyObject_RichCompare(__pyx_v_index, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 449, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 449, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__pyx_t_7) {

      /* "metaphor/monal/lcode/codewriter.py":450
 *                 result = self.CodeFichierTransfertInterne(included)
 *             if index == CC.ftGradient:
 *                 result = self.CodeFichierGradientInterne(included)             # <<<<<<<<<<<<<<
 *             if index == CC.ftTransfertLeverage:
 *                 result = self.CodeFichierTransfertLeverageInterne(included)
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeFichierGradientInterne); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 450, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_3)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_3) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_included); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 450, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_included};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 450, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_GOTREF(__pyx_t_1);
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_included};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 450, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_GOTREF(__pyx_t_1);
        } else
        #endif
        {
          __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 450, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
          __Pyx_INCREF(__pyx_v_included);
          __Pyx_GIVEREF(__pyx_v_included);
          PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_v_included);
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 450, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
      __pyx_t_1 = 0;

      /* "metaphor/monal/lcode/codewriter.py":449
 *             if index == CC.ftTransfert:
 *                 result = self.CodeFichierTransfertInterne(included)
 *             if index == CC.ftGradient:             # <<<<<<<<<<<<<<
 *                 result = self.CodeFichierGradientInterne(included)
 *             if index == CC.ftTransfertLeverage:
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":451
 *             if index == CC.ftGradient:
 *                 result = self.CodeFichierGradientInterne(included)
 *             if index == CC.ftTransfertLeverage:             # <<<<<<<<<<<<<<
 *                 result = self.CodeFichierTransfertLeverageInterne(included)
 *         # fin cas sans template
 */
    __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 451, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ftTransfertLeverage); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 451, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyObject_RichCompare(__pyx_v_index, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 451, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 451, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__pyx_t_7) {

      /* "metaphor/monal/lcode/codewriter.py":452
 *                 result = self.CodeFichierGradientInterne(included)
 *             if index == CC.ftTransfertLeverage:
 *                 result = self.CodeFichierTransfertLeverageInterne(included)             # <<<<<<<<<<<<<<
 *         # fin cas sans template
 *         if dosave and result:
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeFichierTransfertLeverageInte); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 452, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_5)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_5) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_included); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 452, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_included};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 452, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_GOTREF(__pyx_t_1);
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_included};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 452, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_GOTREF(__pyx_t_1);
        } else
        #endif
        {
          __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 452, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5); __pyx_t_5 = NULL;
          __Pyx_INCREF(__pyx_v_included);
          __Pyx_GIVEREF(__pyx_v_included);
          PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_included);
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 452, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
      __pyx_t_1 = 0;

      /* "metaphor/monal/lcode/codewriter.py":451
 *             if index == CC.ftGradient:
 *                 result = self.CodeFichierGradientInterne(included)
 *             if index == CC.ftTransfertLeverage:             # <<<<<<<<<<<<<<
 *                 result = self.CodeFichierTransfertLeverageInterne(included)
 *         # fin cas sans template
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":446
 *         result = self.CodeFichierAvecTemplate(index, included)
 *         # cas sans template
 *         if not result:             # <<<<<<<<<<<<<<
 *             if index == CC.ftTransfert:
 *                 result = self.CodeFichierTransfertInterne(included)
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":454
 *                 result = self.CodeFichierTransfertLeverageInterne(included)
 *         # fin cas sans template
 *         if dosave and result:             # <<<<<<<<<<<<<<
 *             self.SaveToFile(result, back=back)
 *         return result
 */
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_dosave); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 454, __pyx_L1_error)
  if (__pyx_t_6) {
  } else {
    __pyx_t_7 = __pyx_t_6;
    goto __pyx_L8_bool_binop_done;
  }
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 454, __pyx_L1_error)
  __pyx_t_7 = __pyx_t_6;
  __pyx_L8_bool_binop_done:;
  if (__pyx_t_7) {

    /* "metaphor/monal/lcode/codewriter.py":455
 *         # fin cas sans template
 *         if dosave and result:
 *             self.SaveToFile(result, back=back)             # <<<<<<<<<<<<<<
 *         return result
 * 
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SaveToFile); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 455, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 455, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_INCREF(__pyx_v_result);
    __Pyx_GIVEREF(__pyx_v_result);
    PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_result);
    __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 455, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_back, __pyx_v_back) < 0) __PYX_ERR(0, 455, __pyx_L1_error)
    __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 455, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":454
 *                 result = self.CodeFichierTransfertLeverageInterne(included)
 *         # fin cas sans template
 *         if dosave and result:             # <<<<<<<<<<<<<<
 *             self.SaveToFile(result, back=back)
 *         return result
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":456
 *         if dosave and result:
 *             self.SaveToFile(result, back=back)
 *         return result             # <<<<<<<<<<<<<<
 * 
 * #------ code interne sans template --------------------------------------------
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_result);
  __pyx_r = __pyx_v_result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":443
 *         return Result
 * 
 *     def CodeFichier(self, index, included=0, dosave=False, back=False):             # <<<<<<<<<<<<<<
 *         result = self.CodeFichierAvecTemplate(index, included)
 *         # cas sans template
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichier", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_result);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":460
 * #------ code interne sans template --------------------------------------------
 * 
 *     def CodeFichierTransfertInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftTransfert, included)
 *         result = self.CommentTeteFichier()
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_41CodeFichierTransfertInterne(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_41CodeFichierTransfertInterne = {"CodeFichierTransfertInterne", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_41CodeFichierTransfertInterne, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_41CodeFichierTransfertInterne(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_included = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("CodeFichierTransfertInterne (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_included,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_included);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "CodeFichierTransfertInterne") < 0)) __PYX_ERR(0, 460, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_included = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("CodeFichierTransfertInterne", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 460, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichierTransfertInterne", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_40CodeFichierTransfertInterne(__pyx_self, __pyx_v_self, __pyx_v_included);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_40CodeFichierTransfertInterne(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_included) {
  PyObject *__pyx_v_result = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_t_7;
  int __pyx_t_8;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  __Pyx_RefNannySetupContext("CodeFichierTransfertInterne", 0);

  /* "metaphor/monal/lcode/codewriter.py":461
 * 
 *     def CodeFichierTransfertInterne(self, included=0):
 *         self.setCurrentFileTypes(CC.ftTransfert, included)             # <<<<<<<<<<<<<<
 *         result = self.CommentTeteFichier()
 *         if not included:
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_setCurrentFileTypes); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 461, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 461, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_ftTransfert); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 461, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = NULL;
  __pyx_t_5 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
      __pyx_t_5 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_t_4, __pyx_v_included};
    __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 461, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_t_4, __pyx_v_included};
    __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 461, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else
  #endif
  {
    __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 461, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    if (__pyx_t_3) {
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); __pyx_t_3 = NULL;
    }
    __Pyx_GIVEREF(__pyx_t_4);
    PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_5, __pyx_t_4);
    __Pyx_INCREF(__pyx_v_included);
    __Pyx_GIVEREF(__pyx_v_included);
    PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_v_included);
    __pyx_t_4 = 0;
    __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 461, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":462
 *     def CodeFichierTransfertInterne(self, included=0):
 *         self.setCurrentFileTypes(CC.ftTransfert, included)
 *         result = self.CommentTeteFichier()             # <<<<<<<<<<<<<<
 *         if not included:
 *             self.SetDecimalSeparator('.')
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CommentTeteFichier); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 462, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_6 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_6)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_6);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (__pyx_t_6) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 462, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 462, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_result = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":463
 *         self.setCurrentFileTypes(CC.ftTransfert, included)
 *         result = self.CommentTeteFichier()
 *         if not included:             # <<<<<<<<<<<<<<
 *             self.SetDecimalSeparator('.')
 *             # Dbut du texte
 */
  __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_included); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 463, __pyx_L1_error)
  __pyx_t_8 = ((!__pyx_t_7) != 0);
  if (__pyx_t_8) {

    /* "metaphor/monal/lcode/codewriter.py":464
 *         result = self.CommentTeteFichier()
 *         if not included:
 *             self.SetDecimalSeparator('.')             # <<<<<<<<<<<<<<
 *             # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetDecimalSeparator); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 464, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 464, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":466
 *             self.SetDecimalSeparator('.')
 *             # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())             # <<<<<<<<<<<<<<
 *             # Fonction de transfert
 *             result += self.NlPlusStr(self.CodeFonctionTransfert())
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 466, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_EnTete); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 466, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (__pyx_t_3) {
      __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 466, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else {
      __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 466, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 466, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 466, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 466, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 466, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 466, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 466, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":468
 *             result += self.NlPlusStr(self.EnTete())
 *             # Fonction de transfert
 *             result += self.NlPlusStr(self.CodeFonctionTransfert())             # <<<<<<<<<<<<<<
 *             # Fonction nom des entres
 *             result += self.NlPlusStr(self.CodeNomEntree(self.Step))
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 468, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeFonctionTransfert); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 468, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_6);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_6, function);
      }
    }
    if (__pyx_t_4) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 468, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    } else {
      __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 468, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 468, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 468, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 468, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 468, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 468, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 468, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":470
 *             result += self.NlPlusStr(self.CodeFonctionTransfert())
 *             # Fonction nom des entres
 *             result += self.NlPlusStr(self.CodeNomEntree(self.Step))             # <<<<<<<<<<<<<<
 *             # Fonction nom des sorties
 *             result += self.NlPlusStr(self.CodeNomSortie(self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 470, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeNomEntree); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 470, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 470, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 470, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_4);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_3)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_6};
        __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 470, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_6};
        __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 470, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 470, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 470, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_3) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 470, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 470, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 470, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 470, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_3); __pyx_t_3 = NULL;
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 470, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 470, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":472
 *             result += self.NlPlusStr(self.CodeNomEntree(self.Step))
 *             # Fonction nom des sorties
 *             result += self.NlPlusStr(self.CodeNomSortie(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.EnQueue()
 * 
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 472, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeNomSortie); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 472, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 472, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 472, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_10);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
        __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 472, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
        __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 472, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 472, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_9, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 472, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_10); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 472, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_10};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 472, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_10};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 472, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      {
        __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 472, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_10);
        __pyx_t_10 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_9, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 472, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 472, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":473
 *             # Fonction nom des sorties
 *             result += self.NlPlusStr(self.CodeNomSortie(self.Step))
 *             result += self.EnQueue()             # <<<<<<<<<<<<<<
 * 
 *             result = self.LimitLine(result)
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_EnQueue); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 473, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (__pyx_t_9) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 473, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    } else {
      __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 473, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 473, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":475
 *             result += self.EnQueue()
 * 
 *             result = self.LimitLine(result)             # <<<<<<<<<<<<<<
 *             self.SetDecimalSeparator(CC.DefaultDecimalSeparator)
 *         else:
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_LimitLine); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 475, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_result); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 475, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_v_result};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 475, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_v_result};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 475, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 475, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_INCREF(__pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_v_result);
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 475, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":476
 * 
 *             result = self.LimitLine(result)
 *             self.SetDecimalSeparator(CC.DefaultDecimalSeparator)             # <<<<<<<<<<<<<<
 *         else:
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetDecimalSeparator); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 476, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 476, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_DefaultDecimalSeparator); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 476, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_9);
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    __pyx_t_10 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_10)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_10);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_10) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 476, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 476, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 476, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      {
        __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 476, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_10); __pyx_t_10 = NULL;
        __Pyx_GIVEREF(__pyx_t_9);
        PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_9);
        __pyx_t_9 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 476, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":463
 *         self.setCurrentFileTypes(CC.ftTransfert, included)
 *         result = self.CommentTeteFichier()
 *         if not included:             # <<<<<<<<<<<<<<
 *             self.SetDecimalSeparator('.')
 *             # Dbut du texte
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":478
 *             self.SetDecimalSeparator(CC.DefaultDecimalSeparator)
 *         else:
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 */
  /*else*/ {
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 478, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeDebutInclus); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 478, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_9);
    __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 478, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_9);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_9, function);
      }
    }
    if (!__pyx_t_3) {
      __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 478, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_GOTREF(__pyx_t_4);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_9)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_10};
        __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 478, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_10};
        __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 478, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      {
        __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 478, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); __pyx_t_3 = NULL;
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_10);
        __pyx_t_10 = 0;
        __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 478, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 478, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_4};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 478, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_4};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 478, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      {
        __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 478, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 478, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 478, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":479
 *         else:
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.DeclarationVecteur(CC.vtWeight, self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 479, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_BlocConstantes); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 479, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 479, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_9);
    __pyx_t_10 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_10)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_10);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_10) {
      __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 479, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_GOTREF(__pyx_t_6);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
        __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 479, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
        __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 479, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 479, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_10); __pyx_t_10 = NULL;
        __Pyx_GIVEREF(__pyx_t_9);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_9);
        __pyx_t_9 = 0;
        __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 479, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 479, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 479, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 479, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 479, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 479, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 479, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":480
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))
 *             result += self.NlPlusStr(self.BlocType(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.DeclarationVecteur(CC.vtWeight, self.Step))
 *             if self.NetSource.hasMinMax:
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 480, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_BlocType); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 480, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 480, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_6);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_6, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 480, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_3);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_6)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_4};
        __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 480, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_4};
        __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 480, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 480, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 480, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 480, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 480, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 480, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 480, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 480, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 480, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":481
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.DeclarationVecteur(CC.vtWeight, self.Step))             # <<<<<<<<<<<<<<
 *             if self.NetSource.hasMinMax:
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMin, self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 481, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DeclarationVecteur); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 481, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 481, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_vtWeight); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 481, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 481, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_9 = NULL;
    __pyx_t_5 = 0;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
        __pyx_t_5 = 1;
      }
    }
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_3)) {
      PyObject *__pyx_temp[3] = {__pyx_t_9, __pyx_t_4, __pyx_t_6};
      __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 481, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
      PyObject *__pyx_temp[3] = {__pyx_t_9, __pyx_t_4, __pyx_t_6};
      __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 481, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    } else
    #endif
    {
      __pyx_t_11 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 481, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_11);
      if (__pyx_t_9) {
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
      }
      __Pyx_GIVEREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_5, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_5, __pyx_t_6);
      __pyx_t_4 = 0;
      __pyx_t_6 = 0;
      __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_11, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 481, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
    }
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_3) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 481, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_10};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 481, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_10};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 481, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      {
        __pyx_t_11 = PyTuple_New(1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 481, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_3); __pyx_t_3 = NULL;
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_11, 0+1, __pyx_t_10);
        __pyx_t_10 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 481, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 481, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":482
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.DeclarationVecteur(CC.vtWeight, self.Step))
 *             if self.NetSource.hasMinMax:             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMin, self.Step))
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMax, self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 482, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_hasMinMax); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 482, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 482, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (__pyx_t_8) {

      /* "metaphor/monal/lcode/codewriter.py":483
 *             result += self.NlPlusStr(self.DeclarationVecteur(CC.vtWeight, self.Step))
 *             if self.NetSource.hasMinMax:
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMin, self.Step))             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMax, self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 483, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DeclarationVecteur); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 483, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 483, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_vtMin); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 483, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 483, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = NULL;
      __pyx_t_5 = 0;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
        __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_10);
        if (likely(__pyx_t_4)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_10, function);
          __pyx_t_5 = 1;
        }
      }
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_10)) {
        PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_t_6, __pyx_t_3};
        __pyx_t_11 = __Pyx_PyFunction_FastCall(__pyx_t_10, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 483, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_10)) {
        PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_t_6, __pyx_t_3};
        __pyx_t_11 = __Pyx_PyCFunction_FastCall(__pyx_t_10, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 483, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_9 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 483, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        if (__pyx_t_4) {
          __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_4); __pyx_t_4 = NULL;
        }
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_5, __pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_5, __pyx_t_3);
        __pyx_t_6 = 0;
        __pyx_t_3 = 0;
        __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_9, NULL); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 483, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      if (!__pyx_t_10) {
        __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_11); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 483, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __Pyx_GOTREF(__pyx_t_2);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_1)) {
          PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_11};
          __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 483, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
          PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_11};
          __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 483, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        } else
        #endif
        {
          __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 483, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_10); __pyx_t_10 = NULL;
          __Pyx_GIVEREF(__pyx_t_11);
          PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_11);
          __pyx_t_11 = 0;
          __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 483, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 483, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
      __pyx_t_1 = 0;

      /* "metaphor/monal/lcode/codewriter.py":484
 *             if self.NetSource.hasMinMax:
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMin, self.Step))
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMax, self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 484, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DeclarationVecteur); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 484, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 484, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_vtMax); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 484, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 484, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_6 = NULL;
      __pyx_t_5 = 0;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_11))) {
        __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_11);
        if (likely(__pyx_t_6)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_11);
          __Pyx_INCREF(__pyx_t_6);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_11, function);
          __pyx_t_5 = 1;
        }
      }
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_11)) {
        PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_t_3, __pyx_t_10};
        __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 484, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_11)) {
        PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_t_3, __pyx_t_10};
        __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 484, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      {
        __pyx_t_4 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 484, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        if (__pyx_t_6) {
          __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = NULL;
        }
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_4, 0+__pyx_t_5, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_5, __pyx_t_10);
        __pyx_t_3 = 0;
        __pyx_t_10 = 0;
        __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_4, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 484, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_11 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_11) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 484, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_9};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 484, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_9};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 484, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        } else
        #endif
        {
          __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 484, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_11); __pyx_t_11 = NULL;
          __Pyx_GIVEREF(__pyx_t_9);
          PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_9);
          __pyx_t_9 = 0;
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 484, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 484, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
      __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":482
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.DeclarationVecteur(CC.vtWeight, self.Step))
 *             if self.NetSource.hasMinMax:             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMin, self.Step))
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMax, self.Step))
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":485
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMin, self.Step))
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMax, self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))             # <<<<<<<<<<<<<<
 *             if result != '':
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 485, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeProtoProcedure); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 485, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_9);
    __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 485, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_11);
    __pyx_t_10 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
      __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9);
      if (likely(__pyx_t_10)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
        __Pyx_INCREF(__pyx_t_10);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_9, function);
      }
    }
    if (!__pyx_t_10) {
      __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_11); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 485, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_GOTREF(__pyx_t_4);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_9)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_11};
        __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 485, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_11};
        __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 485, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 485, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_10); __pyx_t_10 = NULL;
        __Pyx_GIVEREF(__pyx_t_11);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_11);
        __pyx_t_11 = 0;
        __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 485, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 485, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_4};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 485, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_4};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 485, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 485, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 485, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 485, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":486
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMax, self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 *         return result
 */
    __pyx_t_8 = (__Pyx_PyUnicode_Equals(__pyx_v_result, __pyx_kp_u_, Py_NE)); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 486, __pyx_L1_error)
    if (__pyx_t_8) {

      /* "metaphor/monal/lcode/codewriter.py":487
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))             # <<<<<<<<<<<<<<
 *         return result
 * 
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 487, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeFinInclus); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 487, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 487, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_11 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      if (!__pyx_t_11) {
        __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_9); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 487, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_3);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_4)) {
          PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_9};
          __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 487, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
          PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_9};
          __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 487, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        } else
        #endif
        {
          __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 487, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_11); __pyx_t_11 = NULL;
          __Pyx_GIVEREF(__pyx_t_9);
          PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_9);
          __pyx_t_9 = 0;
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 487, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_4)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_4) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 487, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_3};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 487, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_3};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 487, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        } else
        #endif
        {
          __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 487, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_4); __pyx_t_4 = NULL;
          __Pyx_GIVEREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 487, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 487, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
      __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":486
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtMax, self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 *         return result
 */
    }
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":488
 *             if result != '':
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 *         return result             # <<<<<<<<<<<<<<
 * 
 *     #===========================================================================
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_result);
  __pyx_r = __pyx_v_result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":460
 * #------ code interne sans template --------------------------------------------
 * 
 *     def CodeFichierTransfertInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftTransfert, included)
 *         result = self.CommentTeteFichier()
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichierTransfertInterne", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_result);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":503
 *     #===========================================================================
 * 
 *     def CodeFichierGradientInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftGradient, included)
 *         result = self.CommentTeteFichier()
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_43CodeFichierGradientInterne(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_43CodeFichierGradientInterne = {"CodeFichierGradientInterne", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_43CodeFichierGradientInterne, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_43CodeFichierGradientInterne(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_included = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("CodeFichierGradientInterne (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_included,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_included);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "CodeFichierGradientInterne") < 0)) __PYX_ERR(0, 503, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_included = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("CodeFichierGradientInterne", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 503, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichierGradientInterne", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_42CodeFichierGradientInterne(__pyx_self, __pyx_v_self, __pyx_v_included);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_42CodeFichierGradientInterne(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_included) {
  PyObject *__pyx_v_result = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_t_7;
  int __pyx_t_8;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  __Pyx_RefNannySetupContext("CodeFichierGradientInterne", 0);

  /* "metaphor/monal/lcode/codewriter.py":504
 * 
 *     def CodeFichierGradientInterne(self, included=0):
 *         self.setCurrentFileTypes(CC.ftGradient, included)             # <<<<<<<<<<<<<<
 *         result = self.CommentTeteFichier()
 *         if not included:
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_setCurrentFileTypes); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_ftGradient); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = NULL;
  __pyx_t_5 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
      __pyx_t_5 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_t_4, __pyx_v_included};
    __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 504, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_t_4, __pyx_v_included};
    __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 504, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else
  #endif
  {
    __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 504, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    if (__pyx_t_3) {
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); __pyx_t_3 = NULL;
    }
    __Pyx_GIVEREF(__pyx_t_4);
    PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_5, __pyx_t_4);
    __Pyx_INCREF(__pyx_v_included);
    __Pyx_GIVEREF(__pyx_v_included);
    PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_v_included);
    __pyx_t_4 = 0;
    __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 504, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":505
 *     def CodeFichierGradientInterne(self, included=0):
 *         self.setCurrentFileTypes(CC.ftGradient, included)
 *         result = self.CommentTeteFichier()             # <<<<<<<<<<<<<<
 *         if not included:
 *             self.SetDecimalSeparator('.')
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CommentTeteFichier); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 505, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_6 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_6)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_6);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (__pyx_t_6) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 505, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 505, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_result = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":506
 *         self.setCurrentFileTypes(CC.ftGradient, included)
 *         result = self.CommentTeteFichier()
 *         if not included:             # <<<<<<<<<<<<<<
 *             self.SetDecimalSeparator('.')
 *             # Dbut du texte
 */
  __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_included); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 506, __pyx_L1_error)
  __pyx_t_8 = ((!__pyx_t_7) != 0);
  if (__pyx_t_8) {

    /* "metaphor/monal/lcode/codewriter.py":507
 *         result = self.CommentTeteFichier()
 *         if not included:
 *             self.SetDecimalSeparator('.')             # <<<<<<<<<<<<<<
 *             # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetDecimalSeparator); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 507, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 507, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":509
 *             self.SetDecimalSeparator('.')
 *             # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())             # <<<<<<<<<<<<<<
 *             # Fonction de calcul du gradient
 *             result += self.NlPlusStr(self.CodeGradient())
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 509, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_EnTete); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 509, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (__pyx_t_3) {
      __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 509, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else {
      __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 509, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 509, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 509, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 509, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 509, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 509, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 509, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":511
 *             result += self.NlPlusStr(self.EnTete())
 *             # Fonction de calcul du gradient
 *             result += self.NlPlusStr(self.CodeGradient())             # <<<<<<<<<<<<<<
 *             result += self.EnQueue()
 * 
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 511, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeGradient); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 511, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_6);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_6, function);
      }
    }
    if (__pyx_t_4) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 511, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    } else {
      __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 511, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 511, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 511, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 511, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 511, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 511, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 511, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":512
 *             # Fonction de calcul du gradient
 *             result += self.NlPlusStr(self.CodeGradient())
 *             result += self.EnQueue()             # <<<<<<<<<<<<<<
 * 
 *             result = self.LimitLine(result)
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_EnQueue); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 512, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (__pyx_t_4) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 512, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    } else {
      __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 512, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 512, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":514
 *             result += self.EnQueue()
 * 
 *             result = self.LimitLine(result)             # <<<<<<<<<<<<<<
 *             self.SetDecimalSeparator(CC.DefaultDecimalSeparator)
 *         else:
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_LimitLine); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 514, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_result); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 514, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_result};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 514, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_result};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 514, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 514, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_INCREF(__pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_result);
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 514, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":515
 * 
 *             result = self.LimitLine(result)
 *             self.SetDecimalSeparator(CC.DefaultDecimalSeparator)             # <<<<<<<<<<<<<<
 *         else:
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetDecimalSeparator); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_DefaultDecimalSeparator); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 515, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_3) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 515, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 515, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 515, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      {
        __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 515, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); __pyx_t_3 = NULL;
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 515, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":506
 *         self.setCurrentFileTypes(CC.ftGradient, included)
 *         result = self.CommentTeteFichier()
 *         if not included:             # <<<<<<<<<<<<<<
 *             self.SetDecimalSeparator('.')
 *             # Dbut du texte
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":517
 *             self.SetDecimalSeparator(CC.DefaultDecimalSeparator)
 *         else:
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 */
  /*else*/ {
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 517, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeDebutInclus); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 517, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 517, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 517, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_6);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 517, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 517, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 517, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_10, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 517, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 517, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 517, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 517, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 517, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 517, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 517, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":518
 *         else:
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 518, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_BlocConstantes); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 518, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 518, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_6);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_6, function);
      }
    }
    if (!__pyx_t_3) {
      __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 518, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_10);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_6)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 518, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 518, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      {
        __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 518, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_3); __pyx_t_3 = NULL;
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 518, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 518, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_10};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 518, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_10};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 518, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      {
        __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 518, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_10);
        __pyx_t_10 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 518, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 518, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":519
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))
 *             result += self.NlPlusStr(self.BlocType(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 519, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_BlocType); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 519, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 519, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_10);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_10, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 519, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_9);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_10)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_10, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 519, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_10)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_10, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 519, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 519, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_3, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 519, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    __pyx_t_10 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_10)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_10);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_10) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 519, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 519, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 519, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 519, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_10); __pyx_t_10 = NULL;
        __Pyx_GIVEREF(__pyx_t_9);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_9);
        __pyx_t_9 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 519, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 519, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":520
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))             # <<<<<<<<<<<<<<
 *             if result != '':
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 520, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeProtoProcedure); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 520, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_9);
    __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 520, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_9);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_9, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 520, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_GOTREF(__pyx_t_3);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_9)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_10};
        __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 520, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_10};
        __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 520, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      {
        __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 520, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_10);
        __pyx_t_10 = 0;
        __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 520, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 520, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 520, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 520, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 520, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 520, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 520, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":521
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 *         return result
 */
    __pyx_t_8 = (__Pyx_PyUnicode_Equals(__pyx_v_result, __pyx_kp_u_, Py_NE)); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 521, __pyx_L1_error)
    if (__pyx_t_8) {

      /* "metaphor/monal/lcode/codewriter.py":522
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))             # <<<<<<<<<<<<<<
 *         return result
 * 
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 522, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeFinInclus); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 522, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 522, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_10 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_10)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_10);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
        }
      }
      if (!__pyx_t_10) {
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 522, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_4);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_3)) {
          PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
          __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 522, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
          PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
          __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 522, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        } else
        #endif
        {
          __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 522, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_10); __pyx_t_10 = NULL;
          __Pyx_GIVEREF(__pyx_t_9);
          PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_9);
          __pyx_t_9 = 0;
          __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 522, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_3)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_3) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 522, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 522, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 522, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        } else
        #endif
        {
          __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 522, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); __pyx_t_3 = NULL;
          __Pyx_GIVEREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 522, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 522, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
      __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":521
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 *         return result
 */
    }
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":523
 *             if result != '':
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 *         return result             # <<<<<<<<<<<<<<
 * 
 *     #===========================================================================
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_result);
  __pyx_r = __pyx_v_result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":503
 *     #===========================================================================
 * 
 *     def CodeFichierGradientInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftGradient, included)
 *         result = self.CommentTeteFichier()
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichierGradientInterne", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_result);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":541
 *     #===========================================================================
 * 
 *     def CodeFichierTransfertLeverageInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftTransfertLeverage, 0)
 *         result = self.CommentTeteFichier()
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_45CodeFichierTransfertLeverageInterne(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_45CodeFichierTransfertLeverageInterne = {"CodeFichierTransfertLeverageInterne", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_45CodeFichierTransfertLeverageInterne, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_45CodeFichierTransfertLeverageInterne(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_included = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("CodeFichierTransfertLeverageInterne (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_included,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_included);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "CodeFichierTransfertLeverageInterne") < 0)) __PYX_ERR(0, 541, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_included = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("CodeFichierTransfertLeverageInterne", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 541, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichierTransfertLeverageInterne", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_44CodeFichierTransfertLeverageInterne(__pyx_self, __pyx_v_self, __pyx_v_included);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_44CodeFichierTransfertLeverageInterne(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_included) {
  PyObject *__pyx_v_result = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_t_7;
  int __pyx_t_8;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  __Pyx_RefNannySetupContext("CodeFichierTransfertLeverageInterne", 0);

  /* "metaphor/monal/lcode/codewriter.py":542
 * 
 *     def CodeFichierTransfertLeverageInterne(self, included=0):
 *         self.setCurrentFileTypes(CC.ftTransfertLeverage, 0)             # <<<<<<<<<<<<<<
 *         result = self.CommentTeteFichier()
 *         if not included:
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_setCurrentFileTypes); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 542, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 542, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_ftTransfertLeverage); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 542, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = NULL;
  __pyx_t_5 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
      __pyx_t_5 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_t_4, __pyx_int_0};
    __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 542, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_t_4, __pyx_int_0};
    __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 542, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else
  #endif
  {
    __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 542, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    if (__pyx_t_3) {
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); __pyx_t_3 = NULL;
    }
    __Pyx_GIVEREF(__pyx_t_4);
    PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_5, __pyx_t_4);
    __Pyx_INCREF(__pyx_int_0);
    __Pyx_GIVEREF(__pyx_int_0);
    PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_int_0);
    __pyx_t_4 = 0;
    __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 542, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":543
 *     def CodeFichierTransfertLeverageInterne(self, included=0):
 *         self.setCurrentFileTypes(CC.ftTransfertLeverage, 0)
 *         result = self.CommentTeteFichier()             # <<<<<<<<<<<<<<
 *         if not included:
 *             self.SetDecimalSeparator('.')
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CommentTeteFichier); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 543, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_6 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_6)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_6);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (__pyx_t_6) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 543, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 543, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_result = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":544
 *         self.setCurrentFileTypes(CC.ftTransfertLeverage, 0)
 *         result = self.CommentTeteFichier()
 *         if not included:             # <<<<<<<<<<<<<<
 *             self.SetDecimalSeparator('.')
 *                 # Dbut du texte
 */
  __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_included); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 544, __pyx_L1_error)
  __pyx_t_8 = ((!__pyx_t_7) != 0);
  if (__pyx_t_8) {

    /* "metaphor/monal/lcode/codewriter.py":545
 *         result = self.CommentTeteFichier()
 *         if not included:
 *             self.SetDecimalSeparator('.')             # <<<<<<<<<<<<<<
 *                 # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetDecimalSeparator); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 545, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 545, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":547
 *             self.SetDecimalSeparator('.')
 *                 # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())             # <<<<<<<<<<<<<<
 *             if self.WithMatrix:
 *             # Fonction de transfert avec gradient
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 547, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_EnTete); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 547, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (__pyx_t_3) {
      __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 547, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else {
      __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 547, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 547, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 547, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 547, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 547, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 547, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 547, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":548
 *                 # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())
 *             if self.WithMatrix:             # <<<<<<<<<<<<<<
 *             # Fonction de transfert avec gradient
 *                 result += self.NlPlusStr(self.CodeFonctionTransfertAdv())
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_WithMatrix); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 548, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 548, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__pyx_t_8) {

      /* "metaphor/monal/lcode/codewriter.py":550
 *             if self.WithMatrix:
 *             # Fonction de transfert avec gradient
 *                 result += self.NlPlusStr(self.CodeFonctionTransfertAdv())             # <<<<<<<<<<<<<<
 *                 result += self.EnQueue
 * 
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 550, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeFonctionTransfertAdv); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 550, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_4)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      if (__pyx_t_4) {
        __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 550, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else {
        __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 550, __pyx_L1_error)
      }
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_6)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_6);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_6) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 550, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 550, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_3};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 550, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        } else
        #endif
        {
          __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 550, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = NULL;
          __Pyx_GIVEREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 550, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 550, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
      __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":551
 *             # Fonction de transfert avec gradient
 *                 result += self.NlPlusStr(self.CodeFonctionTransfertAdv())
 *                 result += self.EnQueue             # <<<<<<<<<<<<<<
 * 
 *             result = self.LimitLine(result)
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_EnQueue); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 551, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 551, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
      __pyx_t_1 = 0;

      /* "metaphor/monal/lcode/codewriter.py":548
 *                 # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())
 *             if self.WithMatrix:             # <<<<<<<<<<<<<<
 *             # Fonction de transfert avec gradient
 *                 result += self.NlPlusStr(self.CodeFonctionTransfertAdv())
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":553
 *                 result += self.EnQueue
 * 
 *             result = self.LimitLine(result)             # <<<<<<<<<<<<<<
 *             self.SetDecimalSeparator(CC.DefaultDecimalSeparator)
 *         else:
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_LimitLine); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 553, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_result); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 553, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_result};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 553, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_result};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 553, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 553, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_INCREF(__pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_result);
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 553, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":554
 * 
 *             result = self.LimitLine(result)
 *             self.SetDecimalSeparator(CC.DefaultDecimalSeparator)             # <<<<<<<<<<<<<<
 *         else:
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetDecimalSeparator); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 554, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 554, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_DefaultDecimalSeparator); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 554, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_3) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      {
        __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 554, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); __pyx_t_3 = NULL;
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":544
 *         self.setCurrentFileTypes(CC.ftTransfertLeverage, 0)
 *         result = self.CommentTeteFichier()
 *         if not included:             # <<<<<<<<<<<<<<
 *             self.SetDecimalSeparator('.')
 *                 # Dbut du texte
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":556
 *             self.SetDecimalSeparator(CC.DefaultDecimalSeparator)
 *         else:
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 */
  /*else*/ {
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 556, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeDebutInclus); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 556, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 556, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 556, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_6);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 556, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 556, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 556, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_10, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 556, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 556, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 556, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 556, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 556, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 556, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 556, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":557
 *         else:
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.DeclarationMatrice(self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 557, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_BlocConstantes); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 557, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 557, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_6);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_6, function);
      }
    }
    if (!__pyx_t_3) {
      __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 557, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_10);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_6)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 557, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
        __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 557, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else
      #endif
      {
        __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 557, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_3); __pyx_t_3 = NULL;
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 557, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 557, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_10};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 557, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_10};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 557, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      {
        __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 557, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_10);
        __pyx_t_10 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 557, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 557, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":558
 *             result += self.NlPlusStr(self.CodeDebutInclus(self.Step))
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))
 *             result += self.NlPlusStr(self.BlocType(self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.DeclarationMatrice(self.Step))
 *             if self.NetSource.outputCount > 1:
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 558, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_BlocType); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 558, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 558, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_10);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_10, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 558, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_9);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_10)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_10, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 558, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_10)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_6};
        __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_10, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 558, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 558, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_3, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 558, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    __pyx_t_10 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_10)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_10);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_10) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 558, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 558, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_9};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 558, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 558, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_10); __pyx_t_10 = NULL;
        __Pyx_GIVEREF(__pyx_t_9);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_9);
        __pyx_t_9 = 0;
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 558, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 558, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":559
 *             result += self.NlPlusStr(self.BlocConstantes(self.Step))
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.DeclarationMatrice(self.Step))             # <<<<<<<<<<<<<<
 *             if self.NetSource.outputCount > 1:
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtStdDev, self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 559, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DeclarationMatrice); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 559, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_9);
    __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 559, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_9);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_9, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 559, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_GOTREF(__pyx_t_3);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_9)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_10};
        __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 559, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_10};
        __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 559, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      } else
      #endif
      {
        __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 559, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_10);
        __pyx_t_10 = 0;
        __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 559, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 559, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 559, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 559, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 559, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 559, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 559, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":560
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.DeclarationMatrice(self.Step))
 *             if self.NetSource.outputCount > 1:             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtStdDev, self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 560, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_outputCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 560, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_int_1, Py_GT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 560, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 560, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    if (__pyx_t_8) {

      /* "metaphor/monal/lcode/codewriter.py":561
 *             result += self.NlPlusStr(self.DeclarationMatrice(self.Step))
 *             if self.NetSource.outputCount > 1:
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtStdDev, self.Step))             # <<<<<<<<<<<<<<
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 561, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DeclarationVecteur); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 561, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 561, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_vtStdDev); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 561, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 561, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_6 = NULL;
      __pyx_t_5 = 0;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
        __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_3);
        if (likely(__pyx_t_6)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_6);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_3, function);
          __pyx_t_5 = 1;
        }
      }
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_3)) {
        PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_t_10, __pyx_t_9};
        __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 561, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
        PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_t_10, __pyx_t_9};
        __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 561, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else
      #endif
      {
        __pyx_t_11 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 561, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_11);
        if (__pyx_t_6) {
          __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_6); __pyx_t_6 = NULL;
        }
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_5, __pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_9);
        PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_5, __pyx_t_9);
        __pyx_t_10 = 0;
        __pyx_t_9 = 0;
        __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_11, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 561, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_3)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_3) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 561, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 561, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 561, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        } else
        #endif
        {
          __pyx_t_11 = PyTuple_New(1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 561, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_3); __pyx_t_3 = NULL;
          __Pyx_GIVEREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_11, 0+1, __pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_11, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 561, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 561, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
      __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":560
 *             result += self.NlPlusStr(self.BlocType(self.Step))
 *             result += self.NlPlusStr(self.DeclarationMatrice(self.Step))
 *             if self.NetSource.outputCount > 1:             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtStdDev, self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":562
 *             if self.NetSource.outputCount > 1:
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtStdDev, self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))             # <<<<<<<<<<<<<<
 *             if result != '':
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 562, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeProtoProcedure); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 562, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 562, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_9 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_9)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_9);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_9) {
      __pyx_t_11 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 562, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_11);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_11 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 562, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_3};
        __pyx_t_11 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 562, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 562, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_10, NULL); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 562, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_11); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 562, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_11};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 562, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_11};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 562, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      } else
      #endif
      {
        __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 562, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_11);
        PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_11);
        __pyx_t_11 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 562, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 562, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":563
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtStdDev, self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 *         return result
 */
    __pyx_t_8 = (__Pyx_PyUnicode_Equals(__pyx_v_result, __pyx_kp_u_, Py_NE)); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 563, __pyx_L1_error)
    if (__pyx_t_8) {

      /* "metaphor/monal/lcode/codewriter.py":564
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))             # <<<<<<<<<<<<<<
 *         return result
 * 
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NlPlusStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 564, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeFinInclus); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 564, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Step_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 564, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_11))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_11);
        if (likely(__pyx_t_3)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_11);
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_11, function);
        }
      }
      if (!__pyx_t_3) {
        __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_t_4); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 564, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_10);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_11)) {
          PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
          __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_11, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 564, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_11)) {
          PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_t_4};
          __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_11, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 564, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        } else
        #endif
        {
          __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 564, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_3); __pyx_t_3 = NULL;
          __Pyx_GIVEREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_9, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 564, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_11 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_2);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_2, function);
        }
      }
      if (!__pyx_t_11) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_10); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 564, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
          __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 564, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
          PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
          __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 564, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        } else
        #endif
        {
          __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 564, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_11); __pyx_t_11 = NULL;
          __Pyx_GIVEREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_10);
          __pyx_t_10 = 0;
          __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_9, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 564, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 564, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_2);
      __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":563
 *                 result += self.NlPlusStr(self.DeclarationVecteur(CC.vtStdDev, self.Step))
 *             result += self.NlPlusStr(self.CodeProtoProcedure(self.Step))
 *             if result != '':             # <<<<<<<<<<<<<<
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 *         return result
 */
    }
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":565
 *             if result != '':
 *                 result += self.NlPlusStr(self.CodeFinInclus(self.Step))
 *         return result             # <<<<<<<<<<<<<<
 * 
 * #--- fin code interne sans template -------------------------------------------
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_result);
  __pyx_r = __pyx_v_result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":541
 *     #===========================================================================
 * 
 *     def CodeFichierTransfertLeverageInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftTransfertLeverage, 0)
 *         result = self.CommentTeteFichier()
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFichierTransfertLeverageInterne", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_result);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":572
 * #         return self.TransferStr(Indent0, original=self.NetSource.originallink)
 * 
 *     def TransferStr(self, Indent0=1):  #, original=True):             # <<<<<<<<<<<<<<
 *         original = self.originallink
 *         try:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_47TransferStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_47TransferStr = {"TransferStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_47TransferStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_47TransferStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_Indent0 = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("TransferStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent0,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_1));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent0);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "TransferStr") < 0)) __PYX_ERR(0, 572, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent0 = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("TransferStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 572, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.TransferStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_46TransferStr(__pyx_self, __pyx_v_self, __pyx_v_Indent0);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_46TransferStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Indent0) {
  PyObject *__pyx_v_original = NULL;
  PyObject *__pyx_v_nmodel = NULL;
  PyObject *__pyx_v_needPotential = NULL;
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_v_node = NULL;
  PyObject *__pyx_v_st = NULL;
  PyObject *__pyx_v_needpot = NULL;
  PyObject *__pyx_v_Result = NULL;
  PyObject *__pyx_v_St0 = NULL;
  PyObject *__pyx_v_i = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  int __pyx_t_7;
  Py_ssize_t __pyx_t_8;
  PyObject *(*__pyx_t_9)(PyObject *);
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  PyObject *(*__pyx_t_12)(PyObject *);
  int __pyx_t_13;
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  PyObject *__pyx_t_16 = NULL;
  PyObject *__pyx_t_17 = NULL;
  PyObject *__pyx_t_18 = NULL;
  int __pyx_t_19;
  __Pyx_RefNannySetupContext("TransferStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":573
 * 
 *     def TransferStr(self, Indent0=1):  #, original=True):
 *         original = self.originallink             # <<<<<<<<<<<<<<
 *         try:
 *             nmodel = self.NetSource.modelCount
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_originallink_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 573, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_original = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":574
 *     def TransferStr(self, Indent0=1):  #, original=True):
 *         original = self.originallink
 *         try:             # <<<<<<<<<<<<<<
 *             nmodel = self.NetSource.modelCount
 *         except:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_2, &__pyx_t_3, &__pyx_t_4);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_4);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":575
 *         original = self.originallink
 *         try:
 *             nmodel = self.NetSource.modelCount             # <<<<<<<<<<<<<<
 *         except:
 *             nmodel = 1
 */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 575, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_modelCount); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 575, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_nmodel = __pyx_t_5;
      __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":574
 *     def TransferStr(self, Indent0=1):  #, original=True):
 *         original = self.originallink
 *         try:             # <<<<<<<<<<<<<<
 *             nmodel = self.NetSource.modelCount
 *         except:
 */
    }
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":576
 *         try:
 *             nmodel = self.NetSource.modelCount
 *         except:             # <<<<<<<<<<<<<<
 *             nmodel = 1
 *         if nmodel > 1:
 */
    /*except:*/ {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.TransferStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_1, &__pyx_t_6) < 0) __PYX_ERR(0, 576, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_GOTREF(__pyx_t_6);

      /* "metaphor/monal/lcode/codewriter.py":577
 *             nmodel = self.NetSource.modelCount
 *         except:
 *             nmodel = 1             # <<<<<<<<<<<<<<
 *         if nmodel > 1:
 *             return ""
 */
      __Pyx_INCREF(__pyx_int_1);
      __Pyx_XDECREF_SET(__pyx_v_nmodel, __pyx_int_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_exception_handled;
    }
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":574
 *     def TransferStr(self, Indent0=1):  #, original=True):
 *         original = self.originallink
 *         try:             # <<<<<<<<<<<<<<
 *             nmodel = self.NetSource.modelCount
 *         except:
 */
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_XGIVEREF(__pyx_t_4);
    __Pyx_ExceptionReset(__pyx_t_2, __pyx_t_3, __pyx_t_4);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_XGIVEREF(__pyx_t_4);
    __Pyx_ExceptionReset(__pyx_t_2, __pyx_t_3, __pyx_t_4);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":578
 *         except:
 *             nmodel = 1
 *         if nmodel > 1:             # <<<<<<<<<<<<<<
 *             return ""
 *         needPotential = False
 */
  __pyx_t_6 = PyObject_RichCompare(__pyx_v_nmodel, __pyx_int_1, Py_GT); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 578, __pyx_L1_error)
  __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 578, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_7) {

    /* "metaphor/monal/lcode/codewriter.py":579
 *             nmodel = 1
 *         if nmodel > 1:
 *             return ""             # <<<<<<<<<<<<<<
 *         needPotential = False
 *         lst = [""]
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_kp_u_);
    __pyx_r = __pyx_kp_u_;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":578
 *         except:
 *             nmodel = 1
 *         if nmodel > 1:             # <<<<<<<<<<<<<<
 *             return ""
 *         needPotential = False
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":580
 *         if nmodel > 1:
 *             return ""
 *         needPotential = False             # <<<<<<<<<<<<<<
 *         lst = [""]
 *         for node in self.NetSource.computedNodes():
 */
  __Pyx_INCREF(Py_False);
  __pyx_v_needPotential = Py_False;

  /* "metaphor/monal/lcode/codewriter.py":581
 *             return ""
 *         needPotential = False
 *         lst = [""]             # <<<<<<<<<<<<<<
 *         for node in self.NetSource.computedNodes():
 *             st, needpot = self.ChaineCodeNeurone(node, Indent0, False, False,
 */
  __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 581, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_INCREF(__pyx_kp_u_);
  __Pyx_GIVEREF(__pyx_kp_u_);
  PyList_SET_ITEM(__pyx_t_6, 0, __pyx_kp_u_);
  __pyx_v_lst = ((PyObject*)__pyx_t_6);
  __pyx_t_6 = 0;

  /* "metaphor/monal/lcode/codewriter.py":582
 *         needPotential = False
 *         lst = [""]
 *         for node in self.NetSource.computedNodes():             # <<<<<<<<<<<<<<
 *             st, needpot = self.ChaineCodeNeurone(node, Indent0, False, False,
 *                 withneedpot=True, extranorm=True, original=original)
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 582, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_computedNodes); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 582, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
    __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5);
    if (likely(__pyx_t_1)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
      __Pyx_INCREF(__pyx_t_1);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_5, function);
    }
  }
  if (__pyx_t_1) {
    __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 582, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  } else {
    __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 582, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (likely(PyList_CheckExact(__pyx_t_6)) || PyTuple_CheckExact(__pyx_t_6)) {
    __pyx_t_5 = __pyx_t_6; __Pyx_INCREF(__pyx_t_5); __pyx_t_8 = 0;
    __pyx_t_9 = NULL;
  } else {
    __pyx_t_8 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 582, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_9 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 582, __pyx_L1_error)
  }
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  for (;;) {
    if (likely(!__pyx_t_9)) {
      if (likely(PyList_CheckExact(__pyx_t_5))) {
        if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_5)) break;
        #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        __pyx_t_6 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_8); __Pyx_INCREF(__pyx_t_6); __pyx_t_8++; if (unlikely(0 < 0)) __PYX_ERR(0, 582, __pyx_L1_error)
        #else
        __pyx_t_6 = PySequence_ITEM(__pyx_t_5, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 582, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        #endif
      } else {
        if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
        #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_8); __Pyx_INCREF(__pyx_t_6); __pyx_t_8++; if (unlikely(0 < 0)) __PYX_ERR(0, 582, __pyx_L1_error)
        #else
        __pyx_t_6 = PySequence_ITEM(__pyx_t_5, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 582, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_6);
        #endif
      }
    } else {
      __pyx_t_6 = __pyx_t_9(__pyx_t_5);
      if (unlikely(!__pyx_t_6)) {
        PyObject* exc_type = PyErr_Occurred();
        if (exc_type) {
          if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
          else __PYX_ERR(0, 582, __pyx_L1_error)
        }
        break;
      }
      __Pyx_GOTREF(__pyx_t_6);
    }
    __Pyx_XDECREF_SET(__pyx_v_node, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":583
 *         lst = [""]
 *         for node in self.NetSource.computedNodes():
 *             st, needpot = self.ChaineCodeNeurone(node, Indent0, False, False,             # <<<<<<<<<<<<<<
 *                 withneedpot=True, extranorm=True, original=original)
 *             needPotential |= needpot
 */
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ChaineCodeNeurone); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 583, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 583, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_INCREF(__pyx_v_node);
    __Pyx_GIVEREF(__pyx_v_node);
    PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_node);
    __Pyx_INCREF(__pyx_v_Indent0);
    __Pyx_GIVEREF(__pyx_v_Indent0);
    PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_Indent0);
    __Pyx_INCREF(Py_False);
    __Pyx_GIVEREF(Py_False);
    PyTuple_SET_ITEM(__pyx_t_1, 2, Py_False);
    __Pyx_INCREF(Py_False);
    __Pyx_GIVEREF(Py_False);
    PyTuple_SET_ITEM(__pyx_t_1, 3, Py_False);

    /* "metaphor/monal/lcode/codewriter.py":584
 *         for node in self.NetSource.computedNodes():
 *             st, needpot = self.ChaineCodeNeurone(node, Indent0, False, False,
 *                 withneedpot=True, extranorm=True, original=original)             # <<<<<<<<<<<<<<
 *             needPotential |= needpot
 *             lst.append(st)
 */
    __pyx_t_10 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 584, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_withneedpot, Py_True) < 0) __PYX_ERR(0, 584, __pyx_L1_error)
    if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_extranorm, Py_True) < 0) __PYX_ERR(0, 584, __pyx_L1_error)
    if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_original, __pyx_v_original) < 0) __PYX_ERR(0, 584, __pyx_L1_error)

    /* "metaphor/monal/lcode/codewriter.py":583
 *         lst = [""]
 *         for node in self.NetSource.computedNodes():
 *             st, needpot = self.ChaineCodeNeurone(node, Indent0, False, False,             # <<<<<<<<<<<<<<
 *                 withneedpot=True, extranorm=True, original=original)
 *             needPotential |= needpot
 */
    __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 583, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_11);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    if ((likely(PyTuple_CheckExact(__pyx_t_11))) || (PyList_CheckExact(__pyx_t_11))) {
      PyObject* sequence = __pyx_t_11;
      Py_ssize_t size = __Pyx_PySequence_SIZE(sequence);
      if (unlikely(size != 2)) {
        if (size > 2) __Pyx_RaiseTooManyValuesError(2);
        else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
        __PYX_ERR(0, 583, __pyx_L1_error)
      }
      #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
      if (likely(PyTuple_CheckExact(sequence))) {
        __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0); 
        __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); 
      } else {
        __pyx_t_10 = PyList_GET_ITEM(sequence, 0); 
        __pyx_t_1 = PyList_GET_ITEM(sequence, 1); 
      }
      __Pyx_INCREF(__pyx_t_10);
      __Pyx_INCREF(__pyx_t_1);
      #else
      __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 583, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 583, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      #endif
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
    } else {
      Py_ssize_t index = -1;
      __pyx_t_6 = PyObject_GetIter(__pyx_t_11); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 583, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_12 = Py_TYPE(__pyx_t_6)->tp_iternext;
      index = 0; __pyx_t_10 = __pyx_t_12(__pyx_t_6); if (unlikely(!__pyx_t_10)) goto __pyx_L14_unpacking_failed;
      __Pyx_GOTREF(__pyx_t_10);
      index = 1; __pyx_t_1 = __pyx_t_12(__pyx_t_6); if (unlikely(!__pyx_t_1)) goto __pyx_L14_unpacking_failed;
      __Pyx_GOTREF(__pyx_t_1);
      if (__Pyx_IternextUnpackEndCheck(__pyx_t_12(__pyx_t_6), 2) < 0) __PYX_ERR(0, 583, __pyx_L1_error)
      __pyx_t_12 = NULL;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L15_unpacking_done;
      __pyx_L14_unpacking_failed:;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_12 = NULL;
      if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
      __PYX_ERR(0, 583, __pyx_L1_error)
      __pyx_L15_unpacking_done:;
    }
    __Pyx_XDECREF_SET(__pyx_v_st, __pyx_t_10);
    __pyx_t_10 = 0;
    __Pyx_XDECREF_SET(__pyx_v_needpot, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":585
 *             st, needpot = self.ChaineCodeNeurone(node, Indent0, False, False,
 *                 withneedpot=True, extranorm=True, original=original)
 *             needPotential |= needpot             # <<<<<<<<<<<<<<
 *             lst.append(st)
 * 
 */
    __pyx_t_11 = PyNumber_InPlaceOr(__pyx_v_needPotential, __pyx_v_needpot); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 585, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_11);
    __Pyx_DECREF_SET(__pyx_v_needPotential, __pyx_t_11);
    __pyx_t_11 = 0;

    /* "metaphor/monal/lcode/codewriter.py":586
 *                 withneedpot=True, extranorm=True, original=original)
 *             needPotential |= needpot
 *             lst.append(st)             # <<<<<<<<<<<<<<
 * 
 *             #ici
 */
    __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_lst, __pyx_v_st); if (unlikely(__pyx_t_13 == ((int)-1))) __PYX_ERR(0, 586, __pyx_L1_error)

    /* "metaphor/monal/lcode/codewriter.py":582
 *         needPotential = False
 *         lst = [""]
 *         for node in self.NetSource.computedNodes():             # <<<<<<<<<<<<<<
 *             st, needpot = self.ChaineCodeNeurone(node, Indent0, False, False,
 *                 withneedpot=True, extranorm=True, original=original)
 */
  }
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

  /* "metaphor/monal/lcode/codewriter.py":590
 *             #ici
 * 
 *         Result = (CC.nl).join(lst)             # <<<<<<<<<<<<<<
 *         if self.NetworkKind == CC.nkDyn:
 *             St0 = self.DebutLigne(Indent0)
 */
  __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 590, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_11);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_nl); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 590, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
  __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_join); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 590, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_11);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_11))) {
    __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_11);
    if (likely(__pyx_t_1)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_11);
      __Pyx_INCREF(__pyx_t_1);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_11, function);
    }
  }
  if (!__pyx_t_1) {
    __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_v_lst); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 590, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_11)) {
      PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_v_lst};
      __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_11, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 590, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_GOTREF(__pyx_t_5);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_11)) {
      PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_v_lst};
      __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_11, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 590, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_GOTREF(__pyx_t_5);
    } else
    #endif
    {
      __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 590, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_1); __pyx_t_1 = NULL;
      __Pyx_INCREF(__pyx_v_lst);
      __Pyx_GIVEREF(__pyx_v_lst);
      PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_v_lst);
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_10, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 590, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
  __pyx_v_Result = __pyx_t_5;
  __pyx_t_5 = 0;

  /* "metaphor/monal/lcode/codewriter.py":591
 * 
 *         Result = (CC.nl).join(lst)
 *         if self.NetworkKind == CC.nkDyn:             # <<<<<<<<<<<<<<
 *             St0 = self.DebutLigne(Indent0)
 *             Result += CC.nl
 */
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetworkKind); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_11);
  __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_nkDyn); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_10);
  __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
  __pyx_t_11 = PyObject_RichCompare(__pyx_t_5, __pyx_t_10, Py_EQ); __Pyx_XGOTREF(__pyx_t_11); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
  __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_11); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 591, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
  if (__pyx_t_7) {

    /* "metaphor/monal/lcode/codewriter.py":592
 *         Result = (CC.nl).join(lst)
 *         if self.NetworkKind == CC.nkDyn:
 *             St0 = self.DebutLigne(Indent0)             # <<<<<<<<<<<<<<
 *             Result += CC.nl
 *             for i in range(self.NetSource.order):
 */
    __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DebutLigne); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 592, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_10);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_10, function);
      }
    }
    if (!__pyx_t_5) {
      __pyx_t_11 = __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_v_Indent0); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 592, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_11);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_10)) {
        PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_Indent0};
        __pyx_t_11 = __Pyx_PyFunction_FastCall(__pyx_t_10, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 592, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_GOTREF(__pyx_t_11);
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_10)) {
        PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_Indent0};
        __pyx_t_11 = __Pyx_PyCFunction_FastCall(__pyx_t_10, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 592, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_GOTREF(__pyx_t_11);
      } else
      #endif
      {
        __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 592, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL;
        __Pyx_INCREF(__pyx_v_Indent0);
        __Pyx_GIVEREF(__pyx_v_Indent0);
        PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_v_Indent0);
        __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_1, NULL); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 592, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    __pyx_v_St0 = __pyx_t_11;
    __pyx_t_11 = 0;

    /* "metaphor/monal/lcode/codewriter.py":593
 *         if self.NetworkKind == CC.nkDyn:
 *             St0 = self.DebutLigne(Indent0)
 *             Result += CC.nl             # <<<<<<<<<<<<<<
 *             for i in range(self.NetSource.order):
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),
 */
    __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 593, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_11);
    __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_nl); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 593, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
    __pyx_t_11 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 593, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_11);
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_11);
    __pyx_t_11 = 0;

    /* "metaphor/monal/lcode/codewriter.py":594
 *             St0 = self.DebutLigne(Indent0)
 *             Result += CC.nl
 *             for i in range(self.NetSource.order):             # <<<<<<<<<<<<<<
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf
 */
    __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 594, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_11);
    __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_order); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 594, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
    __pyx_t_11 = __Pyx_PyObject_CallOneArg(__pyx_builtin_range, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 594, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_11);
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    if (likely(PyList_CheckExact(__pyx_t_11)) || PyTuple_CheckExact(__pyx_t_11)) {
      __pyx_t_10 = __pyx_t_11; __Pyx_INCREF(__pyx_t_10); __pyx_t_8 = 0;
      __pyx_t_9 = NULL;
    } else {
      __pyx_t_8 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_t_11); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 594, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_9 = Py_TYPE(__pyx_t_10)->tp_iternext; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 594, __pyx_L1_error)
    }
    __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
    for (;;) {
      if (likely(!__pyx_t_9)) {
        if (likely(PyList_CheckExact(__pyx_t_10))) {
          if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_10)) break;
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_11 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_8); __Pyx_INCREF(__pyx_t_11); __pyx_t_8++; if (unlikely(0 < 0)) __PYX_ERR(0, 594, __pyx_L1_error)
          #else
          __pyx_t_11 = PySequence_ITEM(__pyx_t_10, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 594, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_11);
          #endif
        } else {
          if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_10)) break;
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_11 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_8); __Pyx_INCREF(__pyx_t_11); __pyx_t_8++; if (unlikely(0 < 0)) __PYX_ERR(0, 594, __pyx_L1_error)
          #else
          __pyx_t_11 = PySequence_ITEM(__pyx_t_10, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 594, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_11);
          #endif
        }
      } else {
        __pyx_t_11 = __pyx_t_9(__pyx_t_10);
        if (unlikely(!__pyx_t_11)) {
          PyObject* exc_type = PyErr_Occurred();
          if (exc_type) {
            if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
            else __PYX_ERR(0, 594, __pyx_L1_error)
          }
          break;
        }
        __Pyx_GOTREF(__pyx_t_11);
      }
      __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_11);
      __pyx_t_11 = 0;

      /* "metaphor/monal/lcode/codewriter.py":595
 *             Result += CC.nl
 *             for i in range(self.NetSource.order):
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),             # <<<<<<<<<<<<<<
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf
 *         if needPotential:
 */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DoAffect); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 595, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ChaineEtat); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 595, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_14 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_14 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_14)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_14);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      if (!__pyx_t_14) {
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_v_i); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 595, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_6)) {
          PyObject *__pyx_temp[2] = {__pyx_t_14, __pyx_v_i};
          __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 595, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_GOTREF(__pyx_t_5);
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
          PyObject *__pyx_temp[2] = {__pyx_t_14, __pyx_v_i};
          __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 595, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_GOTREF(__pyx_t_5);
        } else
        #endif
        {
          __pyx_t_15 = PyTuple_New(1+1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 595, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_15);
          __Pyx_GIVEREF(__pyx_t_14); PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_t_14); __pyx_t_14 = NULL;
          __Pyx_INCREF(__pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_15, 0+1, __pyx_v_i);
          __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_15, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 595, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

      /* "metaphor/monal/lcode/codewriter.py":596
 *             for i in range(self.NetSource.order):
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf             # <<<<<<<<<<<<<<
 *         if needPotential:
 *             Result = " "*Indent0 +  "real potential;\n" + Result
 */
      __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ChaineSortieNeurone); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 596, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_15);
      __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 596, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_16);
      __pyx_t_17 = __Pyx_PyObject_GetAttrStr(__pyx_t_16, __pyx_n_s_StateNode); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 596, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_17);
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __pyx_t_16 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_17))) {
        __pyx_t_16 = PyMethod_GET_SELF(__pyx_t_17);
        if (likely(__pyx_t_16)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_17);
          __Pyx_INCREF(__pyx_t_16);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_17, function);
        }
      }
      if (!__pyx_t_16) {
        __pyx_t_14 = __Pyx_PyObject_CallOneArg(__pyx_t_17, __pyx_v_i); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 596, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_14);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_17)) {
          PyObject *__pyx_temp[2] = {__pyx_t_16, __pyx_v_i};
          __pyx_t_14 = __Pyx_PyFunction_FastCall(__pyx_t_17, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 596, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_GOTREF(__pyx_t_14);
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_17)) {
          PyObject *__pyx_temp[2] = {__pyx_t_16, __pyx_v_i};
          __pyx_t_14 = __Pyx_PyCFunction_FastCall(__pyx_t_17, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 596, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_GOTREF(__pyx_t_14);
        } else
        #endif
        {
          __pyx_t_18 = PyTuple_New(1+1); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 596, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_18);
          __Pyx_GIVEREF(__pyx_t_16); PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_16); __pyx_t_16 = NULL;
          __Pyx_INCREF(__pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_18, 0+1, __pyx_v_i);
          __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_17, __pyx_t_18, NULL); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 596, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_14);
          __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
      __pyx_t_17 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_15))) {
        __pyx_t_17 = PyMethod_GET_SELF(__pyx_t_15);
        if (likely(__pyx_t_17)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_15);
          __Pyx_INCREF(__pyx_t_17);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_15, function);
        }
      }
      if (!__pyx_t_17) {
        __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_15, __pyx_t_14); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 596, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
        __Pyx_GOTREF(__pyx_t_6);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_15)) {
          PyObject *__pyx_temp[2] = {__pyx_t_17, __pyx_t_14};
          __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_15, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 596, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_15)) {
          PyObject *__pyx_temp[2] = {__pyx_t_17, __pyx_t_14};
          __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_15, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 596, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
        } else
        #endif
        {
          __pyx_t_18 = PyTuple_New(1+1); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 596, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_18);
          __Pyx_GIVEREF(__pyx_t_17); PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_17); __pyx_t_17 = NULL;
          __Pyx_GIVEREF(__pyx_t_14);
          PyTuple_SET_ITEM(__pyx_t_18, 0+1, __pyx_t_14);
          __pyx_t_14 = 0;
          __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_t_18, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 596, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
      __pyx_t_15 = NULL;
      __pyx_t_19 = 0;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_15)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_15);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
          __pyx_t_19 = 1;
        }
      }
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[3] = {__pyx_t_15, __pyx_t_5, __pyx_t_6};
        __pyx_t_11 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_19, 2+__pyx_t_19); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 595, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
        PyObject *__pyx_temp[3] = {__pyx_t_15, __pyx_t_5, __pyx_t_6};
        __pyx_t_11 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_19, 2+__pyx_t_19); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 595, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_18 = PyTuple_New(2+__pyx_t_19); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 595, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_18);
        if (__pyx_t_15) {
          __Pyx_GIVEREF(__pyx_t_15); PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_15); __pyx_t_15 = NULL;
        }
        __Pyx_GIVEREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_18, 0+__pyx_t_19, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_18, 1+__pyx_t_19, __pyx_t_6);
        __pyx_t_5 = 0;
        __pyx_t_6 = 0;
        __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_18, NULL); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 595, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "metaphor/monal/lcode/codewriter.py":595
 *             Result += CC.nl
 *             for i in range(self.NetSource.order):
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),             # <<<<<<<<<<<<<<
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf
 *         if needPotential:
 */
      __pyx_t_1 = PyNumber_Add(__pyx_v_St0, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 595, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;

      /* "metaphor/monal/lcode/codewriter.py":596
 *             for i in range(self.NetSource.order):
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf             # <<<<<<<<<<<<<<
 *         if needPotential:
 *             Result = " "*Indent0 +  "real potential;\n" + Result
 */
      __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 596, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_18 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_nlf); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 596, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_18);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_11 = PyNumber_Add(__pyx_t_1, __pyx_t_18); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 596, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;

      /* "metaphor/monal/lcode/codewriter.py":595
 *             Result += CC.nl
 *             for i in range(self.NetSource.order):
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),             # <<<<<<<<<<<<<<
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf
 *         if needPotential:
 */
      __pyx_t_18 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_11); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 595, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_18);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_18);
      __pyx_t_18 = 0;

      /* "metaphor/monal/lcode/codewriter.py":594
 *             St0 = self.DebutLigne(Indent0)
 *             Result += CC.nl
 *             for i in range(self.NetSource.order):             # <<<<<<<<<<<<<<
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf
 */
    }
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

    /* "metaphor/monal/lcode/codewriter.py":591
 * 
 *         Result = (CC.nl).join(lst)
 *         if self.NetworkKind == CC.nkDyn:             # <<<<<<<<<<<<<<
 *             St0 = self.DebutLigne(Indent0)
 *             Result += CC.nl
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":597
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf
 *         if needPotential:             # <<<<<<<<<<<<<<
 *             Result = " "*Indent0 +  "real potential;\n" + Result
 *         return Result
 */
  __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_needPotential); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 597, __pyx_L1_error)
  if (__pyx_t_7) {

    /* "metaphor/monal/lcode/codewriter.py":598
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf
 *         if needPotential:
 *             Result = " "*Indent0 +  "real potential;\n" + Result             # <<<<<<<<<<<<<<
 *         return Result
 * 
 */
    __pyx_t_10 = PyNumber_Multiply(__pyx_kp_u__14, __pyx_v_Indent0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 598, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __pyx_t_18 = PyNumber_Add(__pyx_t_10, __pyx_kp_u_real_potential); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 598, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_18);
    __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
    __pyx_t_10 = PyNumber_Add(__pyx_t_18, __pyx_v_Result); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 598, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_10);
    __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_10);
    __pyx_t_10 = 0;

    /* "metaphor/monal/lcode/codewriter.py":597
 *                 Result += St0 + self.DoAffect(self.ChaineEtat(i),
 *                     self.ChaineSortieNeurone(self.NetSource.StateNode(i))) + CC.nlf
 *         if needPotential:             # <<<<<<<<<<<<<<
 *             Result = " "*Indent0 +  "real potential;\n" + Result
 *         return Result
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":599
 *         if needPotential:
 *             Result = " "*Indent0 +  "real potential;\n" + Result
 *         return Result             # <<<<<<<<<<<<<<
 * 
 * #--- fin de blocs de code -----------------------------------------------------
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_Result);
  __pyx_r = __pyx_v_Result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":572
 * #         return self.TransferStr(Indent0, original=self.NetSource.originallink)
 * 
 *     def TransferStr(self, Indent0=1):  #, original=True):             # <<<<<<<<<<<<<<
 *         original = self.originallink
 *         try:
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_XDECREF(__pyx_t_16);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.TransferStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_original);
  __Pyx_XDECREF(__pyx_v_nmodel);
  __Pyx_XDECREF(__pyx_v_needPotential);
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_v_node);
  __Pyx_XDECREF(__pyx_v_st);
  __Pyx_XDECREF(__pyx_v_needpot);
  __Pyx_XDECREF(__pyx_v_Result);
  __Pyx_XDECREF(__pyx_v_St0);
  __Pyx_XDECREF(__pyx_v_i);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":602
 * 
 * #--- fin de blocs de code -----------------------------------------------------
 *     def GetTextFromID(self, TextID, MarkupList=None):             # <<<<<<<<<<<<<<
 *         try:
 *             if self._GetString:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_49GetTextFromID(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_49GetTextFromID = {"GetTextFromID", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_49GetTextFromID, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_49GetTextFromID(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_TextID = 0;
  PyObject *__pyx_v_MarkupList = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetTextFromID (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_TextID,&__pyx_n_s_MarkupList,0};
    PyObject* values[3] = {0,0,0};
    values[2] = ((PyObject *)((PyObject *)Py_None));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_TextID)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("GetTextFromID", 0, 2, 3, 1); __PYX_ERR(0, 602, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_MarkupList);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetTextFromID") < 0)) __PYX_ERR(0, 602, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_TextID = values[1];
    __pyx_v_MarkupList = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetTextFromID", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 602, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTextFromID", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_48GetTextFromID(__pyx_self, __pyx_v_self, __pyx_v_TextID, __pyx_v_MarkupList);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_48GetTextFromID(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_TextID, PyObject *__pyx_v_MarkupList) {
  PyObject *__pyx_v_Result = NULL;
  PyObject *__pyx_v_stt = NULL;
  PyObject *__pyx_v_st = NULL;
  PyObject *__pyx_v_stb = NULL;
  PyObject *__pyx_v_err = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  int __pyx_t_9;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  PyObject *__pyx_t_12 = NULL;
  PyObject *__pyx_t_13 = NULL;
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  int __pyx_t_16;
  char const *__pyx_t_17;
  PyObject *__pyx_t_18 = NULL;
  PyObject *__pyx_t_19 = NULL;
  PyObject *__pyx_t_20 = NULL;
  __Pyx_RefNannySetupContext("GetTextFromID", 0);

  /* "metaphor/monal/lcode/codewriter.py":603
 * #--- fin de blocs de code -----------------------------------------------------
 *     def GetTextFromID(self, TextID, MarkupList=None):
 *         try:             # <<<<<<<<<<<<<<
 *             if self._GetString:
 *                 Result = ""
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":604
 *     def GetTextFromID(self, TextID, MarkupList=None):
 *         try:
 *             if self._GetString:             # <<<<<<<<<<<<<<
 *                 Result = ""
 *                 stt = self._GetString(self, TextID, Result, MarkupList, self.CipherKey)
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetString); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 604, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 604, __pyx_L3_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_5) {

        /* "metaphor/monal/lcode/codewriter.py":605
 *         try:
 *             if self._GetString:
 *                 Result = ""             # <<<<<<<<<<<<<<
 *                 stt = self._GetString(self, TextID, Result, MarkupList, self.CipherKey)
 *             else:
 */
        __Pyx_INCREF(__pyx_kp_u_);
        __pyx_v_Result = __pyx_kp_u_;

        /* "metaphor/monal/lcode/codewriter.py":606
 *             if self._GetString:
 *                 Result = ""
 *                 stt = self._GetString(self, TextID, Result, MarkupList, self.CipherKey)             # <<<<<<<<<<<<<<
 *             else:
 *                 try:
 */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetString); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 606, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CipherKey_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 606, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_8 = NULL;
        __pyx_t_9 = 0;
        if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
          __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6);
          if (likely(__pyx_t_8)) {
            PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
            __Pyx_INCREF(__pyx_t_8);
            __Pyx_INCREF(function);
            __Pyx_DECREF_SET(__pyx_t_6, function);
            __pyx_t_9 = 1;
          }
        }
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_6)) {
          PyObject *__pyx_temp[6] = {__pyx_t_8, __pyx_v_self, __pyx_v_TextID, __pyx_v_Result, __pyx_v_MarkupList, __pyx_t_7};
          __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_9, 5+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 606, __pyx_L3_error)
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
          PyObject *__pyx_temp[6] = {__pyx_t_8, __pyx_v_self, __pyx_v_TextID, __pyx_v_Result, __pyx_v_MarkupList, __pyx_t_7};
          __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_9, 5+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 606, __pyx_L3_error)
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        } else
        #endif
        {
          __pyx_t_10 = PyTuple_New(5+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 606, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_10);
          if (__pyx_t_8) {
            __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
          }
          __Pyx_INCREF(__pyx_v_self);
          __Pyx_GIVEREF(__pyx_v_self);
          PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_v_self);
          __Pyx_INCREF(__pyx_v_TextID);
          __Pyx_GIVEREF(__pyx_v_TextID);
          PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_v_TextID);
          __Pyx_INCREF(__pyx_v_Result);
          __Pyx_GIVEREF(__pyx_v_Result);
          PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_v_Result);
          __Pyx_INCREF(__pyx_v_MarkupList);
          __Pyx_GIVEREF(__pyx_v_MarkupList);
          PyTuple_SET_ITEM(__pyx_t_10, 3+__pyx_t_9, __pyx_v_MarkupList);
          __Pyx_GIVEREF(__pyx_t_7);
          PyTuple_SET_ITEM(__pyx_t_10, 4+__pyx_t_9, __pyx_t_7);
          __pyx_t_7 = 0;
          __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 606, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_v_stt = __pyx_t_4;
        __pyx_t_4 = 0;

        /* "metaphor/monal/lcode/codewriter.py":604
 *     def GetTextFromID(self, TextID, MarkupList=None):
 *         try:
 *             if self._GetString:             # <<<<<<<<<<<<<<
 *                 Result = ""
 *                 stt = self._GetString(self, TextID, Result, MarkupList, self.CipherKey)
 */
        goto __pyx_L9;
      }

      /* "metaphor/monal/lcode/codewriter.py":608
 *                 stt = self._GetString(self, TextID, Result, MarkupList, self.CipherKey)
 *             else:
 *                 try:             # <<<<<<<<<<<<<<
 *                     st = self.getTemplate(TextID + 'c')
 *                     stb = xore(st, CC.proprietaryname)
 */
      /*else*/ {
        {
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __Pyx_ExceptionSave(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
          __Pyx_XGOTREF(__pyx_t_11);
          __Pyx_XGOTREF(__pyx_t_12);
          __Pyx_XGOTREF(__pyx_t_13);
          /*try:*/ {

            /* "metaphor/monal/lcode/codewriter.py":609
 *             else:
 *                 try:
 *                     st = self.getTemplate(TextID + 'c')             # <<<<<<<<<<<<<<
 *                     stb = xore(st, CC.proprietaryname)
 *                     if PY3:  #isinstance(stb, bytes):
 */
            __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_getTemplate); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 609, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_10 = PyNumber_Add(__pyx_v_TextID, __pyx_n_u_c); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 609, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_7 = NULL;
            if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
              __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
              if (likely(__pyx_t_7)) {
                PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
                __Pyx_INCREF(__pyx_t_7);
                __Pyx_INCREF(function);
                __Pyx_DECREF_SET(__pyx_t_6, function);
              }
            }
            if (!__pyx_t_7) {
              __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_10); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 609, __pyx_L10_error)
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              __Pyx_GOTREF(__pyx_t_4);
            } else {
              #if CYTHON_FAST_PYCALL
              if (PyFunction_Check(__pyx_t_6)) {
                PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_10};
                __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 609, __pyx_L10_error)
                __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
                __Pyx_GOTREF(__pyx_t_4);
                __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              } else
              #endif
              #if CYTHON_FAST_PYCCALL
              if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
                PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_10};
                __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 609, __pyx_L10_error)
                __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
                __Pyx_GOTREF(__pyx_t_4);
                __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              } else
              #endif
              {
                __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 609, __pyx_L10_error)
                __Pyx_GOTREF(__pyx_t_8);
                __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
                __Pyx_GIVEREF(__pyx_t_10);
                PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_10);
                __pyx_t_10 = 0;
                __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 609, __pyx_L10_error)
                __Pyx_GOTREF(__pyx_t_4);
                __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
              }
            }
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_v_st = __pyx_t_4;
            __pyx_t_4 = 0;

            /* "metaphor/monal/lcode/codewriter.py":610
 *                 try:
 *                     st = self.getTemplate(TextID + 'c')
 *                     stb = xore(st, CC.proprietaryname)             # <<<<<<<<<<<<<<
 *                     if PY3:  #isinstance(stb, bytes):
 *                         stt = str(stb, "ISO-8859-1")
 */
            __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_xore); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 610, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 610, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_proprietaryname); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 610, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __pyx_t_8 = NULL;
            __pyx_t_9 = 0;
            if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) {
              __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6);
              if (likely(__pyx_t_8)) {
                PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
                __Pyx_INCREF(__pyx_t_8);
                __Pyx_INCREF(function);
                __Pyx_DECREF_SET(__pyx_t_6, function);
                __pyx_t_9 = 1;
              }
            }
            #if CYTHON_FAST_PYCALL
            if (PyFunction_Check(__pyx_t_6)) {
              PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_v_st, __pyx_t_10};
              __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 610, __pyx_L10_error)
              __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
              __Pyx_GOTREF(__pyx_t_4);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            #if CYTHON_FAST_PYCCALL
            if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
              PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_v_st, __pyx_t_10};
              __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 610, __pyx_L10_error)
              __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
              __Pyx_GOTREF(__pyx_t_4);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            {
              __pyx_t_7 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 610, __pyx_L10_error)
              __Pyx_GOTREF(__pyx_t_7);
              if (__pyx_t_8) {
                __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = NULL;
              }
              __Pyx_INCREF(__pyx_v_st);
              __Pyx_GIVEREF(__pyx_v_st);
              PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_9, __pyx_v_st);
              __Pyx_GIVEREF(__pyx_t_10);
              PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_9, __pyx_t_10);
              __pyx_t_10 = 0;
              __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 610, __pyx_L10_error)
              __Pyx_GOTREF(__pyx_t_4);
              __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            }
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_v_stb = __pyx_t_4;
            __pyx_t_4 = 0;

            /* "metaphor/monal/lcode/codewriter.py":611
 *                     st = self.getTemplate(TextID + 'c')
 *                     stb = xore(st, CC.proprietaryname)
 *                     if PY3:  #isinstance(stb, bytes):             # <<<<<<<<<<<<<<
 *                         stt = str(stb, "ISO-8859-1")
 *                     else:
 */
            __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_PY3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 611, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 611, __pyx_L10_error)
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            if (__pyx_t_5) {

              /* "metaphor/monal/lcode/codewriter.py":612
 *                     stb = xore(st, CC.proprietaryname)
 *                     if PY3:  #isinstance(stb, bytes):
 *                         stt = str(stb, "ISO-8859-1")             # <<<<<<<<<<<<<<
 *                     else:
 *                         stt = stb
 */
              __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 612, __pyx_L10_error)
              __Pyx_GOTREF(__pyx_t_4);
              __Pyx_INCREF(__pyx_v_stb);
              __Pyx_GIVEREF(__pyx_v_stb);
              PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_stb);
              __Pyx_INCREF(__pyx_kp_u_ISO_8859_1);
              __Pyx_GIVEREF(__pyx_kp_u_ISO_8859_1);
              PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_kp_u_ISO_8859_1);
              __pyx_t_6 = __Pyx_PyObject_Call(((PyObject *)(&PyUnicode_Type)), __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 612, __pyx_L10_error)
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
              __pyx_v_stt = __pyx_t_6;
              __pyx_t_6 = 0;

              /* "metaphor/monal/lcode/codewriter.py":611
 *                     st = self.getTemplate(TextID + 'c')
 *                     stb = xore(st, CC.proprietaryname)
 *                     if PY3:  #isinstance(stb, bytes):             # <<<<<<<<<<<<<<
 *                         stt = str(stb, "ISO-8859-1")
 *                     else:
 */
              goto __pyx_L16;
            }

            /* "metaphor/monal/lcode/codewriter.py":614
 *                         stt = str(stb, "ISO-8859-1")
 *                     else:
 *                         stt = stb             # <<<<<<<<<<<<<<
 *                 except:
 *                     stt = self.getTemplate(TextID)
 */
            /*else*/ {
              __Pyx_INCREF(__pyx_v_stb);
              __pyx_v_stt = __pyx_v_stb;
            }
            __pyx_L16:;

            /* "metaphor/monal/lcode/codewriter.py":608
 *                 stt = self._GetString(self, TextID, Result, MarkupList, self.CipherKey)
 *             else:
 *                 try:             # <<<<<<<<<<<<<<
 *                     st = self.getTemplate(TextID + 'c')
 *                     stb = xore(st, CC.proprietaryname)
 */
          }
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;

          /* "metaphor/monal/lcode/codewriter.py":615
 *                     else:
 *                         stt = stb
 *                 except:             # <<<<<<<<<<<<<<
 *                     stt = self.getTemplate(TextID)
 *             return stt
 */
          /*except:*/ {
            __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTextFromID", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_4, &__pyx_t_7) < 0) __PYX_ERR(0, 615, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_GOTREF(__pyx_t_7);

            /* "metaphor/monal/lcode/codewriter.py":616
 *                         stt = stb
 *                 except:
 *                     stt = self.getTemplate(TextID)             # <<<<<<<<<<<<<<
 *             return stt
 *         except Exception as err:
 */
            __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_getTemplate); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 616, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_14 = NULL;
            if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
              __pyx_t_14 = PyMethod_GET_SELF(__pyx_t_8);
              if (likely(__pyx_t_14)) {
                PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
                __Pyx_INCREF(__pyx_t_14);
                __Pyx_INCREF(function);
                __Pyx_DECREF_SET(__pyx_t_8, function);
              }
            }
            if (!__pyx_t_14) {
              __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_v_TextID); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 616, __pyx_L12_except_error)
              __Pyx_GOTREF(__pyx_t_10);
            } else {
              #if CYTHON_FAST_PYCALL
              if (PyFunction_Check(__pyx_t_8)) {
                PyObject *__pyx_temp[2] = {__pyx_t_14, __pyx_v_TextID};
                __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 616, __pyx_L12_except_error)
                __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
                __Pyx_GOTREF(__pyx_t_10);
              } else
              #endif
              #if CYTHON_FAST_PYCCALL
              if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
                PyObject *__pyx_temp[2] = {__pyx_t_14, __pyx_v_TextID};
                __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 616, __pyx_L12_except_error)
                __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
                __Pyx_GOTREF(__pyx_t_10);
              } else
              #endif
              {
                __pyx_t_15 = PyTuple_New(1+1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 616, __pyx_L12_except_error)
                __Pyx_GOTREF(__pyx_t_15);
                __Pyx_GIVEREF(__pyx_t_14); PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_t_14); __pyx_t_14 = NULL;
                __Pyx_INCREF(__pyx_v_TextID);
                __Pyx_GIVEREF(__pyx_v_TextID);
                PyTuple_SET_ITEM(__pyx_t_15, 0+1, __pyx_v_TextID);
                __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_15, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 616, __pyx_L12_except_error)
                __Pyx_GOTREF(__pyx_t_10);
                __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
              }
            }
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF_SET(__pyx_v_stt, __pyx_t_10);
            __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;

          /* "metaphor/monal/lcode/codewriter.py":608
 *                 stt = self._GetString(self, TextID, Result, MarkupList, self.CipherKey)
 *             else:
 *                 try:             # <<<<<<<<<<<<<<
 *                     st = self.getTemplate(TextID + 'c')
 *                     stb = xore(st, CC.proprietaryname)
 */
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          goto __pyx_L3_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
          __pyx_L15_try_end:;
        }
      }
      __pyx_L9:;

      /* "metaphor/monal/lcode/codewriter.py":617
 *                 except:
 *                     stt = self.getTemplate(TextID)
 *             return stt             # <<<<<<<<<<<<<<
 *         except Exception as err:
 *             print(err)
 */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_stt);
      __pyx_r = __pyx_v_stt;
      goto __pyx_L7_try_return;

      /* "metaphor/monal/lcode/codewriter.py":603
 * #--- fin de blocs de code -----------------------------------------------------
 *     def GetTextFromID(self, TextID, MarkupList=None):
 *         try:             # <<<<<<<<<<<<<<
 *             if self._GetString:
 *                 Result = ""
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
    __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
    __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
    __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;

    /* "metaphor/monal/lcode/codewriter.py":618
 *                     stt = self.getTemplate(TextID)
 *             return stt
 *         except Exception as err:             # <<<<<<<<<<<<<<
 *             print(err)
 *             return ""
 */
    __pyx_t_9 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
    if (__pyx_t_9) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTextFromID", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_4, &__pyx_t_6) < 0) __PYX_ERR(0, 618, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_t_4);
      __pyx_v_err = __pyx_t_4;
      /*try:*/ {

        /* "metaphor/monal/lcode/codewriter.py":619
 *             return stt
 *         except Exception as err:
 *             print(err)             # <<<<<<<<<<<<<<
 *             return ""
 * 
 */
        __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_builtin_print, __pyx_v_err); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 619, __pyx_L24_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

        /* "metaphor/monal/lcode/codewriter.py":620
 *         except Exception as err:
 *             print(err)
 *             return ""             # <<<<<<<<<<<<<<
 * 
 *     def ReadCodeFromID(self, IDName, specialsub=False):
 */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_kp_u_);
        __pyx_r = __pyx_kp_u_;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L23_return;
      }

      /* "metaphor/monal/lcode/codewriter.py":618
 *                     stt = self.getTemplate(TextID)
 *             return stt
 *         except Exception as err:             # <<<<<<<<<<<<<<
 *             print(err)
 *             return ""
 */
      /*finally:*/ {
        __pyx_L24_error:;
        /*exception exit:*/{
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20);
          if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_13, &__pyx_t_12, &__pyx_t_11) < 0)) __Pyx_ErrFetch(&__pyx_t_13, &__pyx_t_12, &__pyx_t_11);
          __Pyx_XGOTREF(__pyx_t_13);
          __Pyx_XGOTREF(__pyx_t_12);
          __Pyx_XGOTREF(__pyx_t_11);
          __Pyx_XGOTREF(__pyx_t_18);
          __Pyx_XGOTREF(__pyx_t_19);
          __Pyx_XGOTREF(__pyx_t_20);
          __pyx_t_9 = __pyx_lineno; __pyx_t_16 = __pyx_clineno; __pyx_t_17 = __pyx_filename;
          {
            __Pyx_DECREF(__pyx_v_err);
            __pyx_v_err = NULL;
          }
          if (PY_MAJOR_VERSION >= 3) {
            __Pyx_XGIVEREF(__pyx_t_18);
            __Pyx_XGIVEREF(__pyx_t_19);
            __Pyx_XGIVEREF(__pyx_t_20);
            __Pyx_ExceptionReset(__pyx_t_18, __pyx_t_19, __pyx_t_20);
          }
          __Pyx_XGIVEREF(__pyx_t_13);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_ErrRestore(__pyx_t_13, __pyx_t_12, __pyx_t_11);
          __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0;
          __pyx_lineno = __pyx_t_9; __pyx_clineno = __pyx_t_16; __pyx_filename = __pyx_t_17;
          goto __pyx_L5_except_error;
        }
        __pyx_L23_return: {
          __pyx_t_20 = __pyx_r;
          __pyx_r = 0;
          __Pyx_DECREF(__pyx_v_err);
          __pyx_v_err = NULL;
          __pyx_r = __pyx_t_20;
          __pyx_t_20 = 0;
          goto __pyx_L6_except_return;
        }
      }
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":603
 * #--- fin de blocs de code -----------------------------------------------------
 *     def GetTextFromID(self, TextID, MarkupList=None):
 *         try:             # <<<<<<<<<<<<<<
 *             if self._GetString:
 *                 Result = ""
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":602
 * 
 * #--- fin de blocs de code -----------------------------------------------------
 *     def GetTextFromID(self, TextID, MarkupList=None):             # <<<<<<<<<<<<<<
 *         try:
 *             if self._GetString:
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTextFromID", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_Result);
  __Pyx_XDECREF(__pyx_v_stt);
  __Pyx_XDECREF(__pyx_v_st);
  __Pyx_XDECREF(__pyx_v_stb);
  __Pyx_XDECREF(__pyx_v_err);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":622
 *             return ""
 * 
 *     def ReadCodeFromID(self, IDName, specialsub=False):             # <<<<<<<<<<<<<<
 *         txt = self.GetTextFromID(IDName)
 *         if self.CurrentFunctionType < CC.code_common_mini:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_51ReadCodeFromID(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_51ReadCodeFromID = {"ReadCodeFromID", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_51ReadCodeFromID, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_51ReadCodeFromID(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_IDName = 0;
  CYTHON_UNUSED PyObject *__pyx_v_specialsub = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("ReadCodeFromID (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_IDName,&__pyx_n_s_specialsub,0};
    PyObject* values[3] = {0,0,0};
    values[2] = ((PyObject *)((PyObject *)Py_False));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_IDName)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("ReadCodeFromID", 0, 2, 3, 1); __PYX_ERR(0, 622, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_specialsub);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ReadCodeFromID") < 0)) __PYX_ERR(0, 622, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_IDName = values[1];
    __pyx_v_specialsub = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("ReadCodeFromID", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 622, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ReadCodeFromID", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_50ReadCodeFromID(__pyx_self, __pyx_v_self, __pyx_v_IDName, __pyx_v_specialsub);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_50ReadCodeFromID(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_IDName, CYTHON_UNUSED PyObject *__pyx_v_specialsub) {
  PyObject *__pyx_v_txt = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  __Pyx_RefNannySetupContext("ReadCodeFromID", 0);

  /* "metaphor/monal/lcode/codewriter.py":623
 * 
 *     def ReadCodeFromID(self, IDName, specialsub=False):
 *         txt = self.GetTextFromID(IDName)             # <<<<<<<<<<<<<<
 *         if self.CurrentFunctionType < CC.code_common_mini:
 *             txt = self.SubstituteVariables(txt)
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetTextFromID); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 623, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_3) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_IDName); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 623, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_IDName};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 623, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_IDName};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 623, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    {
      __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 623, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
      __Pyx_INCREF(__pyx_v_IDName);
      __Pyx_GIVEREF(__pyx_v_IDName);
      PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_IDName);
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 623, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_txt = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":624
 *     def ReadCodeFromID(self, IDName, specialsub=False):
 *         txt = self.GetTextFromID(IDName)
 *         if self.CurrentFunctionType < CC.code_common_mini:             # <<<<<<<<<<<<<<
 *             txt = self.SubstituteVariables(txt)
 *         return txt
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentFunctionType_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 624, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 624, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_code_common_mini); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 624, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_t_4, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 624, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 624, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_5) {

    /* "metaphor/monal/lcode/codewriter.py":625
 *         txt = self.GetTextFromID(IDName)
 *         if self.CurrentFunctionType < CC.code_common_mini:
 *             txt = self.SubstituteVariables(txt)             # <<<<<<<<<<<<<<
 *         return txt
 * 
 */
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SubstituteVariables); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 625, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_1 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_1)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_1) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_txt); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 625, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_v_txt};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 625, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_GOTREF(__pyx_t_2);
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_v_txt};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 625, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_GOTREF(__pyx_t_2);
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 625, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __pyx_t_1 = NULL;
        __Pyx_INCREF(__pyx_v_txt);
        __Pyx_GIVEREF(__pyx_v_txt);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_txt);
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 625, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF_SET(__pyx_v_txt, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":624
 *     def ReadCodeFromID(self, IDName, specialsub=False):
 *         txt = self.GetTextFromID(IDName)
 *         if self.CurrentFunctionType < CC.code_common_mini:             # <<<<<<<<<<<<<<
 *             txt = self.SubstituteVariables(txt)
 *         return txt
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":626
 *         if self.CurrentFunctionType < CC.code_common_mini:
 *             txt = self.SubstituteVariables(txt)
 *         return txt             # <<<<<<<<<<<<<<
 * 
 *     @property
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_txt);
  __pyx_r = __pyx_v_txt;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":622
 *             return ""
 * 
 *     def ReadCodeFromID(self, IDName, specialsub=False):             # <<<<<<<<<<<<<<
 *         txt = self.GetTextFromID(IDName)
 *         if self.CurrentFunctionType < CC.code_common_mini:
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ReadCodeFromID", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_txt);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":629
 * 
 *     @property
 *     def DriverSource(self):             # <<<<<<<<<<<<<<
 *         return self._DriverSource
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_53DriverSource(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_53DriverSource = {"DriverSource", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_53DriverSource, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_53DriverSource(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("DriverSource (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_52DriverSource(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_52DriverSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("DriverSource", 0);

  /* "metaphor/monal/lcode/codewriter.py":630
 *     @property
 *     def DriverSource(self):
 *         return self._DriverSource             # <<<<<<<<<<<<<<
 * 
 *     @property
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 630, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":629
 * 
 *     @property
 *     def DriverSource(self):             # <<<<<<<<<<<<<<
 *         return self._DriverSource
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.DriverSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":633
 * 
 *     @property
 *     def NetSource(self):             # <<<<<<<<<<<<<<
 *         return self._NetSource
 *     @NetSource.setter
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_55NetSource(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_55NetSource = {"NetSource", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_55NetSource, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_55NetSource(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("NetSource (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_54NetSource(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_54NetSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("NetSource", 0);

  /* "metaphor/monal/lcode/codewriter.py":634
 *     @property
 *     def NetSource(self):
 *         return self._NetSource             # <<<<<<<<<<<<<<
 *     @NetSource.setter
 *     def NetSource(self, value):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 634, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":633
 * 
 *     @property
 *     def NetSource(self):             # <<<<<<<<<<<<<<
 *         return self._NetSource
 *     @NetSource.setter
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.NetSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":636
 *         return self._NetSource
 *     @NetSource.setter
 *     def NetSource(self, value):             # <<<<<<<<<<<<<<
 *         self.SetNetSource(value)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_57NetSource(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_57NetSource = {"NetSource", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_57NetSource, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_57NetSource(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_value = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("NetSource (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("NetSource", 1, 2, 2, 1); __PYX_ERR(0, 636, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "NetSource") < 0)) __PYX_ERR(0, 636, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_value = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("NetSource", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 636, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.NetSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_56NetSource(__pyx_self, __pyx_v_self, __pyx_v_value);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_56NetSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("NetSource", 0);

  /* "metaphor/monal/lcode/codewriter.py":637
 *     @NetSource.setter
 *     def NetSource(self, value):
 *         self.SetNetSource(value)             # <<<<<<<<<<<<<<
 * 
 *     def SetNetSource(self, Source):
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetNetSource); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 637, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_3) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 637, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 637, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 637, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    {
      __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 637, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
      __Pyx_INCREF(__pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 637, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":636
 *         return self._NetSource
 *     @NetSource.setter
 *     def NetSource(self, value):             # <<<<<<<<<<<<<<
 *         self.SetNetSource(value)
 * 
 */

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.NetSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":639
 *         self.SetNetSource(value)
 * 
 *     def SetNetSource(self, Source):             # <<<<<<<<<<<<<<
 *         self._NetSource = Source
 *         if Source:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_59SetNetSource(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_59SetNetSource = {"SetNetSource", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_59SetNetSource, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_59SetNetSource(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_Source = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("SetNetSource (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Source,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Source)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("SetNetSource", 1, 2, 2, 1); __PYX_ERR(0, 639, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "SetNetSource") < 0)) __PYX_ERR(0, 639, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_Source = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("SetNetSource", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 639, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SetNetSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_58SetNetSource(__pyx_self, __pyx_v_self, __pyx_v_Source);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_58SetNetSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Source) {
  CYTHON_UNUSED PyObject *__pyx_7genexpr__pyx_v__ = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  int __pyx_t_8;
  Py_ssize_t __pyx_t_9;
  PyObject *(*__pyx_t_10)(PyObject *);
  __Pyx_RefNannySetupContext("SetNetSource", 0);

  /* "metaphor/monal/lcode/codewriter.py":640
 * 
 *     def SetNetSource(self, Source):
 *         self._NetSource = Source             # <<<<<<<<<<<<<<
 *         if Source:
 *             self._originallink = Source.originallink
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NetSource_2, __pyx_v_Source) < 0) __PYX_ERR(0, 640, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":641
 *     def SetNetSource(self, Source):
 *         self._NetSource = Source
 *         if Source:             # <<<<<<<<<<<<<<
 *             self._originallink = Source.originallink
 *             self._NetName = CPrefix(Source.name, "model")
 */
  __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_Source); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 641, __pyx_L1_error)
  if (__pyx_t_1) {

    /* "metaphor/monal/lcode/codewriter.py":642
 *         self._NetSource = Source
 *         if Source:
 *             self._originallink = Source.originallink             # <<<<<<<<<<<<<<
 *             self._NetName = CPrefix(Source.name, "model")
 *             self._NetName = self.CorrectChar(self._NetName)
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_Source, __pyx_n_s_originallink_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 642, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_originallink, __pyx_t_2) < 0) __PYX_ERR(0, 642, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":643
 *         if Source:
 *             self._originallink = Source.originallink
 *             self._NetName = CPrefix(Source.name, "model")             # <<<<<<<<<<<<<<
 *             self._NetName = self.CorrectChar(self._NetName)
 *             if self._NetName == '':
 */
    __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_CPrefix); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 643, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_Source, __pyx_n_s_name); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 643, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = NULL;
    __pyx_t_6 = 0;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
        __pyx_t_6 = 1;
      }
    }
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_3)) {
      PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_4, __pyx_n_u_model};
      __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 643, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
      PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_4, __pyx_n_u_model};
      __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 643, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    } else
    #endif
    {
      __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 643, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (__pyx_t_5) {
        __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
      }
      __Pyx_GIVEREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_t_4);
      __Pyx_INCREF(__pyx_n_u_model);
      __Pyx_GIVEREF(__pyx_n_u_model);
      PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_n_u_model);
      __pyx_t_4 = 0;
      __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 643, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    }
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NetName, __pyx_t_2) < 0) __PYX_ERR(0, 643, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":644
 *             self._originallink = Source.originallink
 *             self._NetName = CPrefix(Source.name, "model")
 *             self._NetName = self.CorrectChar(self._NetName)             # <<<<<<<<<<<<<<
 *             if self._NetName == '':
 *                 self._NetName = self.ShortFileName
 */
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CorrectChar); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 644, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 644, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_4 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_4)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    if (!__pyx_t_4) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 644, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_3)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_7};
        __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 644, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
        PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_7};
        __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 644, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      } else
      #endif
      {
        __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 644, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = NULL;
        __Pyx_GIVEREF(__pyx_t_7);
        PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_7);
        __pyx_t_7 = 0;
        __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 644, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NetName, __pyx_t_2) < 0) __PYX_ERR(0, 644, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":645
 *             self._NetName = CPrefix(Source.name, "model")
 *             self._NetName = self.CorrectChar(self._NetName)
 *             if self._NetName == '':             # <<<<<<<<<<<<<<
 *                 self._NetName = self.ShortFileName
 *             if hasattr(Source, "nodeCount"):
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 645, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_1 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_kp_u_, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 645, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (__pyx_t_1) {

      /* "metaphor/monal/lcode/codewriter.py":646
 *             self._NetName = self.CorrectChar(self._NetName)
 *             if self._NetName == '':
 *                 self._NetName = self.ShortFileName             # <<<<<<<<<<<<<<
 *             if hasattr(Source, "nodeCount"):
 *                 self._NNode = Source.nodeCount
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ShortFileName); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 646, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NetName, __pyx_t_2) < 0) __PYX_ERR(0, 646, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":645
 *             self._NetName = CPrefix(Source.name, "model")
 *             self._NetName = self.CorrectChar(self._NetName)
 *             if self._NetName == '':             # <<<<<<<<<<<<<<
 *                 self._NetName = self.ShortFileName
 *             if hasattr(Source, "nodeCount"):
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":647
 *             if self._NetName == '':
 *                 self._NetName = self.ShortFileName
 *             if hasattr(Source, "nodeCount"):             # <<<<<<<<<<<<<<
 *                 self._NNode = Source.nodeCount
 *             if hasattr(Source, "singleGradient"):
 */
    __pyx_t_1 = __Pyx_HasAttr(__pyx_v_Source, __pyx_n_u_nodeCount); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 647, __pyx_L1_error)
    __pyx_t_8 = (__pyx_t_1 != 0);
    if (__pyx_t_8) {

      /* "metaphor/monal/lcode/codewriter.py":648
 *                 self._NetName = self.ShortFileName
 *             if hasattr(Source, "nodeCount"):
 *                 self._NNode = Source.nodeCount             # <<<<<<<<<<<<<<
 *             if hasattr(Source, "singleGradient"):
 *                 self._SingleGradient = Source.singleGradient
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_Source, __pyx_n_s_nodeCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 648, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NNode, __pyx_t_2) < 0) __PYX_ERR(0, 648, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":647
 *             if self._NetName == '':
 *                 self._NetName = self.ShortFileName
 *             if hasattr(Source, "nodeCount"):             # <<<<<<<<<<<<<<
 *                 self._NNode = Source.nodeCount
 *             if hasattr(Source, "singleGradient"):
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":649
 *             if hasattr(Source, "nodeCount"):
 *                 self._NNode = Source.nodeCount
 *             if hasattr(Source, "singleGradient"):             # <<<<<<<<<<<<<<
 *                 self._SingleGradient = Source.singleGradient
 *             if hasattr(Source, "outputCount"):
 */
    __pyx_t_8 = __Pyx_HasAttr(__pyx_v_Source, __pyx_n_u_singleGradient); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 649, __pyx_L1_error)
    __pyx_t_1 = (__pyx_t_8 != 0);
    if (__pyx_t_1) {

      /* "metaphor/monal/lcode/codewriter.py":650
 *                 self._NNode = Source.nodeCount
 *             if hasattr(Source, "singleGradient"):
 *                 self._SingleGradient = Source.singleGradient             # <<<<<<<<<<<<<<
 *             if hasattr(Source, "outputCount"):
 *                 self._TrainStdDev = [0 for _ in range(Source.outputCount)]
 */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_Source, __pyx_n_s_singleGradient); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 650, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_SingleGradient, __pyx_t_2) < 0) __PYX_ERR(0, 650, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":649
 *             if hasattr(Source, "nodeCount"):
 *                 self._NNode = Source.nodeCount
 *             if hasattr(Source, "singleGradient"):             # <<<<<<<<<<<<<<
 *                 self._SingleGradient = Source.singleGradient
 *             if hasattr(Source, "outputCount"):
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":651
 *             if hasattr(Source, "singleGradient"):
 *                 self._SingleGradient = Source.singleGradient
 *             if hasattr(Source, "outputCount"):             # <<<<<<<<<<<<<<
 *                 self._TrainStdDev = [0 for _ in range(Source.outputCount)]
 *             self.TouslesNoms()
 */
    __pyx_t_1 = __Pyx_HasAttr(__pyx_v_Source, __pyx_n_u_outputCount); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 651, __pyx_L1_error)
    __pyx_t_8 = (__pyx_t_1 != 0);
    if (__pyx_t_8) {

      /* "metaphor/monal/lcode/codewriter.py":652
 *                 self._SingleGradient = Source.singleGradient
 *             if hasattr(Source, "outputCount"):
 *                 self._TrainStdDev = [0 for _ in range(Source.outputCount)]             # <<<<<<<<<<<<<<
 *             self.TouslesNoms()
 *         else:
 */
      { /* enter inner scope */
        __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 652, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_Source, __pyx_n_s_outputCount); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 652, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_builtin_range, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 652, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) {
          __pyx_t_3 = __pyx_t_5; __Pyx_INCREF(__pyx_t_3); __pyx_t_9 = 0;
          __pyx_t_10 = NULL;
        } else {
          __pyx_t_9 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 652, __pyx_L10_error)
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_10 = Py_TYPE(__pyx_t_3)->tp_iternext; if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 652, __pyx_L10_error)
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        for (;;) {
          if (likely(!__pyx_t_10)) {
            if (likely(PyList_CheckExact(__pyx_t_3))) {
              if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_3)) break;
              #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
              __pyx_t_5 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_9); __Pyx_INCREF(__pyx_t_5); __pyx_t_9++; if (unlikely(0 < 0)) __PYX_ERR(0, 652, __pyx_L10_error)
              #else
              __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 652, __pyx_L10_error)
              __Pyx_GOTREF(__pyx_t_5);
              #endif
            } else {
              if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
              #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
              __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_9); __Pyx_INCREF(__pyx_t_5); __pyx_t_9++; if (unlikely(0 < 0)) __PYX_ERR(0, 652, __pyx_L10_error)
              #else
              __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 652, __pyx_L10_error)
              __Pyx_GOTREF(__pyx_t_5);
              #endif
            }
          } else {
            __pyx_t_5 = __pyx_t_10(__pyx_t_3);
            if (unlikely(!__pyx_t_5)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else __PYX_ERR(0, 652, __pyx_L10_error)
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_5);
          }
          __Pyx_XDECREF_SET(__pyx_7genexpr__pyx_v__, __pyx_t_5);
          __pyx_t_5 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_int_0))) __PYX_ERR(0, 652, __pyx_L10_error)
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_7genexpr__pyx_v__); __pyx_7genexpr__pyx_v__ = 0;
        goto __pyx_L13_exit_scope;
        __pyx_L10_error:;
        __Pyx_XDECREF(__pyx_7genexpr__pyx_v__); __pyx_7genexpr__pyx_v__ = 0;
        goto __pyx_L1_error;
        __pyx_L13_exit_scope:;
      } /* exit inner scope */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_TrainStdDev, __pyx_t_2) < 0) __PYX_ERR(0, 652, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":651
 *             if hasattr(Source, "singleGradient"):
 *                 self._SingleGradient = Source.singleGradient
 *             if hasattr(Source, "outputCount"):             # <<<<<<<<<<<<<<
 *                 self._TrainStdDev = [0 for _ in range(Source.outputCount)]
 *             self.TouslesNoms()
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":653
 *             if hasattr(Source, "outputCount"):
 *                 self._TrainStdDev = [0 for _ in range(Source.outputCount)]
 *             self.TouslesNoms()             # <<<<<<<<<<<<<<
 *         else:
 *             self._NetName = ''
 */
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_TouslesNoms); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 653, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_3, function);
      }
    }
    if (__pyx_t_5) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 653, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    } else {
      __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 653, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":641
 *     def SetNetSource(self, Source):
 *         self._NetSource = Source
 *         if Source:             # <<<<<<<<<<<<<<
 *             self._originallink = Source.originallink
 *             self._NetName = CPrefix(Source.name, "model")
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":655
 *             self.TouslesNoms()
 *         else:
 *             self._NetName = ''             # <<<<<<<<<<<<<<
 *             self._NNode = 0
 * 
 */
  /*else*/ {
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NetName, __pyx_kp_u_) < 0) __PYX_ERR(0, 655, __pyx_L1_error)

    /* "metaphor/monal/lcode/codewriter.py":656
 *         else:
 *             self._NetName = ''
 *             self._NNode = 0             # <<<<<<<<<<<<<<
 * 
 *         self._TargetName = self._NetName
 */
    if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_NNode, __pyx_int_0) < 0) __PYX_ERR(0, 656, __pyx_L1_error)
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":658
 *             self._NNode = 0
 * 
 *         self._TargetName = self._NetName             # <<<<<<<<<<<<<<
 * 
 *     def baseCodeFileName(self, base, substitute, param=0, Ext=''):
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 658, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_TargetName, __pyx_t_2) < 0) __PYX_ERR(0, 658, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":639
 *         self.SetNetSource(value)
 * 
 *     def SetNetSource(self, Source):             # <<<<<<<<<<<<<<
 *         self._NetSource = Source
 *         if Source:
 */

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SetNetSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_7genexpr__pyx_v__);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":660
 *         self._TargetName = self._NetName
 * 
 *     def baseCodeFileName(self, base, substitute, param=0, Ext=''):             # <<<<<<<<<<<<<<
 *         if not base:
 *             if  not substitute:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_61baseCodeFileName(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_61baseCodeFileName = {"baseCodeFileName", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_61baseCodeFileName, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_61baseCodeFileName(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_base = 0;
  PyObject *__pyx_v_substitute = 0;
  PyObject *__pyx_v_param = 0;
  PyObject *__pyx_v_Ext = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("baseCodeFileName (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_base,&__pyx_n_s_substitute,&__pyx_n_s_param,&__pyx_n_s_Ext,0};
    PyObject* values[5] = {0,0,0,0,0};
    values[3] = ((PyObject *)((PyObject *)__pyx_int_0));
    values[4] = ((PyObject *)((PyObject*)__pyx_kp_u_));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
        CYTHON_FALLTHROUGH;
        case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        CYTHON_FALLTHROUGH;
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_base)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("baseCodeFileName", 0, 3, 5, 1); __PYX_ERR(0, 660, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_substitute)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("baseCodeFileName", 0, 3, 5, 2); __PYX_ERR(0, 660, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  3:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_param);
          if (value) { values[3] = value; kw_args--; }
        }
        CYTHON_FALLTHROUGH;
        case  4:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Ext);
          if (value) { values[4] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "baseCodeFileName") < 0)) __PYX_ERR(0, 660, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
        CYTHON_FALLTHROUGH;
        case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        CYTHON_FALLTHROUGH;
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_base = values[1];
    __pyx_v_substitute = values[2];
    __pyx_v_param = values[3];
    __pyx_v_Ext = values[4];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("baseCodeFileName", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 660, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.baseCodeFileName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_60baseCodeFileName(__pyx_self, __pyx_v_self, __pyx_v_base, __pyx_v_substitute, __pyx_v_param, __pyx_v_Ext);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_60baseCodeFileName(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_base, PyObject *__pyx_v_substitute, PyObject *__pyx_v_param, PyObject *__pyx_v_Ext) {
  PyObject *__pyx_v_Result = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  __Pyx_RefNannySetupContext("baseCodeFileName", 0);

  /* "metaphor/monal/lcode/codewriter.py":661
 * 
 *     def baseCodeFileName(self, base, substitute, param=0, Ext=''):
 *         if not base:             # <<<<<<<<<<<<<<
 *             if  not substitute:
 *                 Result = 'transfer'
 */
  __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_base); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 661, __pyx_L1_error)
  __pyx_t_2 = ((!__pyx_t_1) != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":662
 *     def baseCodeFileName(self, base, substitute, param=0, Ext=''):
 *         if not base:
 *             if  not substitute:             # <<<<<<<<<<<<<<
 *                 Result = 'transfer'
 *             else:
 */
    __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_substitute); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 662, __pyx_L1_error)
    __pyx_t_1 = ((!__pyx_t_2) != 0);
    if (__pyx_t_1) {

      /* "metaphor/monal/lcode/codewriter.py":663
 *         if not base:
 *             if  not substitute:
 *                 Result = 'transfer'             # <<<<<<<<<<<<<<
 *             else:
 *                 Result = substitute
 */
      __Pyx_INCREF(__pyx_n_u_transfer);
      __pyx_v_Result = __pyx_n_u_transfer;

      /* "metaphor/monal/lcode/codewriter.py":662
 *     def baseCodeFileName(self, base, substitute, param=0, Ext=''):
 *         if not base:
 *             if  not substitute:             # <<<<<<<<<<<<<<
 *                 Result = 'transfer'
 *             else:
 */
      goto __pyx_L4;
    }

    /* "metaphor/monal/lcode/codewriter.py":665
 *                 Result = 'transfer'
 *             else:
 *                 Result = substitute             # <<<<<<<<<<<<<<
 *         else:
 *             Result = CCharOnlys(base, nostartint=True)
 */
    /*else*/ {
      __Pyx_INCREF(__pyx_v_substitute);
      __pyx_v_Result = __pyx_v_substitute;
    }
    __pyx_L4:;

    /* "metaphor/monal/lcode/codewriter.py":661
 * 
 *     def baseCodeFileName(self, base, substitute, param=0, Ext=''):
 *         if not base:             # <<<<<<<<<<<<<<
 *             if  not substitute:
 *                 Result = 'transfer'
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":667
 *                 Result = substitute
 *         else:
 *             Result = CCharOnlys(base, nostartint=True)             # <<<<<<<<<<<<<<
 * #         if not self.trainable:
 * #             Result += 'use'
 */
  /*else*/ {
    __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_CCharOnlys); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 667, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 667, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_INCREF(__pyx_v_base);
    __Pyx_GIVEREF(__pyx_v_base);
    PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_base);
    __pyx_t_5 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 667, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_nostartint, Py_True) < 0) __PYX_ERR(0, 667, __pyx_L1_error)
    __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 667, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_v_Result = __pyx_t_6;
    __pyx_t_6 = 0;
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":670
 * #         if not self.trainable:
 * #             Result += 'use'
 *         if param == - 32:             # <<<<<<<<<<<<<<
 *             Result += 'w' + Ext
 * 
 */
  __pyx_t_6 = __Pyx_PyInt_EqObjC(__pyx_v_param, __pyx_int_neg_32, -32L, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 670, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 670, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_1) {

    /* "metaphor/monal/lcode/codewriter.py":671
 * #             Result += 'use'
 *         if param == - 32:
 *             Result += 'w' + Ext             # <<<<<<<<<<<<<<
 * 
 *         elif param == CC.fttrain:  #C.ftTransfert:
 */
    __pyx_t_6 = PyNumber_Add(__pyx_n_u_w_2, __pyx_v_Ext); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 671, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 671, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_5);
    __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":670
 * #         if not self.trainable:
 * #             Result += 'use'
 *         if param == - 32:             # <<<<<<<<<<<<<<
 *             Result += 'w' + Ext
 * 
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":673
 *             Result += 'w' + Ext
 * 
 *         elif param == CC.fttrain:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result = 'train' + Ext
 *         elif param in [CC.fttraindll, CC.ftusedll]:  #C.ftTransfert:
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 673, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_fttrain); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 673, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_v_param, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 673, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 673, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_1) {

    /* "metaphor/monal/lcode/codewriter.py":674
 * 
 *         elif param == CC.fttrain:  #C.ftTransfert:
 *             Result = 'train' + Ext             # <<<<<<<<<<<<<<
 *         elif param in [CC.fttraindll, CC.ftusedll]:  #C.ftTransfert:
 *             Result += 'dll' + Ext
 */
    __pyx_t_5 = PyNumber_Add(__pyx_n_u_train, __pyx_v_Ext); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 674, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_5);
    __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":673
 *             Result += 'w' + Ext
 * 
 *         elif param == CC.fttrain:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result = 'train' + Ext
 *         elif param in [CC.fttraindll, CC.ftusedll]:  #C.ftTransfert:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":675
 *         elif param == CC.fttrain:  #C.ftTransfert:
 *             Result = 'train' + Ext
 *         elif param in [CC.fttraindll, CC.ftusedll]:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += 'dll' + Ext
 *         elif param in [ CC.ftsingletraindll]:  #C.ftTransfert:
 */
  __Pyx_INCREF(__pyx_v_param);
  __pyx_t_5 = __pyx_v_param;
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 675, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_fttraindll); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 675, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = PyObject_RichCompare(__pyx_t_5, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 675, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 675, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (!__pyx_t_2) {
  } else {
    __pyx_t_1 = __pyx_t_2;
    goto __pyx_L6_bool_binop_done;
  }
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 675, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ftusedll); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 675, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = PyObject_RichCompare(__pyx_t_5, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 675, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 675, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_1 = __pyx_t_2;
  __pyx_L6_bool_binop_done:;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = (__pyx_t_1 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":676
 *             Result = 'train' + Ext
 *         elif param in [CC.fttraindll, CC.ftusedll]:  #C.ftTransfert:
 *             Result += 'dll' + Ext             # <<<<<<<<<<<<<<
 *         elif param in [ CC.ftsingletraindll]:  #C.ftTransfert:
 *             if self.trainable:
 */
    __pyx_t_5 = PyNumber_Add(__pyx_n_u_dll, __pyx_v_Ext); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 676, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 676, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":675
 *         elif param == CC.fttrain:  #C.ftTransfert:
 *             Result = 'train' + Ext
 *         elif param in [CC.fttraindll, CC.ftusedll]:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += 'dll' + Ext
 *         elif param in [ CC.ftsingletraindll]:  #C.ftTransfert:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":677
 *         elif param in [CC.fttraindll, CC.ftusedll]:  #C.ftTransfert:
 *             Result += 'dll' + Ext
 *         elif param in [ CC.ftsingletraindll]:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             if self.trainable:
 *                 Result += 'dll' + Ext
 */
  __Pyx_INCREF(__pyx_v_param);
  __pyx_t_6 = __pyx_v_param;
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 677, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftsingletraindll); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 677, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 677, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 677, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_1 = (__pyx_t_2 != 0);
  if (__pyx_t_1) {

    /* "metaphor/monal/lcode/codewriter.py":678
 *             Result += 'dll' + Ext
 *         elif param in [ CC.ftsingletraindll]:  #C.ftTransfert:
 *             if self.trainable:             # <<<<<<<<<<<<<<
 *                 Result += 'dll' + Ext
 *             else:
 */
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_trainable); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 678, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 678, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    if (__pyx_t_1) {

      /* "metaphor/monal/lcode/codewriter.py":679
 *         elif param in [ CC.ftsingletraindll]:  #C.ftTransfert:
 *             if self.trainable:
 *                 Result += 'dll' + Ext             # <<<<<<<<<<<<<<
 *             else:
 *                 Result += 'usedll' + Ext
 */
      __pyx_t_6 = PyNumber_Add(__pyx_n_u_dll, __pyx_v_Ext); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 679, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 679, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_5);
      __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":678
 *             Result += 'dll' + Ext
 *         elif param in [ CC.ftsingletraindll]:  #C.ftTransfert:
 *             if self.trainable:             # <<<<<<<<<<<<<<
 *                 Result += 'dll' + Ext
 *             else:
 */
      goto __pyx_L8;
    }

    /* "metaphor/monal/lcode/codewriter.py":681
 *                 Result += 'dll' + Ext
 *             else:
 *                 Result += 'usedll' + Ext             # <<<<<<<<<<<<<<
 *         elif param in [CC.ftbasetrain, CC.ftsinglebasetrain]:  #C.ftTransfert:
 *             Result += 'trainbase' + Ext
 */
    /*else*/ {
      __pyx_t_5 = PyNumber_Add(__pyx_n_u_usedll, __pyx_v_Ext); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 681, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 681, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_6);
      __pyx_t_6 = 0;
    }
    __pyx_L8:;

    /* "metaphor/monal/lcode/codewriter.py":677
 *         elif param in [CC.fttraindll, CC.ftusedll]:  #C.ftTransfert:
 *             Result += 'dll' + Ext
 *         elif param in [ CC.ftsingletraindll]:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             if self.trainable:
 *                 Result += 'dll' + Ext
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":682
 *             else:
 *                 Result += 'usedll' + Ext
 *         elif param in [CC.ftbasetrain, CC.ftsinglebasetrain]:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += 'trainbase' + Ext
 *         elif param == CC.ftbaseuse:  #C.ftTransfert:
 */
  __Pyx_INCREF(__pyx_v_param);
  __pyx_t_6 = __pyx_v_param;
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 682, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftbasetrain); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 682, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 682, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 682, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (!__pyx_t_2) {
  } else {
    __pyx_t_1 = __pyx_t_2;
    goto __pyx_L9_bool_binop_done;
  }
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 682, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftsinglebasetrain); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 682, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 682, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 682, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_1 = __pyx_t_2;
  __pyx_L9_bool_binop_done:;
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_2 = (__pyx_t_1 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":683
 *                 Result += 'usedll' + Ext
 *         elif param in [CC.ftbasetrain, CC.ftsinglebasetrain]:  #C.ftTransfert:
 *             Result += 'trainbase' + Ext             # <<<<<<<<<<<<<<
 *         elif param == CC.ftbaseuse:  #C.ftTransfert:
 *             Result += 'usebase' + Ext
 */
    __pyx_t_6 = PyNumber_Add(__pyx_n_u_trainbase, __pyx_v_Ext); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 683, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 683, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_5);
    __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":682
 *             else:
 *                 Result += 'usedll' + Ext
 *         elif param in [CC.ftbasetrain, CC.ftsinglebasetrain]:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += 'trainbase' + Ext
 *         elif param == CC.ftbaseuse:  #C.ftTransfert:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":684
 *         elif param in [CC.ftbasetrain, CC.ftsinglebasetrain]:  #C.ftTransfert:
 *             Result += 'trainbase' + Ext
 *         elif param == CC.ftbaseuse:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += 'usebase' + Ext
 *         elif param == CC.ftBase:  #C.ftTransfert:
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 684, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftbaseuse); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 684, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_v_param, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 684, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 684, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":685
 *             Result += 'trainbase' + Ext
 *         elif param == CC.ftbaseuse:  #C.ftTransfert:
 *             Result += 'usebase' + Ext             # <<<<<<<<<<<<<<
 *         elif param == CC.ftBase:  #C.ftTransfert:
 *             Result += '_' + Ext
 */
    __pyx_t_5 = PyNumber_Add(__pyx_n_u_usebase, __pyx_v_Ext); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 685, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 685, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":684
 *         elif param in [CC.ftbasetrain, CC.ftsinglebasetrain]:  #C.ftTransfert:
 *             Result += 'trainbase' + Ext
 *         elif param == CC.ftbaseuse:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += 'usebase' + Ext
 *         elif param == CC.ftBase:  #C.ftTransfert:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":686
 *         elif param == CC.ftbaseuse:  #C.ftTransfert:
 *             Result += 'usebase' + Ext
 *         elif param == CC.ftBase:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += '_' + Ext
 *         elif param == CC.ftTransfert:  #C.ftTransfert:
 */
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ftBase); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = PyObject_RichCompare(__pyx_v_param, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 686, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":687
 *             Result += 'usebase' + Ext
 *         elif param == CC.ftBase:  #C.ftTransfert:
 *             Result += '_' + Ext             # <<<<<<<<<<<<<<
 *         elif param == CC.ftTransfert:  #C.ftTransfert:
 *             Result += 'tfr' + Ext
 */
    __pyx_t_6 = PyNumber_Add(__pyx_n_u__15, __pyx_v_Ext); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 687, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 687, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_5);
    __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":686
 *         elif param == CC.ftbaseuse:  #C.ftTransfert:
 *             Result += 'usebase' + Ext
 *         elif param == CC.ftBase:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += '_' + Ext
 *         elif param == CC.ftTransfert:  #C.ftTransfert:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":688
 *         elif param == CC.ftBase:  #C.ftTransfert:
 *             Result += '_' + Ext
 *         elif param == CC.ftTransfert:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += 'tfr' + Ext
 *         elif param == CC.ftGradient:  #C.ftGradient:
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 688, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftTransfert); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 688, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_v_param, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 688, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 688, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":689
 *             Result += '_' + Ext
 *         elif param == CC.ftTransfert:  #C.ftTransfert:
 *             Result += 'tfr' + Ext             # <<<<<<<<<<<<<<
 *         elif param == CC.ftGradient:  #C.ftGradient:
 *             Result += 'grd' + Ext
 */
    __pyx_t_5 = PyNumber_Add(__pyx_n_u_tfr, __pyx_v_Ext); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 689, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 689, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":688
 *         elif param == CC.ftBase:  #C.ftTransfert:
 *             Result += '_' + Ext
 *         elif param == CC.ftTransfert:  #C.ftTransfert:             # <<<<<<<<<<<<<<
 *             Result += 'tfr' + Ext
 *         elif param == CC.ftGradient:  #C.ftGradient:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":690
 *         elif param == CC.ftTransfert:  #C.ftTransfert:
 *             Result += 'tfr' + Ext
 *         elif param == CC.ftGradient:  #C.ftGradient:             # <<<<<<<<<<<<<<
 *             Result += 'grd' + Ext
 *         elif param == CC.ftTransfertLeverage:  #C.ftTransfertLeverage:
 */
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 690, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ftGradient); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 690, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = PyObject_RichCompare(__pyx_v_param, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 690, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 690, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":691
 *             Result += 'tfr' + Ext
 *         elif param == CC.ftGradient:  #C.ftGradient:
 *             Result += 'grd' + Ext             # <<<<<<<<<<<<<<
 *         elif param == CC.ftTransfertLeverage:  #C.ftTransfertLeverage:
 *             Result += 'lev' + Ext
 */
    __pyx_t_6 = PyNumber_Add(__pyx_n_u_grd, __pyx_v_Ext); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 691, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 691, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_5);
    __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":690
 *         elif param == CC.ftTransfert:  #C.ftTransfert:
 *             Result += 'tfr' + Ext
 *         elif param == CC.ftGradient:  #C.ftGradient:             # <<<<<<<<<<<<<<
 *             Result += 'grd' + Ext
 *         elif param == CC.ftTransfertLeverage:  #C.ftTransfertLeverage:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":692
 *         elif param == CC.ftGradient:  #C.ftGradient:
 *             Result += 'grd' + Ext
 *         elif param == CC.ftTransfertLeverage:  #C.ftTransfertLeverage:             # <<<<<<<<<<<<<<
 *             Result += 'lev' + Ext
 *         elif param == CC.ftDLM:  #C.ftDLM:
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 692, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftTransfertLeverage); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 692, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_v_param, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 692, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 692, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":693
 *             Result += 'grd' + Ext
 *         elif param == CC.ftTransfertLeverage:  #C.ftTransfertLeverage:
 *             Result += 'lev' + Ext             # <<<<<<<<<<<<<<
 *         elif param == CC.ftDLM:  #C.ftDLM:
 *             Result += 'dlm' + Ext
 */
    __pyx_t_5 = PyNumber_Add(__pyx_n_u_lev, __pyx_v_Ext); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 693, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 693, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":692
 *         elif param == CC.ftGradient:  #C.ftGradient:
 *             Result += 'grd' + Ext
 *         elif param == CC.ftTransfertLeverage:  #C.ftTransfertLeverage:             # <<<<<<<<<<<<<<
 *             Result += 'lev' + Ext
 *         elif param == CC.ftDLM:  #C.ftDLM:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":694
 *         elif param == CC.ftTransfertLeverage:  #C.ftTransfertLeverage:
 *             Result += 'lev' + Ext
 *         elif param == CC.ftDLM:  #C.ftDLM:             # <<<<<<<<<<<<<<
 *             Result += 'dlm' + Ext
 *         elif param == CC.ftMakeDLM:  #C.ftMakeDLM:
 */
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 694, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ftDLM); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 694, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = PyObject_RichCompare(__pyx_v_param, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 694, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 694, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":695
 *             Result += 'lev' + Ext
 *         elif param == CC.ftDLM:  #C.ftDLM:
 *             Result += 'dlm' + Ext             # <<<<<<<<<<<<<<
 *         elif param == CC.ftMakeDLM:  #C.ftMakeDLM:
 *             Result = 'MakeDLM'
 */
    __pyx_t_6 = PyNumber_Add(__pyx_n_u_dlm, __pyx_v_Ext); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 695, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 695, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_5);
    __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":694
 *         elif param == CC.ftTransfertLeverage:  #C.ftTransfertLeverage:
 *             Result += 'lev' + Ext
 *         elif param == CC.ftDLM:  #C.ftDLM:             # <<<<<<<<<<<<<<
 *             Result += 'dlm' + Ext
 *         elif param == CC.ftMakeDLM:  #C.ftMakeDLM:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":696
 *         elif param == CC.ftDLM:  #C.ftDLM:
 *             Result += 'dlm' + Ext
 *         elif param == CC.ftMakeDLM:  #C.ftMakeDLM:             # <<<<<<<<<<<<<<
 *             Result = 'MakeDLM'
 *         elif param == CC.ftDesc:  #C.ftDesc:
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftMakeDLM); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_v_param, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 696, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 696, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":697
 *             Result += 'dlm' + Ext
 *         elif param == CC.ftMakeDLM:  #C.ftMakeDLM:
 *             Result = 'MakeDLM'             # <<<<<<<<<<<<<<
 *         elif param == CC.ftDesc:  #C.ftDesc:
 *             Result = 'ndesc.txt'
 */
    __Pyx_INCREF(__pyx_n_u_MakeDLM);
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_n_u_MakeDLM);

    /* "metaphor/monal/lcode/codewriter.py":696
 *         elif param == CC.ftDLM:  #C.ftDLM:
 *             Result += 'dlm' + Ext
 *         elif param == CC.ftMakeDLM:  #C.ftMakeDLM:             # <<<<<<<<<<<<<<
 *             Result = 'MakeDLM'
 *         elif param == CC.ftDesc:  #C.ftDesc:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":698
 *         elif param == CC.ftMakeDLM:  #C.ftMakeDLM:
 *             Result = 'MakeDLM'
 *         elif param == CC.ftDesc:  #C.ftDesc:             # <<<<<<<<<<<<<<
 *             Result = 'ndesc.txt'
 *         elif param == CC.ftmodeltrain:  #C.ftmodeltrain:
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 698, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftDesc); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 698, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_v_param, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 698, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 698, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":699
 *             Result = 'MakeDLM'
 *         elif param == CC.ftDesc:  #C.ftDesc:
 *             Result = 'ndesc.txt'             # <<<<<<<<<<<<<<
 *         elif param == CC.ftmodeltrain:  #C.ftmodeltrain:
 *             Result +=  'train' + Ext
 */
    __Pyx_INCREF(__pyx_kp_u_ndesc_txt);
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_kp_u_ndesc_txt);

    /* "metaphor/monal/lcode/codewriter.py":698
 *         elif param == CC.ftMakeDLM:  #C.ftMakeDLM:
 *             Result = 'MakeDLM'
 *         elif param == CC.ftDesc:  #C.ftDesc:             # <<<<<<<<<<<<<<
 *             Result = 'ndesc.txt'
 *         elif param == CC.ftmodeltrain:  #C.ftmodeltrain:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":700
 *         elif param == CC.ftDesc:  #C.ftDesc:
 *             Result = 'ndesc.txt'
 *         elif param == CC.ftmodeltrain:  #C.ftmodeltrain:             # <<<<<<<<<<<<<<
 *             Result +=  'train' + Ext
 * #         elif param == CC.ftPyInterface:  #C.ftPyInterface:
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 700, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ftmodeltrain); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 700, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PyObject_RichCompare(__pyx_v_param, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 700, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 700, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":701
 *             Result = 'ndesc.txt'
 *         elif param == CC.ftmodeltrain:  #C.ftmodeltrain:
 *             Result +=  'train' + Ext             # <<<<<<<<<<<<<<
 * #         elif param == CC.ftPyInterface:  #C.ftPyInterface:
 * #             Result += Ext  #"interface" +
 */
    __pyx_t_5 = PyNumber_Add(__pyx_n_u_train, __pyx_v_Ext); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 701, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 701, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":700
 *         elif param == CC.ftDesc:  #C.ftDesc:
 *             Result = 'ndesc.txt'
 *         elif param == CC.ftmodeltrain:  #C.ftmodeltrain:             # <<<<<<<<<<<<<<
 *             Result +=  'train' + Ext
 * #         elif param == CC.ftPyInterface:  #C.ftPyInterface:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":706
 * #         elif param == CC.ftPyInterfaceMulti:  #C.ftPyInterfaceMulti:
 * #             Result += Ext
 *         elif param == CC.ftSetupPy:  #C.ftSetupPy:             # <<<<<<<<<<<<<<
 *             Result += 'setup.py'
 *         elif param == CC.ftSetupMulti:  #C.ftSetupPy:
 */
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 706, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ftSetupPy); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 706, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = PyObject_RichCompare(__pyx_v_param, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 706, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 706, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":707
 * #             Result += Ext
 *         elif param == CC.ftSetupPy:  #C.ftSetupPy:
 *             Result += 'setup.py'             # <<<<<<<<<<<<<<
 *         elif param == CC.ftSetupMulti:  #C.ftSetupPy:
 *             Result += 'setup.py'
 */
    __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_kp_u_setup_py); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 707, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":706
 * #         elif param == CC.ftPyInterfaceMulti:  #C.ftPyInterfaceMulti:
 * #             Result += Ext
 *         elif param == CC.ftSetupPy:  #C.ftSetupPy:             # <<<<<<<<<<<<<<
 *             Result += 'setup.py'
 *         elif param == CC.ftSetupMulti:  #C.ftSetupPy:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":708
 *         elif param == CC.ftSetupPy:  #C.ftSetupPy:
 *             Result += 'setup.py'
 *         elif param == CC.ftSetupMulti:  #C.ftSetupPy:             # <<<<<<<<<<<<<<
 *             Result += 'setup.py'
 *         elif param == CC.ftsetupcfg:  #C.ftSetupPy:
 */
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 708, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ftSetupMulti); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 708, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = PyObject_RichCompare(__pyx_v_param, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 708, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 708, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":709
 *             Result += 'setup.py'
 *         elif param == CC.ftSetupMulti:  #C.ftSetupPy:
 *             Result += 'setup.py'             # <<<<<<<<<<<<<<
 *         elif param == CC.ftsetupcfg:  #C.ftSetupPy:
 *             Result = 'setup.cfg'
 */
    __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_Result, __pyx_kp_u_setup_py); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 709, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":708
 *         elif param == CC.ftSetupPy:  #C.ftSetupPy:
 *             Result += 'setup.py'
 *         elif param == CC.ftSetupMulti:  #C.ftSetupPy:             # <<<<<<<<<<<<<<
 *             Result += 'setup.py'
 *         elif param == CC.ftsetupcfg:  #C.ftSetupPy:
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":710
 *         elif param == CC.ftSetupMulti:  #C.ftSetupPy:
 *             Result += 'setup.py'
 *         elif param == CC.ftsetupcfg:  #C.ftSetupPy:             # <<<<<<<<<<<<<<
 *             Result = 'setup.cfg'
 * 
 */
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 710, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ftsetupcfg); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 710, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_6 = PyObject_RichCompare(__pyx_v_param, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 710, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 710, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":711
 *             Result += 'setup.py'
 *         elif param == CC.ftsetupcfg:  #C.ftSetupPy:
 *             Result = 'setup.cfg'             # <<<<<<<<<<<<<<
 * 
 *         elif param in list(CC.commondict.keys()):
 */
    __Pyx_INCREF(__pyx_kp_u_setup_cfg);
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_kp_u_setup_cfg);

    /* "metaphor/monal/lcode/codewriter.py":710
 *         elif param == CC.ftSetupMulti:  #C.ftSetupPy:
 *             Result += 'setup.py'
 *         elif param == CC.ftsetupcfg:  #C.ftSetupPy:             # <<<<<<<<<<<<<<
 *             Result = 'setup.cfg'
 * 
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":713
 *             Result = 'setup.cfg'
 * 
 *         elif param in list(CC.commondict.keys()):             # <<<<<<<<<<<<<<
 *             Result = CC.commondict[param] + Ext
 *         return Result
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_commondict); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_keys); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5);
    if (likely(__pyx_t_4)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_5, function);
    }
  }
  if (__pyx_t_4) {
    __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 713, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else {
    __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 713, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = PySequence_List(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_v_param, __pyx_t_5, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 713, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_1 = (__pyx_t_2 != 0);
  if (__pyx_t_1) {

    /* "metaphor/monal/lcode/codewriter.py":714
 * 
 *         elif param in list(CC.commondict.keys()):
 *             Result = CC.commondict[param] + Ext             # <<<<<<<<<<<<<<
 *         return Result
 * 
 */
    __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 714, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_commondict); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 714, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_5 = __Pyx_PyObject_GetItem(__pyx_t_6, __pyx_v_param); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 714, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __pyx_t_6 = PyNumber_Add(__pyx_t_5, __pyx_v_Ext); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 714, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_6);
    __pyx_t_6 = 0;

    /* "metaphor/monal/lcode/codewriter.py":713
 *             Result = 'setup.cfg'
 * 
 *         elif param in list(CC.commondict.keys()):             # <<<<<<<<<<<<<<
 *             Result = CC.commondict[param] + Ext
 *         return Result
 */
  }
  __pyx_L5:;

  /* "metaphor/monal/lcode/codewriter.py":715
 *         elif param in list(CC.commondict.keys()):
 *             Result = CC.commondict[param] + Ext
 *         return Result             # <<<<<<<<<<<<<<
 * 
 *     def CodeFileName(self, FType, Ext=""):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_Result);
  __pyx_r = __pyx_v_Result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":660
 *         self._TargetName = self._NetName
 * 
 *     def baseCodeFileName(self, base, substitute, param=0, Ext=''):             # <<<<<<<<<<<<<<
 *         if not base:
 *             if  not substitute:
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.baseCodeFileName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_Result);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":717
 *         return Result
 * 
 *     def CodeFileName(self, FType, Ext=""):             # <<<<<<<<<<<<<<
 *         return self.baseCodeFileName(self.NetSource.name, self.ShortFileName, FType, Ext)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_63CodeFileName(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_63CodeFileName = {"CodeFileName", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_63CodeFileName, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_63CodeFileName(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_FType = 0;
  PyObject *__pyx_v_Ext = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("CodeFileName (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_FType,&__pyx_n_s_Ext,0};
    PyObject* values[3] = {0,0,0};
    values[2] = ((PyObject *)((PyObject*)__pyx_kp_u_));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_FType)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("CodeFileName", 0, 2, 3, 1); __PYX_ERR(0, 717, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Ext);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "CodeFileName") < 0)) __PYX_ERR(0, 717, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_FType = values[1];
    __pyx_v_Ext = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("CodeFileName", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 717, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFileName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_62CodeFileName(__pyx_self, __pyx_v_self, __pyx_v_FType, __pyx_v_Ext);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_62CodeFileName(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_FType, PyObject *__pyx_v_Ext) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("CodeFileName", 0);

  /* "metaphor/monal/lcode/codewriter.py":718
 * 
 *     def CodeFileName(self, FType, Ext=""):
 *         return self.baseCodeFileName(self.NetSource.name, self.ShortFileName, FType, Ext)             # <<<<<<<<<<<<<<
 * 
 *     def CurrentCodeFileName(self, sdir=None):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_baseCodeFileName); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 718, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 718, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_name); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 718, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ShortFileName); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 718, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_5 = NULL;
  __pyx_t_6 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_5)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_5);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
      __pyx_t_6 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[5] = {__pyx_t_5, __pyx_t_4, __pyx_t_3, __pyx_v_FType, __pyx_v_Ext};
    __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 718, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
    PyObject *__pyx_temp[5] = {__pyx_t_5, __pyx_t_4, __pyx_t_3, __pyx_v_FType, __pyx_v_Ext};
    __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 718, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  } else
  #endif
  {
    __pyx_t_7 = PyTuple_New(4+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 718, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    if (__pyx_t_5) {
      __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
    }
    __Pyx_GIVEREF(__pyx_t_4);
    PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_t_4);
    __Pyx_GIVEREF(__pyx_t_3);
    PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_t_3);
    __Pyx_INCREF(__pyx_v_FType);
    __Pyx_GIVEREF(__pyx_v_FType);
    PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_6, __pyx_v_FType);
    __Pyx_INCREF(__pyx_v_Ext);
    __Pyx_GIVEREF(__pyx_v_Ext);
    PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_6, __pyx_v_Ext);
    __pyx_t_4 = 0;
    __pyx_t_3 = 0;
    __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 718, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":717
 *         return Result
 * 
 *     def CodeFileName(self, FType, Ext=""):             # <<<<<<<<<<<<<<
 *         return self.baseCodeFileName(self.NetSource.name, self.ShortFileName, FType, Ext)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CodeFileName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":720
 *         return self.baseCodeFileName(self.NetSource.name, self.ShortFileName, FType, Ext)
 * 
 *     def CurrentCodeFileName(self, sdir=None):             # <<<<<<<<<<<<<<
 *         result = ""
 *         if ((self.CurrentFunctionType in CC.ftOnlyHeader) and not self.CurrentHeader):
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_65CurrentCodeFileName(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_65CurrentCodeFileName = {"CurrentCodeFileName", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_65CurrentCodeFileName, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_65CurrentCodeFileName(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_sdir = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("CurrentCodeFileName (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_sdir,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)Py_None));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_sdir);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "CurrentCodeFileName") < 0)) __PYX_ERR(0, 720, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_sdir = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("CurrentCodeFileName", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 720, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CurrentCodeFileName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_64CurrentCodeFileName(__pyx_self, __pyx_v_self, __pyx_v_sdir);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_64CurrentCodeFileName(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_sdir) {
  PyObject *__pyx_v_result = NULL;
  PyObject *__pyx_v_ext = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  int __pyx_t_10;
  PyObject *__pyx_t_11 = NULL;
  __Pyx_RefNannySetupContext("CurrentCodeFileName", 0);
  __Pyx_INCREF(__pyx_v_sdir);

  /* "metaphor/monal/lcode/codewriter.py":721
 * 
 *     def CurrentCodeFileName(self, sdir=None):
 *         result = ""             # <<<<<<<<<<<<<<
 *         if ((self.CurrentFunctionType in CC.ftOnlyHeader) and not self.CurrentHeader):
 *             pass
 */
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_v_result = __pyx_kp_u_;

  /* "metaphor/monal/lcode/codewriter.py":722
 *     def CurrentCodeFileName(self, sdir=None):
 *         result = ""
 *         if ((self.CurrentFunctionType in CC.ftOnlyHeader) and not self.CurrentHeader):             # <<<<<<<<<<<<<<
 *             pass
 *         elif ((self.CurrentFunctionType in CC.ftWithHeader) or not self.CurrentHeader):
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentFunctionType_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 722, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 722, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_ftOnlyHeader); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 722, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_5 = (__Pyx_PySequence_ContainsTF(__pyx_t_2, __pyx_t_4, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 722, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_6 = (__pyx_t_5 != 0);
  if (__pyx_t_6) {
  } else {
    __pyx_t_1 = __pyx_t_6;
    goto __pyx_L4_bool_binop_done;
  }
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentHeader_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 722, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 722, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_5 = ((!__pyx_t_6) != 0);
  __pyx_t_1 = __pyx_t_5;
  __pyx_L4_bool_binop_done:;
  if (__pyx_t_1) {
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":724
 *         if ((self.CurrentFunctionType in CC.ftOnlyHeader) and not self.CurrentHeader):
 *             pass
 *         elif ((self.CurrentFunctionType in CC.ftWithHeader) or not self.CurrentHeader):             # <<<<<<<<<<<<<<
 *             ext = self.FileExt()  #self.CurrentHeader, self.CurrentFunctionType
 *             result = self.baseCodeFileName(self.NetSource.name.lower(), self.ShortFileName.lower(), self.CurrentFunctionType, ext)
 */
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentFunctionType_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 724, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 724, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_ftWithHeader); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 724, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_5 = (__Pyx_PySequence_ContainsTF(__pyx_t_4, __pyx_t_3, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 724, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_6 = (__pyx_t_5 != 0);
  if (!__pyx_t_6) {
  } else {
    __pyx_t_1 = __pyx_t_6;
    goto __pyx_L6_bool_binop_done;
  }
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentHeader_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 724, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 724, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_5 = ((!__pyx_t_6) != 0);
  __pyx_t_1 = __pyx_t_5;
  __pyx_L6_bool_binop_done:;
  if (__pyx_t_1) {

    /* "metaphor/monal/lcode/codewriter.py":725
 *             pass
 *         elif ((self.CurrentFunctionType in CC.ftWithHeader) or not self.CurrentHeader):
 *             ext = self.FileExt()  #self.CurrentHeader, self.CurrentFunctionType             # <<<<<<<<<<<<<<
 *             result = self.baseCodeFileName(self.NetSource.name.lower(), self.ShortFileName.lower(), self.CurrentFunctionType, ext)
 *             if sdir is None:
 */
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_FileExt); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 725, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_2)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (__pyx_t_2) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 725, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    } else {
      __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 725, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_v_ext = __pyx_t_3;
    __pyx_t_3 = 0;

    /* "metaphor/monal/lcode/codewriter.py":726
 *         elif ((self.CurrentFunctionType in CC.ftWithHeader) or not self.CurrentHeader):
 *             ext = self.FileExt()  #self.CurrentHeader, self.CurrentFunctionType
 *             result = self.baseCodeFileName(self.NetSource.name.lower(), self.ShortFileName.lower(), self.CurrentFunctionType, ext)             # <<<<<<<<<<<<<<
 *             if sdir is None:
 *                 sdir = self.SaveDir
 */
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_baseCodeFileName); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 726, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 726, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_name); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 726, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_8);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_lower); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 726, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    __pyx_t_8 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
      __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
      if (likely(__pyx_t_8)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
        __Pyx_INCREF(__pyx_t_8);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_7, function);
      }
    }
    if (__pyx_t_8) {
      __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 726, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    } else {
      __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 726, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ShortFileName); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 726, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_8);
    __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_lower); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 726, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_9);
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    __pyx_t_8 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
      __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_9);
      if (likely(__pyx_t_8)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
        __Pyx_INCREF(__pyx_t_8);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_9, function);
      }
    }
    if (__pyx_t_8) {
      __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 726, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    } else {
      __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 726, __pyx_L1_error)
    }
    __Pyx_GOTREF(__pyx_t_7);
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentFunctionType_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 726, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_9);
    __pyx_t_8 = NULL;
    __pyx_t_10 = 0;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_8)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_8);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
        __pyx_t_10 = 1;
      }
    }
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_4)) {
      PyObject *__pyx_temp[5] = {__pyx_t_8, __pyx_t_2, __pyx_t_7, __pyx_t_9, __pyx_v_ext};
      __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_10, 4+__pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 726, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
      PyObject *__pyx_temp[5] = {__pyx_t_8, __pyx_t_2, __pyx_t_7, __pyx_t_9, __pyx_v_ext};
      __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_10, 4+__pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 726, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    } else
    #endif
    {
      __pyx_t_11 = PyTuple_New(4+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 726, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_11);
      if (__pyx_t_8) {
        __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_8); __pyx_t_8 = NULL;
      }
      __Pyx_GIVEREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_7);
      PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_7);
      __Pyx_GIVEREF(__pyx_t_9);
      PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_9);
      __Pyx_INCREF(__pyx_v_ext);
      __Pyx_GIVEREF(__pyx_v_ext);
      PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_10, __pyx_v_ext);
      __pyx_t_2 = 0;
      __pyx_t_7 = 0;
      __pyx_t_9 = 0;
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_11, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 726, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_3);
    __pyx_t_3 = 0;

    /* "metaphor/monal/lcode/codewriter.py":727
 *             ext = self.FileExt()  #self.CurrentHeader, self.CurrentFunctionType
 *             result = self.baseCodeFileName(self.NetSource.name.lower(), self.ShortFileName.lower(), self.CurrentFunctionType, ext)
 *             if sdir is None:             # <<<<<<<<<<<<<<
 *                 sdir = self.SaveDir
 *             if sdir:   # modif du 14/12/17 previous "dir"
 */
    __pyx_t_1 = (__pyx_v_sdir == Py_None);
    __pyx_t_5 = (__pyx_t_1 != 0);
    if (__pyx_t_5) {

      /* "metaphor/monal/lcode/codewriter.py":728
 *             result = self.baseCodeFileName(self.NetSource.name.lower(), self.ShortFileName.lower(), self.CurrentFunctionType, ext)
 *             if sdir is None:
 *                 sdir = self.SaveDir             # <<<<<<<<<<<<<<
 *             if sdir:   # modif du 14/12/17 previous "dir"
 *                 result = os.path.join(sdir, result)
 */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SaveDir_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 728, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF_SET(__pyx_v_sdir, __pyx_t_3);
      __pyx_t_3 = 0;

      /* "metaphor/monal/lcode/codewriter.py":727
 *             ext = self.FileExt()  #self.CurrentHeader, self.CurrentFunctionType
 *             result = self.baseCodeFileName(self.NetSource.name.lower(), self.ShortFileName.lower(), self.CurrentFunctionType, ext)
 *             if sdir is None:             # <<<<<<<<<<<<<<
 *                 sdir = self.SaveDir
 *             if sdir:   # modif du 14/12/17 previous "dir"
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":729
 *             if sdir is None:
 *                 sdir = self.SaveDir
 *             if sdir:   # modif du 14/12/17 previous "dir"             # <<<<<<<<<<<<<<
 *                 result = os.path.join(sdir, result)
 *         return result
 */
    __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_sdir); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 729, __pyx_L1_error)
    if (__pyx_t_5) {

      /* "metaphor/monal/lcode/codewriter.py":730
 *                 sdir = self.SaveDir
 *             if sdir:   # modif du 14/12/17 previous "dir"
 *                 result = os.path.join(sdir, result)             # <<<<<<<<<<<<<<
 *         return result
 * 
 */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_os); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 730, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_path); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 730, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_join); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 730, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_11 = NULL;
      __pyx_t_10 = 0;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_11)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_11);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
          __pyx_t_10 = 1;
        }
      }
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[3] = {__pyx_t_11, __pyx_v_sdir, __pyx_v_result};
        __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_10, 2+__pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 730, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
        __Pyx_GOTREF(__pyx_t_3);
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[3] = {__pyx_t_11, __pyx_v_sdir, __pyx_v_result};
        __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_10, 2+__pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 730, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
        __Pyx_GOTREF(__pyx_t_3);
      } else
      #endif
      {
        __pyx_t_9 = PyTuple_New(2+__pyx_t_10); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 730, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_9);
        if (__pyx_t_11) {
          __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_11); __pyx_t_11 = NULL;
        }
        __Pyx_INCREF(__pyx_v_sdir);
        __Pyx_GIVEREF(__pyx_v_sdir);
        PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_10, __pyx_v_sdir);
        __Pyx_INCREF(__pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_10, __pyx_v_result);
        __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_9, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 730, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_3);
      __pyx_t_3 = 0;

      /* "metaphor/monal/lcode/codewriter.py":729
 *             if sdir is None:
 *                 sdir = self.SaveDir
 *             if sdir:   # modif du 14/12/17 previous "dir"             # <<<<<<<<<<<<<<
 *                 result = os.path.join(sdir, result)
 *         return result
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":724
 *         if ((self.CurrentFunctionType in CC.ftOnlyHeader) and not self.CurrentHeader):
 *             pass
 *         elif ((self.CurrentFunctionType in CC.ftWithHeader) or not self.CurrentHeader):             # <<<<<<<<<<<<<<
 *             ext = self.FileExt()  #self.CurrentHeader, self.CurrentFunctionType
 *             result = self.baseCodeFileName(self.NetSource.name.lower(), self.ShortFileName.lower(), self.CurrentFunctionType, ext)
 */
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":731
 *             if sdir:   # modif du 14/12/17 previous "dir"
 *                 result = os.path.join(sdir, result)
 *         return result             # <<<<<<<<<<<<<<
 * 
 *     def FileExt(self, header=-1, ftype=-1):  #
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_result);
  __pyx_r = __pyx_v_result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":720
 *         return self.baseCodeFileName(self.NetSource.name, self.ShortFileName, FType, Ext)
 * 
 *     def CurrentCodeFileName(self, sdir=None):             # <<<<<<<<<<<<<<
 *         result = ""
 *         if ((self.CurrentFunctionType in CC.ftOnlyHeader) and not self.CurrentHeader):
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CurrentCodeFileName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_result);
  __Pyx_XDECREF(__pyx_v_ext);
  __Pyx_XDECREF(__pyx_v_sdir);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":733
 *         return result
 * 
 *     def FileExt(self, header=-1, ftype=-1):  #             # <<<<<<<<<<<<<<
 *         if header == -1:
 *             header = self.CurrentHeader
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_67FileExt(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_67FileExt = {"FileExt", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_67FileExt, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_67FileExt(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_header = 0;
  PyObject *__pyx_v_ftype = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("FileExt (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_header,&__pyx_n_s_ftype,0};
    PyObject* values[3] = {0,0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_neg_1));
    values[2] = ((PyObject *)((PyObject *)__pyx_int_neg_1));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_header);
          if (value) { values[1] = value; kw_args--; }
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ftype);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "FileExt") < 0)) __PYX_ERR(0, 733, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_header = values[1];
    __pyx_v_ftype = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("FileExt", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 733, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.FileExt", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_66FileExt(__pyx_self, __pyx_v_self, __pyx_v_header, __pyx_v_ftype);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_66FileExt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_header, PyObject *__pyx_v_ftype) {
  PyObject *__pyx_v_fType = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("FileExt", 0);
  __Pyx_INCREF(__pyx_v_header);

  /* "metaphor/monal/lcode/codewriter.py":734
 * 
 *     def FileExt(self, header=-1, ftype=-1):  #
 *         if header == -1:             # <<<<<<<<<<<<<<
 *             header = self.CurrentHeader
 *         if ftype == -1:
 */
  __pyx_t_1 = __Pyx_PyInt_EqObjC(__pyx_v_header, __pyx_int_neg_1, -1L, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 734, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 734, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":735
 *     def FileExt(self, header=-1, ftype=-1):  #
 *         if header == -1:
 *             header = self.CurrentHeader             # <<<<<<<<<<<<<<
 *         if ftype == -1:
 *             fType = self.CurrentFunctionType
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentHeader_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 735, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __Pyx_DECREF_SET(__pyx_v_header, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":734
 * 
 *     def FileExt(self, header=-1, ftype=-1):  #
 *         if header == -1:             # <<<<<<<<<<<<<<
 *             header = self.CurrentHeader
 *         if ftype == -1:
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":736
 *         if header == -1:
 *             header = self.CurrentHeader
 *         if ftype == -1:             # <<<<<<<<<<<<<<
 *             fType = self.CurrentFunctionType
 * 
 */
  __pyx_t_1 = __Pyx_PyInt_EqObjC(__pyx_v_ftype, __pyx_int_neg_1, -1L, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 736, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 736, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":737
 *             header = self.CurrentHeader
 *         if ftype == -1:
 *             fType = self.CurrentFunctionType             # <<<<<<<<<<<<<<
 * 
 *         if fType in CC.ftwithCext:
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CurrentFunctionType_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 737, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_fType = __pyx_t_1;
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":736
 *         if header == -1:
 *             header = self.CurrentHeader
 *         if ftype == -1:             # <<<<<<<<<<<<<<
 *             fType = self.CurrentFunctionType
 * 
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":739
 *             fType = self.CurrentFunctionType
 * 
 *         if fType in CC.ftwithCext:             # <<<<<<<<<<<<<<
 *             return self.FileExtLang(header, ftype)
 *         elif fType in [CC.ftSetupPy, CC.ftSetupMulti]:
 */
  if (unlikely(!__pyx_v_fType)) { __Pyx_RaiseUnboundLocalError("fType"); __PYX_ERR(0, 739, __pyx_L1_error) }
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 739, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ftwithCext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 739, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_v_fType, __pyx_t_3, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 739, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_4 = (__pyx_t_2 != 0);
  if (__pyx_t_4) {

    /* "metaphor/monal/lcode/codewriter.py":740
 * 
 *         if fType in CC.ftwithCext:
 *             return self.FileExtLang(header, ftype)             # <<<<<<<<<<<<<<
 *         elif fType in [CC.ftSetupPy, CC.ftSetupMulti]:
 *             return '.py'
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_FileExtLang); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 740, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_5 = NULL;
    __pyx_t_6 = 0;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_1, function);
        __pyx_t_6 = 1;
      }
    }
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_1)) {
      PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_header, __pyx_v_ftype};
      __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 740, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_3);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
      PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_header, __pyx_v_ftype};
      __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 740, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_3);
    } else
    #endif
    {
      __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 740, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      if (__pyx_t_5) {
        __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
      }
      __Pyx_INCREF(__pyx_v_header);
      __Pyx_GIVEREF(__pyx_v_header);
      PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_v_header);
      __Pyx_INCREF(__pyx_v_ftype);
      __Pyx_GIVEREF(__pyx_v_ftype);
      PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_v_ftype);
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 740, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":739
 *             fType = self.CurrentFunctionType
 * 
 *         if fType in CC.ftwithCext:             # <<<<<<<<<<<<<<
 *             return self.FileExtLang(header, ftype)
 *         elif fType in [CC.ftSetupPy, CC.ftSetupMulti]:
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":741
 *         if fType in CC.ftwithCext:
 *             return self.FileExtLang(header, ftype)
 *         elif fType in [CC.ftSetupPy, CC.ftSetupMulti]:             # <<<<<<<<<<<<<<
 *             return '.py'
 *         return ''
 */
  if (unlikely(!__pyx_v_fType)) { __Pyx_RaiseUnboundLocalError("fType"); __PYX_ERR(0, 741, __pyx_L1_error) }
  __Pyx_INCREF(__pyx_v_fType);
  __pyx_t_3 = __pyx_v_fType;
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 741, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ftSetupPy); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 741, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 741, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 741, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (!__pyx_t_2) {
  } else {
    __pyx_t_4 = __pyx_t_2;
    goto __pyx_L6_bool_binop_done;
  }
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 741, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ftSetupMulti); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 741, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 741, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 741, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_4 = __pyx_t_2;
  __pyx_L6_bool_binop_done:;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_2 = (__pyx_t_4 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":742
 *             return self.FileExtLang(header, ftype)
 *         elif fType in [CC.ftSetupPy, CC.ftSetupMulti]:
 *             return '.py'             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_kp_u_py);
    __pyx_r = __pyx_kp_u_py;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":741
 *         if fType in CC.ftwithCext:
 *             return self.FileExtLang(header, ftype)
 *         elif fType in [CC.ftSetupPy, CC.ftSetupMulti]:             # <<<<<<<<<<<<<<
 *             return '.py'
 *         return ''
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":743
 *         elif fType in [CC.ftSetupPy, CC.ftSetupMulti]:
 *             return '.py'
 *         return ''             # <<<<<<<<<<<<<<
 * 
 *     def GetDecalIni(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":733
 *         return result
 * 
 *     def FileExt(self, header=-1, ftype=-1):  #             # <<<<<<<<<<<<<<
 *         if header == -1:
 *             header = self.CurrentHeader
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.FileExt", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_fType);
  __Pyx_XDECREF(__pyx_v_header);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":745
 *         return ''
 * 
 *     def GetDecalIni(self):             # <<<<<<<<<<<<<<
 *         return 0
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_69GetDecalIni(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_69GetDecalIni = {"GetDecalIni", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_69GetDecalIni, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_69GetDecalIni(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetDecalIni (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_68GetDecalIni(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_68GetDecalIni(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetDecalIni", 0);

  /* "metaphor/monal/lcode/codewriter.py":746
 * 
 *     def GetDecalIni(self):
 *         return 0             # <<<<<<<<<<<<<<
 * 
 *     def Suite(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_int_0);
  __pyx_r = __pyx_int_0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":745
 *         return ''
 * 
 *     def GetDecalIni(self):             # <<<<<<<<<<<<<<
 *         return 0
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":748
 *         return 0
 * 
 *     def Suite(self):             # <<<<<<<<<<<<<<
 *         return fillstr(self.DecalIni)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_71Suite(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_71Suite = {"Suite", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_71Suite, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_71Suite(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("Suite (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_70Suite(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_70Suite(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  __Pyx_RefNannySetupContext("Suite", 0);

  /* "metaphor/monal/lcode/codewriter.py":749
 * 
 *     def Suite(self):
 *         return fillstr(self.DecalIni)             # <<<<<<<<<<<<<<
 * 
 *     def getTemplate(self, TextID):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_fillstr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 749, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DecalIni); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 749, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_4)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_4) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 749, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_3};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 749, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_3};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 749, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else
    #endif
    {
      __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 749, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = NULL;
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 749, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":748
 *         return 0
 * 
 *     def Suite(self):             # <<<<<<<<<<<<<<
 *         return fillstr(self.DecalIni)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Suite", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":751
 *         return fillstr(self.DecalIni)
 * 
 *     def getTemplate(self, TextID):             # <<<<<<<<<<<<<<
 *         lst = TextID.split('_')
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_73getTemplate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_73getTemplate = {"getTemplate", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_73getTemplate, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_73getTemplate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_TextID = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("getTemplate (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_TextID,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_TextID)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("getTemplate", 1, 2, 2, 1); __PYX_ERR(0, 751, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getTemplate") < 0)) __PYX_ERR(0, 751, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_TextID = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("getTemplate", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 751, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getTemplate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_72getTemplate(__pyx_self, __pyx_v_self, __pyx_v_TextID);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_72getTemplate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_TextID) {
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_v_filename = NULL;
  PyObject *__pyx_v_ff = NULL;
  PyObject *__pyx_v_st = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  int __pyx_t_8;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  PyObject *__pyx_t_12 = NULL;
  PyObject *__pyx_t_13 = NULL;
  int __pyx_t_14;
  __Pyx_RefNannySetupContext("getTemplate", 0);

  /* "metaphor/monal/lcode/codewriter.py":752
 * 
 *     def getTemplate(self, TextID):
 *         lst = TextID.split('_')             # <<<<<<<<<<<<<<
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 *         if PY3:
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_TextID, __pyx_n_s_split); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 752, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__16, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 752, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_lst = __pyx_t_2;
  __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":753
 *     def getTemplate(self, TextID):
 *         lst = TextID.split('_')
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))             # <<<<<<<<<<<<<<
 *         if PY3:
 *             with open(filename, 'rb') as ff:
 */
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_os); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 753, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_path); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 753, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_join); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 753, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_TemplatePath_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 753, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = PyUnicode_Join(__pyx_kp_u__10, __pyx_v_lst); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 753, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = NULL;
  __pyx_t_6 = 0;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
    __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
    if (likely(__pyx_t_5)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_5);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_1, function);
      __pyx_t_6 = 1;
    }
  }
  #if CYTHON_FAST_PYCALL
  if (PyFunction_Check(__pyx_t_1)) {
    PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_3, __pyx_t_4};
    __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 753, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else
  #endif
  #if CYTHON_FAST_PYCCALL
  if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
    PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_3, __pyx_t_4};
    __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 753, __pyx_L1_error)
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  } else
  #endif
  {
    __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 753, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    if (__pyx_t_5) {
      __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
    }
    __Pyx_GIVEREF(__pyx_t_3);
    PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_t_3);
    __Pyx_GIVEREF(__pyx_t_4);
    PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_t_4);
    __pyx_t_3 = 0;
    __pyx_t_4 = 0;
    __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 753, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_filename = __pyx_t_2;
  __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":754
 *         lst = TextID.split('_')
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 *         if PY3:             # <<<<<<<<<<<<<<
 *             with open(filename, 'rb') as ff:
 *                 st = ff.read()
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_PY3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 754, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 754, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_8) {

    /* "metaphor/monal/lcode/codewriter.py":755
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 *         if PY3:
 *             with open(filename, 'rb') as ff:             # <<<<<<<<<<<<<<
 *                 st = ff.read()
 *                 st = st.decode("ISO-8859-15")
 */
    /*with:*/ {
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 755, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_filename);
      __Pyx_GIVEREF(__pyx_v_filename);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_filename);
      __Pyx_INCREF(__pyx_n_u_rb);
      __Pyx_GIVEREF(__pyx_n_u_rb);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_n_u_rb);
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_open, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 755, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_1, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 755, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_1, __pyx_n_s_enter); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 755, __pyx_L4_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_4 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
        __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_7);
        if (likely(__pyx_t_4)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_7, function);
        }
      }
      if (__pyx_t_4) {
        __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 755, __pyx_L4_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else {
        __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 755, __pyx_L4_error)
      }
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = __pyx_t_2;
      __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      /*try:*/ {
        {
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __Pyx_ExceptionSave(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12);
          __Pyx_XGOTREF(__pyx_t_10);
          __Pyx_XGOTREF(__pyx_t_11);
          __Pyx_XGOTREF(__pyx_t_12);
          /*try:*/ {
            __pyx_v_ff = __pyx_t_7;
            __pyx_t_7 = 0;

            /* "metaphor/monal/lcode/codewriter.py":756
 *         if PY3:
 *             with open(filename, 'rb') as ff:
 *                 st = ff.read()             # <<<<<<<<<<<<<<
 *                 st = st.decode("ISO-8859-15")
 *         else:
 */
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_ff, __pyx_n_s_read); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 756, __pyx_L8_error)
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_2 = NULL;
            if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
              __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_1);
              if (likely(__pyx_t_2)) {
                PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
                __Pyx_INCREF(__pyx_t_2);
                __Pyx_INCREF(function);
                __Pyx_DECREF_SET(__pyx_t_1, function);
              }
            }
            if (__pyx_t_2) {
              __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 756, __pyx_L8_error)
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            } else {
              __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 756, __pyx_L8_error)
            }
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_v_st = __pyx_t_7;
            __pyx_t_7 = 0;

            /* "metaphor/monal/lcode/codewriter.py":757
 *             with open(filename, 'rb') as ff:
 *                 st = ff.read()
 *                 st = st.decode("ISO-8859-15")             # <<<<<<<<<<<<<<
 *         else:
 *             with open(filename, 'rb') as ff:
 */
            __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_st, __pyx_n_s_decode); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 757, __pyx_L8_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__17, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 757, __pyx_L8_error)
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF_SET(__pyx_v_st, __pyx_t_1);
            __pyx_t_1 = 0;

            /* "metaphor/monal/lcode/codewriter.py":755
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 *         if PY3:
 *             with open(filename, 'rb') as ff:             # <<<<<<<<<<<<<<
 *                 st = ff.read()
 *                 st = st.decode("ISO-8859-15")
 */
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L13_try_end;
          __pyx_L8_error:;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getTemplate", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_7, &__pyx_t_2) < 0) __PYX_ERR(0, 755, __pyx_L10_except_error)
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_4 = PyTuple_Pack(3, __pyx_t_1, __pyx_t_7, __pyx_t_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 755, __pyx_L10_except_error)
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_4, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 755, __pyx_L10_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_8 < 0) __PYX_ERR(0, 755, __pyx_L10_except_error)
            __pyx_t_14 = ((!(__pyx_t_8 != 0)) != 0);
            if (__pyx_t_14) {
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_2);
              __Pyx_ErrRestoreWithState(__pyx_t_1, __pyx_t_7, __pyx_t_2);
              __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_2 = 0; 
              __PYX_ERR(0, 755, __pyx_L10_except_error)
            }
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            goto __pyx_L9_exception_handled;
          }
          __pyx_L10_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          goto __pyx_L1_error;
          __pyx_L9_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
          __pyx_L13_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__18, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 755, __pyx_L1_error)
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          goto __pyx_L7;
        }
        __pyx_L7:;
      }
      goto __pyx_L17;
      __pyx_L4_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L1_error;
      __pyx_L17:;
    }

    /* "metaphor/monal/lcode/codewriter.py":754
 *         lst = TextID.split('_')
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 *         if PY3:             # <<<<<<<<<<<<<<
 *             with open(filename, 'rb') as ff:
 *                 st = ff.read()
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":759
 *                 st = st.decode("ISO-8859-15")
 *         else:
 *             with open(filename, 'rb') as ff:             # <<<<<<<<<<<<<<
 *                 st = ff.read()
 *         return st
 */
  /*else*/ {
    /*with:*/ {
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 759, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_filename);
      __Pyx_GIVEREF(__pyx_v_filename);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_filename);
      __Pyx_INCREF(__pyx_n_u_rb);
      __Pyx_GIVEREF(__pyx_n_u_rb);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_n_u_rb);
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_open, __pyx_t_2, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 759, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_9 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_exit); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 759, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_1 = __Pyx_PyObject_LookupSpecial(__pyx_t_7, __pyx_n_s_enter); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 759, __pyx_L18_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
        __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1);
        if (likely(__pyx_t_4)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_1, function);
        }
      }
      if (__pyx_t_4) {
        __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 759, __pyx_L18_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else {
        __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 759, __pyx_L18_error)
      }
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __pyx_t_2;
      __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      /*try:*/ {
        {
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __Pyx_ExceptionSave(&__pyx_t_12, &__pyx_t_11, &__pyx_t_10);
          __Pyx_XGOTREF(__pyx_t_12);
          __Pyx_XGOTREF(__pyx_t_11);
          __Pyx_XGOTREF(__pyx_t_10);
          /*try:*/ {
            __pyx_v_ff = __pyx_t_1;
            __pyx_t_1 = 0;

            /* "metaphor/monal/lcode/codewriter.py":760
 *         else:
 *             with open(filename, 'rb') as ff:
 *                 st = ff.read()             # <<<<<<<<<<<<<<
 *         return st
 * 
 */
            __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_ff, __pyx_n_s_read); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 760, __pyx_L22_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_2 = NULL;
            if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
              __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_7);
              if (likely(__pyx_t_2)) {
                PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
                __Pyx_INCREF(__pyx_t_2);
                __Pyx_INCREF(function);
                __Pyx_DECREF_SET(__pyx_t_7, function);
              }
            }
            if (__pyx_t_2) {
              __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 760, __pyx_L22_error)
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            } else {
              __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 760, __pyx_L22_error)
            }
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __pyx_v_st = __pyx_t_1;
            __pyx_t_1 = 0;

            /* "metaphor/monal/lcode/codewriter.py":759
 *                 st = st.decode("ISO-8859-15")
 *         else:
 *             with open(filename, 'rb') as ff:             # <<<<<<<<<<<<<<
 *                 st = ff.read()
 *         return st
 */
          }
          __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L27_try_end;
          __pyx_L22_error:;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getTemplate", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_7, &__pyx_t_2) < 0) __PYX_ERR(0, 759, __pyx_L24_except_error)
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_4 = PyTuple_Pack(3, __pyx_t_1, __pyx_t_7, __pyx_t_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 759, __pyx_L24_except_error)
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_4, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 759, __pyx_L24_except_error)
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            if (__pyx_t_14 < 0) __PYX_ERR(0, 759, __pyx_L24_except_error)
            __pyx_t_8 = ((!(__pyx_t_14 != 0)) != 0);
            if (__pyx_t_8) {
              __Pyx_GIVEREF(__pyx_t_1);
              __Pyx_GIVEREF(__pyx_t_7);
              __Pyx_XGIVEREF(__pyx_t_2);
              __Pyx_ErrRestoreWithState(__pyx_t_1, __pyx_t_7, __pyx_t_2);
              __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_2 = 0; 
              __PYX_ERR(0, 759, __pyx_L24_except_error)
            }
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            goto __pyx_L23_exception_handled;
          }
          __pyx_L24_except_error:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          goto __pyx_L1_error;
          __pyx_L23_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_12);
          __Pyx_XGIVEREF(__pyx_t_11);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_11, __pyx_t_10);
          __pyx_L27_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_9) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__19, NULL);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 759, __pyx_L1_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L21;
        }
        __pyx_L21:;
      }
      goto __pyx_L31;
      __pyx_L18_error:;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L1_error;
      __pyx_L31:;
    }
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":761
 *             with open(filename, 'rb') as ff:
 *                 st = ff.read()
 *         return st             # <<<<<<<<<<<<<<
 * 
 *     def SetDecimalSep(self, Value):
 */
  __Pyx_XDECREF(__pyx_r);
  if (unlikely(!__pyx_v_st)) { __Pyx_RaiseUnboundLocalError("st"); __PYX_ERR(0, 761, __pyx_L1_error) }
  __Pyx_INCREF(__pyx_v_st);
  __pyx_r = __pyx_v_st;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":751
 *         return fillstr(self.DecalIni)
 * 
 *     def getTemplate(self, TextID):             # <<<<<<<<<<<<<<
 *         lst = TextID.split('_')
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getTemplate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_v_filename);
  __Pyx_XDECREF(__pyx_v_ff);
  __Pyx_XDECREF(__pyx_v_st);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":763
 *         return st
 * 
 *     def SetDecimalSep(self, Value):             # <<<<<<<<<<<<<<
 *         self._DecimalSep = Value
 *         self.SetDecimalSeparator(Value)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_75SetDecimalSep(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_75SetDecimalSep = {"SetDecimalSep", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_75SetDecimalSep, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_75SetDecimalSep(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_Value = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("SetDecimalSep (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Value,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Value)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("SetDecimalSep", 1, 2, 2, 1); __PYX_ERR(0, 763, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "SetDecimalSep") < 0)) __PYX_ERR(0, 763, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_Value = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("SetDecimalSep", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 763, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SetDecimalSep", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_74SetDecimalSep(__pyx_self, __pyx_v_self, __pyx_v_Value);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_74SetDecimalSep(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Value) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("SetDecimalSep", 0);

  /* "metaphor/monal/lcode/codewriter.py":764
 * 
 *     def SetDecimalSep(self, Value):
 *         self._DecimalSep = Value             # <<<<<<<<<<<<<<
 *         self.SetDecimalSeparator(Value)
 * 
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_DecimalSep, __pyx_v_Value) < 0) __PYX_ERR(0, 764, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":765
 *     def SetDecimalSep(self, Value):
 *         self._DecimalSep = Value
 *         self.SetDecimalSeparator(Value)             # <<<<<<<<<<<<<<
 * 
 *     def SetDecimalSeparator(self, value):
 */
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_SetDecimalSeparator); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 765, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_3) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_Value); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 765, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_Value};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 765, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_Value};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 765, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    {
      __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 765, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
      __Pyx_INCREF(__pyx_v_Value);
      __Pyx_GIVEREF(__pyx_v_Value);
      PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_Value);
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 765, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":763
 *         return st
 * 
 *     def SetDecimalSep(self, Value):             # <<<<<<<<<<<<<<
 *         self._DecimalSep = Value
 *         self.SetDecimalSeparator(Value)
 */

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SetDecimalSep", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":767
 *         self.SetDecimalSeparator(Value)
 * 
 *     def SetDecimalSeparator(self, value):             # <<<<<<<<<<<<<<
 *         self._DecimalSep = value
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_77SetDecimalSeparator(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_77SetDecimalSeparator = {"SetDecimalSeparator", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_77SetDecimalSeparator, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_77SetDecimalSeparator(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_value = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("SetDecimalSeparator (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("SetDecimalSeparator", 1, 2, 2, 1); __PYX_ERR(0, 767, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "SetDecimalSeparator") < 0)) __PYX_ERR(0, 767, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_value = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("SetDecimalSeparator", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 767, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SetDecimalSeparator", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_76SetDecimalSeparator(__pyx_self, __pyx_v_self, __pyx_v_value);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_76SetDecimalSeparator(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("SetDecimalSeparator", 0);

  /* "metaphor/monal/lcode/codewriter.py":768
 * 
 *     def SetDecimalSeparator(self, value):
 *         self._DecimalSep = value             # <<<<<<<<<<<<<<
 * 
 *     def GetNetworkKind(self):
 */
  if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_DecimalSep, __pyx_v_value) < 0) __PYX_ERR(0, 768, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":767
 *         self.SetDecimalSeparator(Value)
 * 
 *     def SetDecimalSeparator(self, value):             # <<<<<<<<<<<<<<
 *         self._DecimalSep = value
 * 
 */

  /* function exit code */
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SetDecimalSeparator", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":770
 *         self._DecimalSep = value
 * 
 *     def GetNetworkKind(self):             # <<<<<<<<<<<<<<
 *         if (self.NetSource.order > 0):
 *             return CC.nkDyn
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_79GetNetworkKind(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_79GetNetworkKind = {"GetNetworkKind", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_79GetNetworkKind, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_79GetNetworkKind(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetNetworkKind (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_78GetNetworkKind(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_78GetNetworkKind(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_t_3;
  __Pyx_RefNannySetupContext("GetNetworkKind", 0);

  /* "metaphor/monal/lcode/codewriter.py":771
 * 
 *     def GetNetworkKind(self):
 *         if (self.NetSource.order > 0):             # <<<<<<<<<<<<<<
 *             return CC.nkDyn
 *         return CC.nkStat
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 771, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_order); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 771, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 771, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 771, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":772
 *     def GetNetworkKind(self):
 *         if (self.NetSource.order > 0):
 *             return CC.nkDyn             # <<<<<<<<<<<<<<
 *         return CC.nkStat
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 772, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_nkDyn); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 772, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_r = __pyx_t_2;
    __pyx_t_2 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":771
 * 
 *     def GetNetworkKind(self):
 *         if (self.NetSource.order > 0):             # <<<<<<<<<<<<<<
 *             return CC.nkDyn
 *         return CC.nkStat
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":773
 *         if (self.NetSource.order > 0):
 *             return CC.nkDyn
 *         return CC.nkStat             # <<<<<<<<<<<<<<
 * 
 *     def GetAffect(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 773, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_nkStat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 773, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":770
 *         self._DecimalSep = value
 * 
 *     def GetNetworkKind(self):             # <<<<<<<<<<<<<<
 *         if (self.NetSource.order > 0):
 *             return CC.nkDyn
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetNetworkKind", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":775
 *         return CC.nkStat
 * 
 *     def GetAffect(self):             # <<<<<<<<<<<<<<
 *         return ' = '
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_81GetAffect(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_81GetAffect = {"GetAffect", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_81GetAffect, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_81GetAffect(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetAffect (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_80GetAffect(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_80GetAffect(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetAffect", 0);

  /* "metaphor/monal/lcode/codewriter.py":776
 * 
 *     def GetAffect(self):
 *         return ' = '             # <<<<<<<<<<<<<<
 * 
 *     def InitialisationVecteur(self, Indent0=1):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u__20);
  __pyx_r = __pyx_kp_u__20;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":775
 *         return CC.nkStat
 * 
 *     def GetAffect(self):             # <<<<<<<<<<<<<<
 *         return ' = '
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":778
 *         return ' = '
 * 
 *     def InitialisationVecteur(self, Indent0=1):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_83InitialisationVecteur(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_83InitialisationVecteur = {"InitialisationVecteur", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_83InitialisationVecteur, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_83InitialisationVecteur(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent0 = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("InitialisationVecteur (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent0,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_1));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent0);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "InitialisationVecteur") < 0)) __PYX_ERR(0, 778, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent0 = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("InitialisationVecteur", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 778, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.InitialisationVecteur", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_82InitialisationVecteur(__pyx_self, __pyx_v_self, __pyx_v_Indent0);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_82InitialisationVecteur(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent0) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("InitialisationVecteur", 0);

  /* "metaphor/monal/lcode/codewriter.py":779
 * 
 *     def InitialisationVecteur(self, Indent0=1):
 *         return ''             # <<<<<<<<<<<<<<
 * 
 *     def InitialisationMatrice(self, Indent0=1):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":778
 *         return ' = '
 * 
 *     def InitialisationVecteur(self, Indent0=1):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":781
 *         return ''
 * 
 *     def InitialisationMatrice(self, Indent0=1):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_85InitialisationMatrice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_85InitialisationMatrice = {"InitialisationMatrice", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_85InitialisationMatrice, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_85InitialisationMatrice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent0 = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("InitialisationMatrice (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent0,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_1));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent0);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "InitialisationMatrice") < 0)) __PYX_ERR(0, 781, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent0 = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("InitialisationMatrice", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 781, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.InitialisationMatrice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_84InitialisationMatrice(__pyx_self, __pyx_v_self, __pyx_v_Indent0);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_84InitialisationMatrice(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent0) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("InitialisationMatrice", 0);

  /* "metaphor/monal/lcode/codewriter.py":782
 * 
 *     def InitialisationMatrice(self, Indent0=1):
 *         return ''             # <<<<<<<<<<<<<<
 * 
 *     def ValToStr(self, value, squeeze=False, addbra=False):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":781
 *         return ''
 * 
 *     def InitialisationMatrice(self, Indent0=1):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":784
 *         return ''
 * 
 *     def ValToStr(self, value, squeeze=False, addbra=False):             # <<<<<<<<<<<<<<
 *         if isinstance(value, list):
 *             if not len(value):
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_87ValToStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_87ValToStr = {"ValToStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_87ValToStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_87ValToStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_value = 0;
  PyObject *__pyx_v_squeeze = 0;
  PyObject *__pyx_v_addbra = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("ValToStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,&__pyx_n_s_squeeze,&__pyx_n_s_addbra,0};
    PyObject* values[4] = {0,0,0,0};
    values[2] = ((PyObject *)((PyObject *)Py_False));
    values[3] = ((PyObject *)((PyObject *)Py_False));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        CYTHON_FALLTHROUGH;
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("ValToStr", 0, 2, 4, 1); __PYX_ERR(0, 784, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_squeeze);
          if (value) { values[2] = value; kw_args--; }
        }
        CYTHON_FALLTHROUGH;
        case  3:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_addbra);
          if (value) { values[3] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ValToStr") < 0)) __PYX_ERR(0, 784, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        CYTHON_FALLTHROUGH;
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_value = values[1];
    __pyx_v_squeeze = values[2];
    __pyx_v_addbra = values[3];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("ValToStr", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 784, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ValToStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_86ValToStr(__pyx_self, __pyx_v_self, __pyx_v_value, __pyx_v_squeeze, __pyx_v_addbra);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_86ValToStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value, PyObject *__pyx_v_squeeze, PyObject *__pyx_v_addbra) {
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_8genexpr1__pyx_v_val = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  Py_ssize_t __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *(*__pyx_t_9)(PyObject *);
  PyObject *__pyx_t_10 = NULL;
  __Pyx_RefNannySetupContext("ValToStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":785
 * 
 *     def ValToStr(self, value, squeeze=False, addbra=False):
 *         if isinstance(value, list):             # <<<<<<<<<<<<<<
 *             if not len(value):
 *                 return "{{}}"
 */
  __pyx_t_1 = PyList_Check(__pyx_v_value); 
  __pyx_t_2 = (__pyx_t_1 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":786
 *     def ValToStr(self, value, squeeze=False, addbra=False):
 *         if isinstance(value, list):
 *             if not len(value):             # <<<<<<<<<<<<<<
 *                 return "{{}}"
 *             if squeeze and len(value)==1:
 */
    __pyx_t_3 = PyObject_Length(__pyx_v_value); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 786, __pyx_L1_error)
    __pyx_t_2 = ((!(__pyx_t_3 != 0)) != 0);
    if (__pyx_t_2) {

      /* "metaphor/monal/lcode/codewriter.py":787
 *         if isinstance(value, list):
 *             if not len(value):
 *                 return "{{}}"             # <<<<<<<<<<<<<<
 *             if squeeze and len(value)==1:
 *                 return self.ValToStr(value[0])
 */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_kp_u__21);
      __pyx_r = __pyx_kp_u__21;
      goto __pyx_L0;

      /* "metaphor/monal/lcode/codewriter.py":786
 *     def ValToStr(self, value, squeeze=False, addbra=False):
 *         if isinstance(value, list):
 *             if not len(value):             # <<<<<<<<<<<<<<
 *                 return "{{}}"
 *             if squeeze and len(value)==1:
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":788
 *             if not len(value):
 *                 return "{{}}"
 *             if squeeze and len(value)==1:             # <<<<<<<<<<<<<<
 *                 return self.ValToStr(value[0])
 *             lst = [self.ValToStr(val, addbra=True) for val in value]
 */
    __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_squeeze); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 788, __pyx_L1_error)
    if (__pyx_t_1) {
    } else {
      __pyx_t_2 = __pyx_t_1;
      goto __pyx_L6_bool_binop_done;
    }
    __pyx_t_3 = PyObject_Length(__pyx_v_value); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 788, __pyx_L1_error)
    __pyx_t_1 = ((__pyx_t_3 == 1) != 0);
    __pyx_t_2 = __pyx_t_1;
    __pyx_L6_bool_binop_done:;
    if (__pyx_t_2) {

      /* "metaphor/monal/lcode/codewriter.py":789
 *                 return "{{}}"
 *             if squeeze and len(value)==1:
 *                 return self.ValToStr(value[0])             # <<<<<<<<<<<<<<
 *             lst = [self.ValToStr(val, addbra=True) for val in value]
 * #             if len(value) == listgroup:
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ValToStr); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 789, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = __Pyx_GetItemInt(__pyx_v_value, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 789, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      if (!__pyx_t_7) {
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 789, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_4);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_5)) {
          PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
          __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 789, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
          PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
          __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 789, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        } else
        #endif
        {
          __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 789, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
          __Pyx_GIVEREF(__pyx_t_6);
          PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_6);
          __pyx_t_6 = 0;
          __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 789, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

      /* "metaphor/monal/lcode/codewriter.py":788
 *             if not len(value):
 *                 return "{{}}"
 *             if squeeze and len(value)==1:             # <<<<<<<<<<<<<<
 *                 return self.ValToStr(value[0])
 *             lst = [self.ValToStr(val, addbra=True) for val in value]
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":790
 *             if squeeze and len(value)==1:
 *                 return self.ValToStr(value[0])
 *             lst = [self.ValToStr(val, addbra=True) for val in value]             # <<<<<<<<<<<<<<
 * #             if len(value) == listgroup:
 * #                 lst = [self.ValToStr(val) for val in value]
 */
    { /* enter inner scope */
      __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 790, __pyx_L10_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (likely(PyList_CheckExact(__pyx_v_value)) || PyTuple_CheckExact(__pyx_v_value)) {
        __pyx_t_5 = __pyx_v_value; __Pyx_INCREF(__pyx_t_5); __pyx_t_3 = 0;
        __pyx_t_9 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_v_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 790, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_9 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 790, __pyx_L10_error)
      }
      for (;;) {
        if (likely(!__pyx_t_9)) {
          if (likely(PyList_CheckExact(__pyx_t_5))) {
            if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_8 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_3); __Pyx_INCREF(__pyx_t_8); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 790, __pyx_L10_error)
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 790, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_8);
            #endif
          } else {
            if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_3); __Pyx_INCREF(__pyx_t_8); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 790, __pyx_L10_error)
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 790, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_8);
            #endif
          }
        } else {
          __pyx_t_8 = __pyx_t_9(__pyx_t_5);
          if (unlikely(!__pyx_t_8)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else __PYX_ERR(0, 790, __pyx_L10_error)
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_8);
        }
        __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_val, __pyx_t_8);
        __pyx_t_8 = 0;
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ValToStr); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 790, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 790, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_8genexpr1__pyx_v_val);
        __Pyx_GIVEREF(__pyx_8genexpr1__pyx_v_val);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_8genexpr1__pyx_v_val);
        __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 790, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_7);
        if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_addbra, Py_True) < 0) __PYX_ERR(0, 790, __pyx_L10_error)
        __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 790, __pyx_L10_error)
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_10))) __PYX_ERR(0, 790, __pyx_L10_error)
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_val); __pyx_8genexpr1__pyx_v_val = 0;
      goto __pyx_L13_exit_scope;
      __pyx_L10_error:;
      __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_val); __pyx_8genexpr1__pyx_v_val = 0;
      goto __pyx_L1_error;
      __pyx_L13_exit_scope:;
    } /* exit inner scope */
    __pyx_v_lst = ((PyObject*)__pyx_t_4);
    __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":800
 * #                     sub = "{{{}, {}}}".format(st0, st1)
 * #                     lst.append(sub)
 *             if addbra:             # <<<<<<<<<<<<<<
 *                 return "{{{}}}".format(",".join(lst))
 *             return "{}".format(",".join(lst))
 */
    __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_addbra); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 800, __pyx_L1_error)
    if (__pyx_t_2) {

      /* "metaphor/monal/lcode/codewriter.py":801
 * #                     lst.append(sub)
 *             if addbra:
 *                 return "{{{}}}".format(",".join(lst))             # <<<<<<<<<<<<<<
 *             return "{}".format(",".join(lst))
 *         if isinstance(value, str):
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_kp_u__22, __pyx_n_s_format); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 801, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_10 = PyUnicode_Join(__pyx_kp_u__2, __pyx_v_lst); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 801, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      if (!__pyx_t_7) {
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_10); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 801, __pyx_L1_error)
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_4);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_5)) {
          PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_10};
          __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 801, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
          PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_10};
          __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 801, __pyx_L1_error)
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        } else
        #endif
        {
          __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 801, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL;
          __Pyx_GIVEREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_10);
          __pyx_t_10 = 0;
          __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 801, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

      /* "metaphor/monal/lcode/codewriter.py":800
 * #                     sub = "{{{}, {}}}".format(st0, st1)
 * #                     lst.append(sub)
 *             if addbra:             # <<<<<<<<<<<<<<
 *                 return "{{{}}}".format(",".join(lst))
 *             return "{}".format(",".join(lst))
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":802
 *             if addbra:
 *                 return "{{{}}}".format(",".join(lst))
 *             return "{}".format(",".join(lst))             # <<<<<<<<<<<<<<
 *         if isinstance(value, str):
 *             return value
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_kp_u__23, __pyx_n_s_format); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 802, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = PyUnicode_Join(__pyx_kp_u__2, __pyx_v_lst); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 802, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_t_10 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
      __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_5);
      if (likely(__pyx_t_10)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
        __Pyx_INCREF(__pyx_t_10);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_5, function);
      }
    }
    if (!__pyx_t_10) {
      __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 802, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_4);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_5)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_6};
        __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 802, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
        PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_6};
        __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 802, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 802, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_10); __pyx_t_10 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 802, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_r = __pyx_t_4;
    __pyx_t_4 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":785
 * 
 *     def ValToStr(self, value, squeeze=False, addbra=False):
 *         if isinstance(value, list):             # <<<<<<<<<<<<<<
 *             if not len(value):
 *                 return "{{}}"
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":803
 *                 return "{{{}}}".format(",".join(lst))
 *             return "{}".format(",".join(lst))
 *         if isinstance(value, str):             # <<<<<<<<<<<<<<
 *             return value
 *         if isinstance(value, int):
 */
  __pyx_t_2 = PyUnicode_Check(__pyx_v_value); 
  __pyx_t_1 = (__pyx_t_2 != 0);
  if (__pyx_t_1) {

    /* "metaphor/monal/lcode/codewriter.py":804
 *             return "{}".format(",".join(lst))
 *         if isinstance(value, str):
 *             return value             # <<<<<<<<<<<<<<
 *         if isinstance(value, int):
 *             return str(value)
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_v_value);
    __pyx_r = __pyx_v_value;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":803
 *                 return "{{{}}}".format(",".join(lst))
 *             return "{}".format(",".join(lst))
 *         if isinstance(value, str):             # <<<<<<<<<<<<<<
 *             return value
 *         if isinstance(value, int):
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":805
 *         if isinstance(value, str):
 *             return value
 *         if isinstance(value, int):             # <<<<<<<<<<<<<<
 *             return str(value)
 *         if np.isinf(value):
 */
  __pyx_t_1 = PyInt_Check(__pyx_v_value); 
  __pyx_t_2 = (__pyx_t_1 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":806
 *             return value
 *         if isinstance(value, int):
 *             return str(value)             # <<<<<<<<<<<<<<
 *         if np.isinf(value):
 *             if value > 0:
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_value); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 806, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_r = __pyx_t_4;
    __pyx_t_4 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":805
 *         if isinstance(value, str):
 *             return value
 *         if isinstance(value, int):             # <<<<<<<<<<<<<<
 *             return str(value)
 *         if np.isinf(value):
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":807
 *         if isinstance(value, int):
 *             return str(value)
 *         if np.isinf(value):             # <<<<<<<<<<<<<<
 *             if value > 0:
 *                 return self.ValToStr(1E308)
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 807, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_isinf); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 807, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_7))) {
    __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7);
    if (likely(__pyx_t_5)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
      __Pyx_INCREF(__pyx_t_5);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_7, function);
    }
  }
  if (!__pyx_t_5) {
    __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_v_value); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 807, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_7)) {
      PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_value};
      __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 807, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_4);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
      PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_value};
      __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 807, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_4);
    } else
    #endif
    {
      __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 807, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
      __Pyx_INCREF(__pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_v_value);
      __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 807, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 807, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":808
 *             return str(value)
 *         if np.isinf(value):
 *             if value > 0:             # <<<<<<<<<<<<<<
 *                 return self.ValToStr(1E308)
 *             return self.ValToStr(-1E308)
 */
    __pyx_t_4 = PyObject_RichCompare(__pyx_v_value, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 808, __pyx_L1_error)
    __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 808, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (__pyx_t_2) {

      /* "metaphor/monal/lcode/codewriter.py":809
 *         if np.isinf(value):
 *             if value > 0:
 *                 return self.ValToStr(1E308)             # <<<<<<<<<<<<<<
 *             return self.ValToStr(-1E308)
 *         return "%18.15g" % value
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ValToStr); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 809, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__24, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 809, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_7;
      __pyx_t_7 = 0;
      goto __pyx_L0;

      /* "metaphor/monal/lcode/codewriter.py":808
 *             return str(value)
 *         if np.isinf(value):
 *             if value > 0:             # <<<<<<<<<<<<<<
 *                 return self.ValToStr(1E308)
 *             return self.ValToStr(-1E308)
 */
    }

    /* "metaphor/monal/lcode/codewriter.py":810
 *             if value > 0:
 *                 return self.ValToStr(1E308)
 *             return self.ValToStr(-1E308)             # <<<<<<<<<<<<<<
 *         return "%18.15g" % value
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ValToStr); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 810, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__25, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 810, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __pyx_r = __pyx_t_4;
    __pyx_t_4 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":807
 *         if isinstance(value, int):
 *             return str(value)
 *         if np.isinf(value):             # <<<<<<<<<<<<<<
 *             if value > 0:
 *                 return self.ValToStr(1E308)
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":811
 *                 return self.ValToStr(1E308)
 *             return self.ValToStr(-1E308)
 *         return "%18.15g" % value             # <<<<<<<<<<<<<<
 * 
 *     def PlusEgal(self, StTarget, StSource):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_4 = PyUnicode_Format(__pyx_kp_u_18_15g, __pyx_v_value); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 811, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_r = __pyx_t_4;
  __pyx_t_4 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":784
 *         return ''
 * 
 *     def ValToStr(self, value, squeeze=False, addbra=False):             # <<<<<<<<<<<<<<
 *         if isinstance(value, list):
 *             if not len(value):
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ValToStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_val);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":813
 *         return "%18.15g" % value
 * 
 *     def PlusEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' += ' + StSource
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_89PlusEgal(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_89PlusEgal = {"PlusEgal", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_89PlusEgal, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_89PlusEgal(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_StTarget = 0;
  PyObject *__pyx_v_StSource = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("PlusEgal (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_StTarget,&__pyx_n_s_StSource,0};
    PyObject* values[3] = {0,0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_StTarget)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("PlusEgal", 1, 3, 3, 1); __PYX_ERR(0, 813, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_StSource)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("PlusEgal", 1, 3, 3, 2); __PYX_ERR(0, 813, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "PlusEgal") < 0)) __PYX_ERR(0, 813, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
      values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
    }
    __pyx_v_self = values[0];
    __pyx_v_StTarget = values[1];
    __pyx_v_StSource = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("PlusEgal", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 813, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.PlusEgal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_88PlusEgal(__pyx_self, __pyx_v_self, __pyx_v_StTarget, __pyx_v_StSource);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_88PlusEgal(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_StTarget, PyObject *__pyx_v_StSource) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("PlusEgal", 0);

  /* "metaphor/monal/lcode/codewriter.py":814
 * 
 *     def PlusEgal(self, StTarget, StSource):
 *         return StTarget + ' += ' + StSource             # <<<<<<<<<<<<<<
 * 
 *     def MoinsEgal(self, StTarget, StSource):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyNumber_Add(__pyx_v_StTarget, __pyx_kp_u__26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 814, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_v_StSource); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 814, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":813
 *         return "%18.15g" % value
 * 
 *     def PlusEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' += ' + StSource
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.PlusEgal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":816
 *         return StTarget + ' += ' + StSource
 * 
 *     def MoinsEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' -= ' + StSource
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_91MoinsEgal(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_91MoinsEgal = {"MoinsEgal", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_91MoinsEgal, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_91MoinsEgal(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_StTarget = 0;
  PyObject *__pyx_v_StSource = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("MoinsEgal (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_StTarget,&__pyx_n_s_StSource,0};
    PyObject* values[3] = {0,0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_StTarget)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("MoinsEgal", 1, 3, 3, 1); __PYX_ERR(0, 816, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_StSource)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("MoinsEgal", 1, 3, 3, 2); __PYX_ERR(0, 816, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "MoinsEgal") < 0)) __PYX_ERR(0, 816, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
      values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
    }
    __pyx_v_self = values[0];
    __pyx_v_StTarget = values[1];
    __pyx_v_StSource = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("MoinsEgal", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 816, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.MoinsEgal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_90MoinsEgal(__pyx_self, __pyx_v_self, __pyx_v_StTarget, __pyx_v_StSource);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_90MoinsEgal(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_StTarget, PyObject *__pyx_v_StSource) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("MoinsEgal", 0);

  /* "metaphor/monal/lcode/codewriter.py":817
 * 
 *     def MoinsEgal(self, StTarget, StSource):
 *         return StTarget + ' -= ' + StSource             # <<<<<<<<<<<<<<
 * 
 *     def MultiEgal(self, StTarget, StSource):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyNumber_Add(__pyx_v_StTarget, __pyx_kp_u__27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 817, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_v_StSource); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 817, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":816
 *         return StTarget + ' += ' + StSource
 * 
 *     def MoinsEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' -= ' + StSource
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.MoinsEgal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":819
 *         return StTarget + ' -= ' + StSource
 * 
 *     def MultiEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' *= ' + StSource
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_93MultiEgal(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_93MultiEgal = {"MultiEgal", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_93MultiEgal, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_93MultiEgal(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_StTarget = 0;
  PyObject *__pyx_v_StSource = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("MultiEgal (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_StTarget,&__pyx_n_s_StSource,0};
    PyObject* values[3] = {0,0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_StTarget)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("MultiEgal", 1, 3, 3, 1); __PYX_ERR(0, 819, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_StSource)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("MultiEgal", 1, 3, 3, 2); __PYX_ERR(0, 819, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "MultiEgal") < 0)) __PYX_ERR(0, 819, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
      values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
    }
    __pyx_v_self = values[0];
    __pyx_v_StTarget = values[1];
    __pyx_v_StSource = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("MultiEgal", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 819, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.MultiEgal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_92MultiEgal(__pyx_self, __pyx_v_self, __pyx_v_StTarget, __pyx_v_StSource);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_92MultiEgal(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_StTarget, PyObject *__pyx_v_StSource) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("MultiEgal", 0);

  /* "metaphor/monal/lcode/codewriter.py":820
 * 
 *     def MultiEgal(self, StTarget, StSource):
 *         return StTarget + ' *= ' + StSource             # <<<<<<<<<<<<<<
 * 
 *     def MultiCondition1(self, val):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyNumber_Add(__pyx_v_StTarget, __pyx_kp_u__28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 820, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_v_StSource); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 820, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":819
 *         return StTarget + ' -= ' + StSource
 * 
 *     def MultiEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' *= ' + StSource
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.MultiEgal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":822
 *         return StTarget + ' *= ' + StSource
 * 
 *     def MultiCondition1(self, val):             # <<<<<<<<<<<<<<
 *         if val == self.ValToStr(1):
 *             return ""
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_95MultiCondition1(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_95MultiCondition1 = {"MultiCondition1", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_95MultiCondition1, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_95MultiCondition1(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_val = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("MultiCondition1 (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_val,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_val)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("MultiCondition1", 1, 2, 2, 1); __PYX_ERR(0, 822, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "MultiCondition1") < 0)) __PYX_ERR(0, 822, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_val = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("MultiCondition1", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 822, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.MultiCondition1", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_94MultiCondition1(__pyx_self, __pyx_v_self, __pyx_v_val);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_94MultiCondition1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_val) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_t_3;
  __Pyx_RefNannySetupContext("MultiCondition1", 0);

  /* "metaphor/monal/lcode/codewriter.py":823
 * 
 *     def MultiCondition1(self, val):
 *         if val == self.ValToStr(1):             # <<<<<<<<<<<<<<
 *             return ""
 *         return "* %s"% val
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ValToStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 823, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__29, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 823, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyObject_RichCompare(__pyx_v_val, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 823, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 823, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":824
 *     def MultiCondition1(self, val):
 *         if val == self.ValToStr(1):
 *             return ""             # <<<<<<<<<<<<<<
 *         return "* %s"% val
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_kp_u_);
    __pyx_r = __pyx_kp_u_;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":823
 * 
 *     def MultiCondition1(self, val):
 *         if val == self.ValToStr(1):             # <<<<<<<<<<<<<<
 *             return ""
 *         return "* %s"% val
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":825
 *         if val == self.ValToStr(1):
 *             return ""
 *         return "* %s"% val             # <<<<<<<<<<<<<<
 * 
 *     def DiviseEgal(self, StTarget, StSource):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyUnicode_Format(__pyx_kp_u_s, __pyx_v_val); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 825, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":822
 *         return StTarget + ' *= ' + StSource
 * 
 *     def MultiCondition1(self, val):             # <<<<<<<<<<<<<<
 *         if val == self.ValToStr(1):
 *             return ""
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.MultiCondition1", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":827
 *         return "* %s"% val
 * 
 *     def DiviseEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' /= ' + StSource
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_97DiviseEgal(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_97DiviseEgal = {"DiviseEgal", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_97DiviseEgal, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_97DiviseEgal(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_StTarget = 0;
  PyObject *__pyx_v_StSource = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("DiviseEgal (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_StTarget,&__pyx_n_s_StSource,0};
    PyObject* values[3] = {0,0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_StTarget)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("DiviseEgal", 1, 3, 3, 1); __PYX_ERR(0, 827, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_StSource)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("DiviseEgal", 1, 3, 3, 2); __PYX_ERR(0, 827, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "DiviseEgal") < 0)) __PYX_ERR(0, 827, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
      values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
    }
    __pyx_v_self = values[0];
    __pyx_v_StTarget = values[1];
    __pyx_v_StSource = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("DiviseEgal", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 827, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.DiviseEgal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_96DiviseEgal(__pyx_self, __pyx_v_self, __pyx_v_StTarget, __pyx_v_StSource);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_96DiviseEgal(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_StTarget, PyObject *__pyx_v_StSource) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("DiviseEgal", 0);

  /* "metaphor/monal/lcode/codewriter.py":828
 * 
 *     def DiviseEgal(self, StTarget, StSource):
 *         return StTarget + ' /= ' + StSource             # <<<<<<<<<<<<<<
 * 
 *     def GetBeginStr(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyNumber_Add(__pyx_v_StTarget, __pyx_kp_u__30); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 828, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_v_StSource); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 828, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":827
 *         return "* %s"% val
 * 
 *     def DiviseEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' /= ' + StSource
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.DiviseEgal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":830
 *         return StTarget + ' /= ' + StSource
 * 
 *     def GetBeginStr(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_99GetBeginStr(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_99GetBeginStr = {"GetBeginStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_99GetBeginStr, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_99GetBeginStr(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetBeginStr (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_98GetBeginStr(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_98GetBeginStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetBeginStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":831
 * 
 *     def GetBeginStr(self):
 *         return ''             # <<<<<<<<<<<<<<
 * 
 *     def GetEndStr(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":830
 *         return StTarget + ' /= ' + StSource
 * 
 *     def GetBeginStr(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":833
 *         return ''
 * 
 *     def GetEndStr(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_101GetEndStr(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_101GetEndStr = {"GetEndStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_101GetEndStr, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_101GetEndStr(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetEndStr (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_100GetEndStr(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_100GetEndStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetEndStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":834
 * 
 *     def GetEndStr(self):
 *         return ''             # <<<<<<<<<<<<<<
 * 
 *     def GetMatrixSource(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":833
 *         return ''
 * 
 *     def GetEndStr(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":836
 *         return ''
 * 
 *     def GetMatrixSource(self):             # <<<<<<<<<<<<<<
 *         try:
 *             if self.DriverSource.dispersionMatrix.ndim == 3:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_103GetMatrixSource(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_103GetMatrixSource = {"GetMatrixSource", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_103GetMatrixSource, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_103GetMatrixSource(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetMatrixSource (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_102GetMatrixSource(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_102GetMatrixSource(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("GetMatrixSource", 0);

  /* "metaphor/monal/lcode/codewriter.py":837
 * 
 *     def GetMatrixSource(self):
 *         try:             # <<<<<<<<<<<<<<
 *             if self.DriverSource.dispersionMatrix.ndim == 3:
 *                 return self.DriverSource.dispersionMatrix[0]
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":838
 *     def GetMatrixSource(self):
 *         try:
 *             if self.DriverSource.dispersionMatrix.ndim == 3:             # <<<<<<<<<<<<<<
 *                 return self.DriverSource.dispersionMatrix[0]
 *             else:
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 838, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_dispersionMatrix); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 838, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 838, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyInt_EqObjC(__pyx_t_4, __pyx_int_3, 3, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 838, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 838, __pyx_L3_error)
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (__pyx_t_6) {

        /* "metaphor/monal/lcode/codewriter.py":839
 *         try:
 *             if self.DriverSource.dispersionMatrix.ndim == 3:
 *                 return self.DriverSource.dispersionMatrix[0]             # <<<<<<<<<<<<<<
 *             else:
 *                 return self.DriverSource.dispersionMatrix
 */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 839, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_dispersionMatrix); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 839, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 839, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        goto __pyx_L7_try_return;

        /* "metaphor/monal/lcode/codewriter.py":838
 *     def GetMatrixSource(self):
 *         try:
 *             if self.DriverSource.dispersionMatrix.ndim == 3:             # <<<<<<<<<<<<<<
 *                 return self.DriverSource.dispersionMatrix[0]
 *             else:
 */
      }

      /* "metaphor/monal/lcode/codewriter.py":841
 *                 return self.DriverSource.dispersionMatrix[0]
 *             else:
 *                 return self.DriverSource.dispersionMatrix             # <<<<<<<<<<<<<<
 *         except:
 *             return None
 */
      /*else*/ {
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 841, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_dispersionMatrix); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 841, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L7_try_return;
      }

      /* "metaphor/monal/lcode/codewriter.py":837
 * 
 *     def GetMatrixSource(self):
 *         try:             # <<<<<<<<<<<<<<
 *             if self.DriverSource.dispersionMatrix.ndim == 3:
 *                 return self.DriverSource.dispersionMatrix[0]
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":842
 *             else:
 *                 return self.DriverSource.dispersionMatrix
 *         except:             # <<<<<<<<<<<<<<
 *             return None
 * 
 */
    /*except:*/ {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMatrixSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_7) < 0) __PYX_ERR(0, 842, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":843
 *                 return self.DriverSource.dispersionMatrix
 *         except:
 *             return None             # <<<<<<<<<<<<<<
 * 
 *     def GetLangMarkup(self):
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L6_except_return;
    }
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":837
 * 
 *     def GetMatrixSource(self):
 *         try:             # <<<<<<<<<<<<<<
 *             if self.DriverSource.dispersionMatrix.ndim == 3:
 *                 return self.DriverSource.dispersionMatrix[0]
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":836
 *         return ''
 * 
 *     def GetMatrixSource(self):             # <<<<<<<<<<<<<<
 *         try:
 *             if self.DriverSource.dispersionMatrix.ndim == 3:
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMatrixSource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":845
 *             return None
 * 
 *     def GetLangMarkup(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_105GetLangMarkup(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_105GetLangMarkup = {"GetLangMarkup", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_105GetLangMarkup, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_105GetLangMarkup(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetLangMarkup (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_104GetLangMarkup(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_104GetLangMarkup(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetLangMarkup", 0);

  /* "metaphor/monal/lcode/codewriter.py":846
 * 
 *     def GetLangMarkup(self):
 *         return ''             # <<<<<<<<<<<<<<
 * 
 *     def GetWithMatrix(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":845
 *             return None
 * 
 *     def GetLangMarkup(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":848
 *         return ''
 * 
 *     def GetWithMatrix(self):             # <<<<<<<<<<<<<<
 *         Mat = self.MatrixSource
 *         return (Mat is not None) and (sum(Mat.shape) > 0)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_107GetWithMatrix(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_107GetWithMatrix = {"GetWithMatrix", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_107GetWithMatrix, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_107GetWithMatrix(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetWithMatrix (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_106GetWithMatrix(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_106GetWithMatrix(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_Mat = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("GetWithMatrix", 0);

  /* "metaphor/monal/lcode/codewriter.py":849
 * 
 *     def GetWithMatrix(self):
 *         Mat = self.MatrixSource             # <<<<<<<<<<<<<<
 *         return (Mat is not None) and (sum(Mat.shape) > 0)
 * 
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_MatrixSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 849, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_Mat = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":850
 *     def GetWithMatrix(self):
 *         Mat = self.MatrixSource
 *         return (Mat is not None) and (sum(Mat.shape) > 0)             # <<<<<<<<<<<<<<
 * 
 *     def GetShortFileName(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = (__pyx_v_Mat != Py_None);
  if (__pyx_t_2) {
  } else {
    __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 850, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __pyx_t_1 = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L3_bool_binop_done;
  }
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_Mat, __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 850, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_builtin_sum, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 850, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = PyObject_RichCompare(__pyx_t_4, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 850, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_INCREF(__pyx_t_3);
  __pyx_t_1 = __pyx_t_3;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_L3_bool_binop_done:;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":848
 *         return ''
 * 
 *     def GetWithMatrix(self):             # <<<<<<<<<<<<<<
 *         Mat = self.MatrixSource
 *         return (Mat is not None) and (sum(Mat.shape) > 0)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetWithMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_Mat);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":852
 *         return (Mat is not None) and (sum(Mat.shape) > 0)
 * 
 *     def GetShortFileName(self):             # <<<<<<<<<<<<<<
 *         return CCharOnlys(os.path.basename(self._FileName))
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_109GetShortFileName(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_109GetShortFileName = {"GetShortFileName", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_109GetShortFileName, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_109GetShortFileName(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetShortFileName (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_108GetShortFileName(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_108GetShortFileName(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("GetShortFileName", 0);

  /* "metaphor/monal/lcode/codewriter.py":853
 * 
 *     def GetShortFileName(self):
 *         return CCharOnlys(os.path.basename(self._FileName))             # <<<<<<<<<<<<<<
 * 
 *     def GetLongWeight(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_CCharOnlys); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 853, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_os); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 853, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_path); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 853, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_basename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 853, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_FileName); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 853, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
    if (likely(__pyx_t_6)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
      __Pyx_INCREF(__pyx_t_6);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_4, function);
    }
  }
  if (!__pyx_t_6) {
    __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 853, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_GOTREF(__pyx_t_3);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_4)) {
      PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_5};
      __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 853, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
      PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_5};
      __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 853, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    } else
    #endif
    {
      __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 853, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
      __Pyx_GIVEREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 853, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_4)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_4) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 853, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_3};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 853, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_3};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 853, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else
    #endif
    {
      __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 853, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __pyx_t_4 = NULL;
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 853, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":852
 *         return (Mat is not None) and (sum(Mat.shape) > 0)
 * 
 *     def GetShortFileName(self):             # <<<<<<<<<<<<<<
 *         return CCharOnlys(os.path.basename(self._FileName))
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetShortFileName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":855
 *         return CCharOnlys(os.path.basename(self._FileName))
 * 
 *     def GetLongWeight(self):             # <<<<<<<<<<<<<<
 *         return self._Weight
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_111GetLongWeight(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_111GetLongWeight = {"GetLongWeight", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_111GetLongWeight, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_111GetLongWeight(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetLongWeight (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_110GetLongWeight(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_110GetLongWeight(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("GetLongWeight", 0);

  /* "metaphor/monal/lcode/codewriter.py":856
 * 
 *     def GetLongWeight(self):
 *         return self._Weight             # <<<<<<<<<<<<<<
 * 
 *     def GetCodeType(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Weight); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 856, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":855
 *         return CCharOnlys(os.path.basename(self._FileName))
 * 
 *     def GetLongWeight(self):             # <<<<<<<<<<<<<<
 *         return self._Weight
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetLongWeight", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":858
 *         return self._Weight
 * 
 *     def GetCodeType(self):             # <<<<<<<<<<<<<<
 *         return CC.ctUnknown
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_113GetCodeType(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_113GetCodeType = {"GetCodeType", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_113GetCodeType, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_113GetCodeType(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetCodeType (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_112GetCodeType(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_112GetCodeType(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("GetCodeType", 0);

  /* "metaphor/monal/lcode/codewriter.py":859
 * 
 *     def GetCodeType(self):
 *         return CC.ctUnknown             # <<<<<<<<<<<<<<
 * 
 *     def GetJurComment(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 859, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ctUnknown); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 859, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":858
 *         return self._Weight
 * 
 *     def GetCodeType(self):             # <<<<<<<<<<<<<<
 *         return CC.ctUnknown
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetCodeType", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":861
 *         return CC.ctUnknown
 * 
 *     def GetJurComment(self):             # <<<<<<<<<<<<<<
 *         St = CC.st_Juridic.lower()
 *         St.replace('.', '_')
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_115GetJurComment(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_115GetJurComment = {"GetJurComment", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_115GetJurComment, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_115GetJurComment(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetJurComment (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_114GetJurComment(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_114GetJurComment(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_v_St = NULL;
  PyObject *__pyx_v_Result = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  __Pyx_RefNannySetupContext("GetJurComment", 0);

  /* "metaphor/monal/lcode/codewriter.py":862
 * 
 *     def GetJurComment(self):
 *         St = CC.st_Juridic.lower()             # <<<<<<<<<<<<<<
 *         St.replace('.', '_')
 *         Result = self.GetTextFromID(St)
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_CC); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 862, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_st_Juridic); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 862, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_lower); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 862, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (__pyx_t_3) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 862, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 862, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_St = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":863
 *     def GetJurComment(self):
 *         St = CC.st_Juridic.lower()
 *         St.replace('.', '_')             # <<<<<<<<<<<<<<
 *         Result = self.GetTextFromID(St)
 *         if Result == '':
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_St, __pyx_n_s_replace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 863, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__31, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 863, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":864
 *         St = CC.st_Juridic.lower()
 *         St.replace('.', '_')
 *         Result = self.GetTextFromID(St)             # <<<<<<<<<<<<<<
 *         if Result == '':
 *             Result = self._JurComment
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_GetTextFromID); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 864, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_1, function);
    }
  }
  if (!__pyx_t_3) {
    __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_St); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 864, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_1)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_St};
      __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 864, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_St};
      __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 864, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else
    #endif
    {
      __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 864, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
      __Pyx_INCREF(__pyx_v_St);
      __Pyx_GIVEREF(__pyx_v_St);
      PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_St);
      __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 864, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_Result = __pyx_t_2;
  __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":865
 *         St.replace('.', '_')
 *         Result = self.GetTextFromID(St)
 *         if Result == '':             # <<<<<<<<<<<<<<
 *             Result = self._JurComment
 *         return Result
 */
  __pyx_t_5 = (__Pyx_PyUnicode_Equals(__pyx_v_Result, __pyx_kp_u_, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 865, __pyx_L1_error)
  if (__pyx_t_5) {

    /* "metaphor/monal/lcode/codewriter.py":866
 *         Result = self.GetTextFromID(St)
 *         if Result == '':
 *             Result = self._JurComment             # <<<<<<<<<<<<<<
 *         return Result
 * 
 */
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_JurComment); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 866, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":865
 *         St.replace('.', '_')
 *         Result = self.GetTextFromID(St)
 *         if Result == '':             # <<<<<<<<<<<<<<
 *             Result = self._JurComment
 *         return Result
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":867
 *         if Result == '':
 *             Result = self._JurComment
 *         return Result             # <<<<<<<<<<<<<<
 * 
 *     def DoAffect(self, St1, St2):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_Result);
  __pyx_r = __pyx_v_Result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":861
 *         return CC.ctUnknown
 * 
 *     def GetJurComment(self):             # <<<<<<<<<<<<<<
 *         St = CC.st_Juridic.lower()
 *         St.replace('.', '_')
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetJurComment", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_St);
  __Pyx_XDECREF(__pyx_v_Result);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":869
 *         return Result
 * 
 *     def DoAffect(self, St1, St2):             # <<<<<<<<<<<<<<
 *         return self.ValToStr(St1) + self.Affect + self.ValToStr(St2)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_117DoAffect(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_117DoAffect = {"DoAffect", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_117DoAffect, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_117DoAffect(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_St1 = 0;
  PyObject *__pyx_v_St2 = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("DoAffect (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_St1,&__pyx_n_s_St2,0};
    PyObject* values[3] = {0,0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_St1)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("DoAffect", 1, 3, 3, 1); __PYX_ERR(0, 869, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_St2)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("DoAffect", 1, 3, 3, 2); __PYX_ERR(0, 869, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "DoAffect") < 0)) __PYX_ERR(0, 869, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
      values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
    }
    __pyx_v_self = values[0];
    __pyx_v_St1 = values[1];
    __pyx_v_St2 = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("DoAffect", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 869, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.DoAffect", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_116DoAffect(__pyx_self, __pyx_v_self, __pyx_v_St1, __pyx_v_St2);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_116DoAffect(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_St1, PyObject *__pyx_v_St2) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  __Pyx_RefNannySetupContext("DoAffect", 0);

  /* "metaphor/monal/lcode/codewriter.py":870
 * 
 *     def DoAffect(self, St1, St2):
 *         return self.ValToStr(St1) + self.Affect + self.ValToStr(St2)             # <<<<<<<<<<<<<<
 * 
 *     def CommentLine(self, Mess1, Mess2=None):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ValToStr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 870, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_3) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_St1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_St1};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_St1};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    {
      __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 870, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
      __Pyx_INCREF(__pyx_v_St1);
      __Pyx_GIVEREF(__pyx_v_St1);
      PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_St1);
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Affect); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 870, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_4 = PyNumber_Add(__pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 870, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ValToStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_1, function);
    }
  }
  if (!__pyx_t_3) {
    __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_St2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 870, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_1)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_St2};
      __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 870, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_St2};
      __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 870, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_2);
    } else
    #endif
    {
      __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 870, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
      __Pyx_INCREF(__pyx_v_St2);
      __Pyx_GIVEREF(__pyx_v_St2);
      PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_v_St2);
      __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 870, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_4, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":869
 *         return Result
 * 
 *     def DoAffect(self, St1, St2):             # <<<<<<<<<<<<<<
 *         return self.ValToStr(St1) + self.Affect + self.ValToStr(St2)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.DoAffect", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":872
 *         return self.ValToStr(St1) + self.Affect + self.ValToStr(St2)
 * 
 *     def CommentLine(self, Mess1, Mess2=None):             # <<<<<<<<<<<<<<
 *         if not Mess2:
 *             return self.Comment(str(Mess1))
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_119CommentLine(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_119CommentLine = {"CommentLine", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_119CommentLine, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_119CommentLine(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_Mess1 = 0;
  PyObject *__pyx_v_Mess2 = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("CommentLine (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Mess1,&__pyx_n_s_Mess2,0};
    PyObject* values[3] = {0,0,0};
    values[2] = ((PyObject *)((PyObject *)Py_None));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Mess1)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("CommentLine", 0, 2, 3, 1); __PYX_ERR(0, 872, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Mess2);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "CommentLine") < 0)) __PYX_ERR(0, 872, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Mess1 = values[1];
    __pyx_v_Mess2 = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("CommentLine", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 872, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CommentLine", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_118CommentLine(__pyx_self, __pyx_v_self, __pyx_v_Mess1, __pyx_v_Mess2);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_118CommentLine(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Mess1, PyObject *__pyx_v_Mess2) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("CommentLine", 0);

  /* "metaphor/monal/lcode/codewriter.py":873
 * 
 *     def CommentLine(self, Mess1, Mess2=None):
 *         if not Mess2:             # <<<<<<<<<<<<<<
 *             return self.Comment(str(Mess1))
 *         else:
 */
  __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_Mess2); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 873, __pyx_L1_error)
  __pyx_t_2 = ((!__pyx_t_1) != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":874
 *     def CommentLine(self, Mess1, Mess2=None):
 *         if not Mess2:
 *             return self.Comment(str(Mess1))             # <<<<<<<<<<<<<<
 *         else:
 *             return self.Comment(str(Mess1) + ',' + str(Mess2))
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Comment); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 874, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_Mess1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 874, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_6 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_6)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_6);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_6) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 874, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_3);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_5};
        __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 874, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_5};
        __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 874, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      } else
      #endif
      {
        __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 874, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
        __Pyx_GIVEREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 874, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":873
 * 
 *     def CommentLine(self, Mess1, Mess2=None):
 *         if not Mess2:             # <<<<<<<<<<<<<<
 *             return self.Comment(str(Mess1))
 *         else:
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":876
 *             return self.Comment(str(Mess1))
 *         else:
 *             return self.Comment(str(Mess1) + ',' + str(Mess2))             # <<<<<<<<<<<<<<
 * 
 *     def GetCodeStr(self, index):
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_Comment); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 876, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_7 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_Mess1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 876, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_5 = __Pyx_PyUnicode_Concat(__pyx_t_7, __pyx_kp_u__2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 876, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __pyx_t_7 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_Mess2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 876, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_7);
    __pyx_t_6 = __Pyx_PyUnicode_Concat(__pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 876, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
    __pyx_t_7 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
      __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
      if (likely(__pyx_t_7)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_7);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_4, function);
      }
    }
    if (!__pyx_t_7) {
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 876, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_GOTREF(__pyx_t_3);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
        __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 876, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
        PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
        __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 876, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else
      #endif
      {
        __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 876, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL;
        __Pyx_GIVEREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 876, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_r = __pyx_t_3;
    __pyx_t_3 = 0;
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":872
 *         return self.ValToStr(St1) + self.Affect + self.ValToStr(St2)
 * 
 *     def CommentLine(self, Mess1, Mess2=None):             # <<<<<<<<<<<<<<
 *         if not Mess2:
 *             return self.Comment(str(Mess1))
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.CommentLine", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":878
 *             return self.Comment(str(Mess1) + ',' + str(Mess2))
 * 
 *     def GetCodeStr(self, index):             # <<<<<<<<<<<<<<
 *         Result = ''
 *         if (0 <= index < 2) and (self.ClientNum >= 0):
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_121GetCodeStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_121GetCodeStr = {"GetCodeStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_121GetCodeStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_121GetCodeStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_index = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetCodeStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_index,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_index)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("GetCodeStr", 1, 2, 2, 1); __PYX_ERR(0, 878, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetCodeStr") < 0)) __PYX_ERR(0, 878, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_index = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetCodeStr", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 878, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetCodeStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_120GetCodeStr(__pyx_self, __pyx_v_self, __pyx_v_index);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_120GetCodeStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_index) {
  PyObject *__pyx_v_Result = NULL;
  PyObject *__pyx_v_St = NULL;
  PyObject *__pyx_v_P = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  __Pyx_RefNannySetupContext("GetCodeStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":879
 * 
 *     def GetCodeStr(self, index):
 *         Result = ''             # <<<<<<<<<<<<<<
 *         if (0 <= index < 2) and (self.ClientNum >= 0):
 *             St = CStr[self.ClientNum]
 */
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_v_Result = __pyx_kp_u_;

  /* "metaphor/monal/lcode/codewriter.py":880
 *     def GetCodeStr(self, index):
 *         Result = ''
 *         if (0 <= index < 2) and (self.ClientNum >= 0):             # <<<<<<<<<<<<<<
 *             St = CStr[self.ClientNum]
 *             P = St.index(',')
 */
  __pyx_t_2 = PyObject_RichCompare(__pyx_int_0, __pyx_v_index, Py_LE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 880, __pyx_L1_error)
  if (__Pyx_PyObject_IsTrue(__pyx_t_2)) {
    __Pyx_DECREF(__pyx_t_2);
    __pyx_t_2 = PyObject_RichCompare(__pyx_v_index, __pyx_int_2, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 880, __pyx_L1_error)
  }
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 880, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_3) {
  } else {
    __pyx_t_1 = __pyx_t_3;
    goto __pyx_L4_bool_binop_done;
  }
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ClientNum_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 880, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_4 = PyObject_RichCompare(__pyx_t_2, __pyx_int_0, Py_GE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 880, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 880, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_1 = __pyx_t_3;
  __pyx_L4_bool_binop_done:;
  if (__pyx_t_1) {

    /* "metaphor/monal/lcode/codewriter.py":881
 *         Result = ''
 *         if (0 <= index < 2) and (self.ClientNum >= 0):
 *             St = CStr[self.ClientNum]             # <<<<<<<<<<<<<<
 *             P = St.index(',')
 *             if index == 0:
 */
    __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_CStr); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 881, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ClientNum_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 881, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_5 = __Pyx_PyObject_GetItem(__pyx_t_4, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 881, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_v_St = __pyx_t_5;
    __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":882
 *         if (0 <= index < 2) and (self.ClientNum >= 0):
 *             St = CStr[self.ClientNum]
 *             P = St.index(',')             # <<<<<<<<<<<<<<
 *             if index == 0:
 *                 Result = St[:P-1]
 */
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_St, __pyx_n_s_index); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 882, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__32, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 882, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_v_P = __pyx_t_2;
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":883
 *             St = CStr[self.ClientNum]
 *             P = St.index(',')
 *             if index == 0:             # <<<<<<<<<<<<<<
 *                 Result = St[:P-1]
 *             elif index == 1:
 */
    __pyx_t_2 = __Pyx_PyInt_EqObjC(__pyx_v_index, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 883, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 883, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (__pyx_t_1) {

      /* "metaphor/monal/lcode/codewriter.py":884
 *             P = St.index(',')
 *             if index == 0:
 *                 Result = St[:P-1]             # <<<<<<<<<<<<<<
 *             elif index == 1:
 *                 Result = St[P+1:]
 */
      __pyx_t_2 = __Pyx_PyInt_SubtractObjC(__pyx_v_P, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 884, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_GetSlice(__pyx_v_St, 0, 0, NULL, &__pyx_t_2, NULL, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 884, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_5);
      __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":883
 *             St = CStr[self.ClientNum]
 *             P = St.index(',')
 *             if index == 0:             # <<<<<<<<<<<<<<
 *                 Result = St[:P-1]
 *             elif index == 1:
 */
      goto __pyx_L6;
    }

    /* "metaphor/monal/lcode/codewriter.py":885
 *             if index == 0:
 *                 Result = St[:P-1]
 *             elif index == 1:             # <<<<<<<<<<<<<<
 *                 Result = St[P+1:]
 *         return Result
 */
    __pyx_t_5 = __Pyx_PyInt_EqObjC(__pyx_v_index, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 885, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 885, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (__pyx_t_1) {

      /* "metaphor/monal/lcode/codewriter.py":886
 *                 Result = St[:P-1]
 *             elif index == 1:
 *                 Result = St[P+1:]             # <<<<<<<<<<<<<<
 *         return Result
 * 
 */
      __pyx_t_5 = __Pyx_PyInt_AddObjC(__pyx_v_P, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 886, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_St, 0, 0, &__pyx_t_5, NULL, NULL, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 886, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF_SET(__pyx_v_Result, __pyx_t_2);
      __pyx_t_2 = 0;

      /* "metaphor/monal/lcode/codewriter.py":885
 *             if index == 0:
 *                 Result = St[:P-1]
 *             elif index == 1:             # <<<<<<<<<<<<<<
 *                 Result = St[P+1:]
 *         return Result
 */
    }
    __pyx_L6:;

    /* "metaphor/monal/lcode/codewriter.py":880
 *     def GetCodeStr(self, index):
 *         Result = ''
 *         if (0 <= index < 2) and (self.ClientNum >= 0):             # <<<<<<<<<<<<<<
 *             St = CStr[self.ClientNum]
 *             P = St.index(',')
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":887
 *             elif index == 1:
 *                 Result = St[P+1:]
 *         return Result             # <<<<<<<<<<<<<<
 * 
 *     def GetCodeStrII(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_Result);
  __pyx_r = __pyx_v_Result;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":878
 *             return self.Comment(str(Mess1) + ',' + str(Mess2))
 * 
 *     def GetCodeStr(self, index):             # <<<<<<<<<<<<<<
 *         Result = ''
 *         if (0 <= index < 2) and (self.ClientNum >= 0):
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetCodeStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_Result);
  __Pyx_XDECREF(__pyx_v_St);
  __Pyx_XDECREF(__pyx_v_P);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":889
 *         return Result
 * 
 *     def GetCodeStrII(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.CodeStr[0]
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_123GetCodeStrII(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_123GetCodeStrII = {"GetCodeStrII", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_123GetCodeStrII, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_123GetCodeStrII(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetCodeStrII (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetCodeStrII") < 0)) __PYX_ERR(0, 889, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetCodeStrII", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 889, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetCodeStrII", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_122GetCodeStrII(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_122GetCodeStrII(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("GetCodeStrII", 0);

  /* "metaphor/monal/lcode/codewriter.py":890
 * 
 *     def GetCodeStrII(self, garb=0):
 *         return self.CodeStr[0]             # <<<<<<<<<<<<<<
 * 
 *     def GetCodeStrJI(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 890, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 890, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":889
 *         return Result
 * 
 *     def GetCodeStrII(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.CodeStr[0]
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetCodeStrII", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":892
 *         return self.CodeStr[0]
 * 
 *     def GetCodeStrJI(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.CodeStr[0]  # ??? 1 ???
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_125GetCodeStrJI(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_125GetCodeStrJI = {"GetCodeStrJI", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_125GetCodeStrJI, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_125GetCodeStrJI(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetCodeStrJI (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetCodeStrJI") < 0)) __PYX_ERR(0, 892, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetCodeStrJI", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 892, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetCodeStrJI", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_124GetCodeStrJI(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_124GetCodeStrJI(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("GetCodeStrJI", 0);

  /* "metaphor/monal/lcode/codewriter.py":893
 * 
 *     def GetCodeStrJI(self, garb=0):
 *         return self.CodeStr[0]  # ??? 1 ???             # <<<<<<<<<<<<<<
 * 
 *     def GetNameStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_CodeStr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 893, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 893, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":892
 *         return self.CodeStr[0]
 * 
 *     def GetCodeStrJI(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.CodeStr[0]  # ??? 1 ???
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetCodeStrJI", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":895
 *         return self.CodeStr[0]  # ??? 1 ???
 * 
 *     def GetNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NetName
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_127GetNameStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_127GetNameStr = {"GetNameStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_127GetNameStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_127GetNameStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetNameStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetNameStr") < 0)) __PYX_ERR(0, 895, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetNameStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 895, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetNameStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_126GetNameStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_126GetNameStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("GetNameStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":896
 * 
 *     def GetNameStr(self, garb=0):
 *         return self.NetName             # <<<<<<<<<<<<<<
 * 
 *     def GetTrueNameStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 896, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":895
 *         return self.CodeStr[0]  # ??? 1 ???
 * 
 *     def GetNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NetName
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetNameStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":898
 *         return self.NetName
 * 
 *     def GetTrueNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NetSource.trueName
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_129GetTrueNameStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_129GetTrueNameStr = {"GetTrueNameStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_129GetTrueNameStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_129GetTrueNameStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetTrueNameStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetTrueNameStr") < 0)) __PYX_ERR(0, 898, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetTrueNameStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 898, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTrueNameStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_128GetTrueNameStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_128GetTrueNameStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("GetTrueNameStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":899
 * 
 *     def GetTrueNameStr(self, garb=0):
 *         return self.NetSource.trueName             # <<<<<<<<<<<<<<
 * 
 *     def Getparamfilename(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 899, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_trueName); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 899, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":898
 *         return self.NetName
 * 
 *     def GetTrueNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NetSource.trueName
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTrueNameStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":901
 *         return self.NetSource.trueName
 * 
 *     def Getparamfilename(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.NetSource.paramfilename
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_131Getparamfilename(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_131Getparamfilename = {"Getparamfilename", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_131Getparamfilename, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_131Getparamfilename(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("Getparamfilename (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "Getparamfilename") < 0)) __PYX_ERR(0, 901, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("Getparamfilename", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 901, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getparamfilename", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_130Getparamfilename(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_130Getparamfilename(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("Getparamfilename", 0);

  /* "metaphor/monal/lcode/codewriter.py":902
 * 
 *     def Getparamfilename(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return self.NetSource.paramfilename
 *         except AttributeError:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":903
 *     def Getparamfilename(self, garb=0):
 *         try:
 *             return self.NetSource.paramfilename             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             return ""
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 903, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_paramfilename); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 903, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L7_try_return;

      /* "metaphor/monal/lcode/codewriter.py":902
 * 
 *     def Getparamfilename(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return self.NetSource.paramfilename
 *         except AttributeError:
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":904
 *         try:
 *             return self.NetSource.paramfilename
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             return ""
 * 
 */
    __pyx_t_6 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_6) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getparamfilename", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_7) < 0) __PYX_ERR(0, 904, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":905
 *             return self.NetSource.paramfilename
 *         except AttributeError:
 *             return ""             # <<<<<<<<<<<<<<
 * 
 *     def ConfigurationStr(self, garb=0):
 */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_kp_u_);
      __pyx_r = __pyx_kp_u_;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L6_except_return;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":902
 * 
 *     def Getparamfilename(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return self.NetSource.paramfilename
 *         except AttributeError:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":901
 *         return self.NetSource.trueName
 * 
 *     def Getparamfilename(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.NetSource.paramfilename
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getparamfilename", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":907
 *             return ""
 * 
 *     def ConfigurationStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             self.NetSource.configuration
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_133ConfigurationStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_133ConfigurationStr = {"ConfigurationStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_133ConfigurationStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_133ConfigurationStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("ConfigurationStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ConfigurationStr") < 0)) __PYX_ERR(0, 907, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("ConfigurationStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 907, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ConfigurationStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_132ConfigurationStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_132ConfigurationStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("ConfigurationStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":908
 * 
 *     def ConfigurationStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             self.NetSource.configuration
 *             return self.NetSource.configuration
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":909
 *     def ConfigurationStr(self, garb=0):
 *         try:
 *             self.NetSource.configuration             # <<<<<<<<<<<<<<
 *             return self.NetSource.configuration
 *         except AttributeError:
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 909, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_configuration); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 909, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":910
 *         try:
 *             self.NetSource.configuration
 *             return self.NetSource.configuration             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             return ""
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 910, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_configuration); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 910, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L7_try_return;

      /* "metaphor/monal/lcode/codewriter.py":908
 * 
 *     def ConfigurationStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             self.NetSource.configuration
 *             return self.NetSource.configuration
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":911
 *             self.NetSource.configuration
 *             return self.NetSource.configuration
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             return ""
 * 
 */
    __pyx_t_6 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_6) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ConfigurationStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_7) < 0) __PYX_ERR(0, 911, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":912
 *             return self.NetSource.configuration
 *         except AttributeError:
 *             return ""             # <<<<<<<<<<<<<<
 * 
 *     def PptyValueStr(self, garb=0):
 */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_kp_u_);
      __pyx_r = __pyx_kp_u_;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L6_except_return;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":908
 * 
 *     def ConfigurationStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             self.NetSource.configuration
 *             return self.NetSource.configuration
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":907
 *             return ""
 * 
 *     def ConfigurationStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             self.NetSource.configuration
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ConfigurationStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":914
 *             return ""
 * 
 *     def PptyValueStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.NetSource.pptyvalue
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_135PptyValueStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_135PptyValueStr = {"PptyValueStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_135PptyValueStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_135PptyValueStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("PptyValueStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "PptyValueStr") < 0)) __PYX_ERR(0, 914, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("PptyValueStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 914, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.PptyValueStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_134PptyValueStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_134PptyValueStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_val = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("PptyValueStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":915
 * 
 *     def PptyValueStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.NetSource.pptyvalue
 *             return "%18.15g"% val
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":916
 *     def PptyValueStr(self, garb=0):
 *         try:
 *             val = self.NetSource.pptyvalue             # <<<<<<<<<<<<<<
 *             return "%18.15g"% val
 *         except AttributeError:
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 916, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_pptyvalue); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 916, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_val = __pyx_t_5;
      __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":917
 *         try:
 *             val = self.NetSource.pptyvalue
 *             return "%18.15g"% val             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             return ""
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = PyUnicode_Format(__pyx_kp_u_18_15g, __pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 917, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L7_try_return;

      /* "metaphor/monal/lcode/codewriter.py":915
 * 
 *     def PptyValueStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.NetSource.pptyvalue
 *             return "%18.15g"% val
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":918
 *             val = self.NetSource.pptyvalue
 *             return "%18.15g"% val
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             return ""
 * 
 */
    __pyx_t_6 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_6) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.PptyValueStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_7) < 0) __PYX_ERR(0, 918, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":919
 *             return "%18.15g"% val
 *         except AttributeError:
 *             return ""             # <<<<<<<<<<<<<<
 * 
 *     def PptyLeverageStr(self, garb=0):
 */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_kp_u_);
      __pyx_r = __pyx_kp_u_;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L6_except_return;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":915
 * 
 *     def PptyValueStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.NetSource.pptyvalue
 *             return "%18.15g"% val
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":914
 *             return ""
 * 
 *     def PptyValueStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.NetSource.pptyvalue
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.PptyValueStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_val);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":921
 *             return ""
 * 
 *     def PptyLeverageStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.NetSource.pptyleverage
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_137PptyLeverageStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_137PptyLeverageStr = {"PptyLeverageStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_137PptyLeverageStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_137PptyLeverageStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("PptyLeverageStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "PptyLeverageStr") < 0)) __PYX_ERR(0, 921, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("PptyLeverageStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 921, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.PptyLeverageStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_136PptyLeverageStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_136PptyLeverageStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_val = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("PptyLeverageStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":922
 * 
 *     def PptyLeverageStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.NetSource.pptyleverage
 *             return "%18.15g"% val
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":923
 *     def PptyLeverageStr(self, garb=0):
 *         try:
 *             val = self.NetSource.pptyleverage             # <<<<<<<<<<<<<<
 *             return "%18.15g"% val
 *         except AttributeError:
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 923, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_pptyleverage); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 923, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_val = __pyx_t_5;
      __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":924
 *         try:
 *             val = self.NetSource.pptyleverage
 *             return "%18.15g"% val             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             return ""
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = PyUnicode_Format(__pyx_kp_u_18_15g, __pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 924, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L7_try_return;

      /* "metaphor/monal/lcode/codewriter.py":922
 * 
 *     def PptyLeverageStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.NetSource.pptyleverage
 *             return "%18.15g"% val
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":925
 *             val = self.NetSource.pptyleverage
 *             return "%18.15g"% val
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             return ""
 * 
 */
    __pyx_t_6 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_6) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.PptyLeverageStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_7) < 0) __PYX_ERR(0, 925, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":926
 *             return "%18.15g"% val
 *         except AttributeError:
 *             return ""             # <<<<<<<<<<<<<<
 * 
 *     def ModuleStr(self, garb=0):
 */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_kp_u_);
      __pyx_r = __pyx_kp_u_;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L6_except_return;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":922
 * 
 *     def PptyLeverageStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.NetSource.pptyleverage
 *             return "%18.15g"% val
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":921
 *             return ""
 * 
 *     def PptyLeverageStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.NetSource.pptyleverage
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.PptyLeverageStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_val);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":928
 *             return ""
 * 
 *     def ModuleStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.moduleName
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_139ModuleStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_139ModuleStr = {"ModuleStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_139ModuleStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_139ModuleStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("ModuleStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ModuleStr") < 0)) __PYX_ERR(0, 928, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("ModuleStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 928, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ModuleStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_138ModuleStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_138ModuleStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("ModuleStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":929
 * 
 *     def ModuleStr(self, garb=0):
 *         return self.moduleName             # <<<<<<<<<<<<<<
 * 
 *     def getModuleType(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_moduleName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 929, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":928
 *             return ""
 * 
 *     def ModuleStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.moduleName
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ModuleStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":931
 *         return self.moduleName
 * 
 *     def getModuleType(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.DriverSource.modelType
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_141getModuleType(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_141getModuleType = {"getModuleType", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_141getModuleType, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_141getModuleType(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("getModuleType (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getModuleType") < 0)) __PYX_ERR(0, 931, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("getModuleType", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 931, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getModuleType", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_140getModuleType(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_140getModuleType(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("getModuleType", 0);

  /* "metaphor/monal/lcode/codewriter.py":932
 * 
 *     def getModuleType(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return self.DriverSource.modelType
 *         except:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":933
 *     def getModuleType(self, garb=0):
 *         try:
 *             return self.DriverSource.modelType             # <<<<<<<<<<<<<<
 *         except:
 *             return self.NetSource.modelType
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 933, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_modelType); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 933, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L7_try_return;

      /* "metaphor/monal/lcode/codewriter.py":932
 * 
 *     def getModuleType(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return self.DriverSource.modelType
 *         except:
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":934
 *         try:
 *             return self.DriverSource.modelType
 *         except:             # <<<<<<<<<<<<<<
 *             return self.NetSource.modelType
 * 
 */
    /*except:*/ {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getModuleType", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_6) < 0) __PYX_ERR(0, 934, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_6);

      /* "metaphor/monal/lcode/codewriter.py":935
 *             return self.DriverSource.modelType
 *         except:
 *             return self.NetSource.modelType             # <<<<<<<<<<<<<<
 * 
 *     def ModulePStr(self, garb=0):
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 935, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_modelType); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 935, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_r = __pyx_t_8;
      __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L6_except_return;
    }
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":932
 * 
 *     def getModuleType(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return self.DriverSource.modelType
 *         except:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":931
 *         return self.moduleName
 * 
 *     def getModuleType(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.DriverSource.modelType
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.getModuleType", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":937
 *             return self.NetSource.modelType
 * 
 *     def ModulePStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return (self.moduleName + '.') if self.moduleName else ""
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_143ModulePStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_143ModulePStr = {"ModulePStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_143ModulePStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_143ModulePStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("ModulePStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ModulePStr") < 0)) __PYX_ERR(0, 937, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("ModulePStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 937, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ModulePStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_142ModulePStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_142ModulePStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  __Pyx_RefNannySetupContext("ModulePStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":938
 * 
 *     def ModulePStr(self, garb=0):
 *         return (self.moduleName + '.') if self.moduleName else ""             # <<<<<<<<<<<<<<
 * 
 *     def GetTargetStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_moduleName_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 938, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 938, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_3) {
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_moduleName_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 938, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_4 = PyNumber_Add(__pyx_t_2, __pyx_kp_u__10); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 938, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_1 = __pyx_t_4;
    __pyx_t_4 = 0;
  } else {
    __Pyx_INCREF(__pyx_kp_u_);
    __pyx_t_1 = __pyx_kp_u_;
  }
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":937
 *             return self.NetSource.modelType
 * 
 *     def ModulePStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return (self.moduleName + '.') if self.moduleName else ""
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ModulePStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":940
 *         return (self.moduleName + '.') if self.moduleName else ""
 * 
 *     def GetTargetStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.TargetName
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_145GetTargetStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_145GetTargetStr = {"GetTargetStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_145GetTargetStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_145GetTargetStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetTargetStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetTargetStr") < 0)) __PYX_ERR(0, 940, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetTargetStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 940, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTargetStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_144GetTargetStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_144GetTargetStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("GetTargetStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":941
 * 
 *     def GetTargetStr(self, garb=0):
 *         return self.TargetName             # <<<<<<<<<<<<<<
 * 
 *     def GetDateStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_TargetName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 941, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":940
 *         return (self.moduleName + '.') if self.moduleName else ""
 * 
 *     def GetTargetStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.TargetName
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTargetStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":943
 *         return self.TargetName
 * 
 *     def GetDateStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         today = date.today()
 *         return today.strftime("%d/%m/%Y")
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_147GetDateStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_147GetDateStr = {"GetDateStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_147GetDateStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_147GetDateStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetDateStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetDateStr") < 0)) __PYX_ERR(0, 943, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetDateStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 943, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDateStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_146GetDateStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_146GetDateStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_today = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  __Pyx_RefNannySetupContext("GetDateStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":944
 * 
 *     def GetDateStr(self, garb=0):
 *         today = date.today()             # <<<<<<<<<<<<<<
 *         return today.strftime("%d/%m/%Y")
 * 
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_date); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 944, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_today); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 944, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    if (likely(__pyx_t_2)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_3, function);
    }
  }
  if (__pyx_t_2) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 944, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 944, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_v_today = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":945
 *     def GetDateStr(self, garb=0):
 *         today = date.today()
 *         return today.strftime("%d/%m/%Y")             # <<<<<<<<<<<<<<
 * 
 *     def GetTimeStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_today, __pyx_n_s_strftime); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__33, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":943
 *         return self.TargetName
 * 
 *     def GetDateStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         today = date.today()
 *         return today.strftime("%d/%m/%Y")
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDateStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_today);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":947
 *         return today.strftime("%d/%m/%Y")
 * 
 *     def GetTimeStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         time = datetime.now()
 *         return time.strftime("%H:%M:%S")
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_149GetTimeStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_149GetTimeStr = {"GetTimeStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_149GetTimeStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_149GetTimeStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetTimeStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetTimeStr") < 0)) __PYX_ERR(0, 947, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetTimeStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 947, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTimeStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_148GetTimeStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_148GetTimeStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_time = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  __Pyx_RefNannySetupContext("GetTimeStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":948
 * 
 *     def GetTimeStr(self, garb=0):
 *         time = datetime.now()             # <<<<<<<<<<<<<<
 *         return time.strftime("%H:%M:%S")
 * 
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_datetime); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 948, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_now); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 948, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
    __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
    if (likely(__pyx_t_2)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_2);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_3, function);
    }
  }
  if (__pyx_t_2) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 948, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 948, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_v_time = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":949
 *     def GetTimeStr(self, garb=0):
 *         time = datetime.now()
 *         return time.strftime("%H:%M:%S")             # <<<<<<<<<<<<<<
 * 
 *     def GetUserStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_time, __pyx_n_s_strftime); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 949, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__34, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 949, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":947
 *         return today.strftime("%d/%m/%Y")
 * 
 *     def GetTimeStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         time = datetime.now()
 *         return time.strftime("%H:%M:%S")
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTimeStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_time);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":951
 *         return time.strftime("%H:%M:%S")
 * 
 *     def GetUserStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.UserName
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_151GetUserStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_151GetUserStr = {"GetUserStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_151GetUserStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_151GetUserStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetUserStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetUserStr") < 0)) __PYX_ERR(0, 951, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetUserStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 951, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetUserStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_150GetUserStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_150GetUserStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("GetUserStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":952
 * 
 *     def GetUserStr(self, garb=0):
 *         return self.UserName             # <<<<<<<<<<<<<<
 * 
 *     def GetComputerStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_UserName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 952, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":951
 *         return time.strftime("%H:%M:%S")
 * 
 *     def GetUserStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.UserName
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetUserStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":954
 *         return self.UserName
 * 
 *     def GetComputerStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.ComputerName
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_153GetComputerStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_153GetComputerStr = {"GetComputerStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_153GetComputerStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_153GetComputerStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetComputerStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetComputerStr") < 0)) __PYX_ERR(0, 954, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetComputerStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 954, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetComputerStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_152GetComputerStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_152GetComputerStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("GetComputerStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":955
 * 
 *     def GetComputerStr(self, garb=0):
 *         return self.ComputerName             # <<<<<<<<<<<<<<
 * 
 *     def GetFileNameStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ComputerName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 955, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":954
 *         return self.UserName
 * 
 *     def GetComputerStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.ComputerName
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetComputerStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":957
 *         return self.ComputerName
 * 
 *     def GetFileNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.FileName
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_155GetFileNameStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_155GetFileNameStr = {"GetFileNameStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_155GetFileNameStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_155GetFileNameStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetFileNameStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetFileNameStr") < 0)) __PYX_ERR(0, 957, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetFileNameStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 957, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetFileNameStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_154GetFileNameStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_154GetFileNameStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("GetFileNameStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":958
 * 
 *     def GetFileNameStr(self, garb=0):
 *         return self.FileName             # <<<<<<<<<<<<<<
 * 
 *     def GetNumpyDir(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_FileName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 958, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":957
 *         return self.ComputerName
 * 
 *     def GetFileNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.FileName
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetFileNameStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":960
 *         return self.FileName
 * 
 *     def GetNumpyDir(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NumpyDir
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_157GetNumpyDir(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_157GetNumpyDir = {"GetNumpyDir", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_157GetNumpyDir, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_157GetNumpyDir(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetNumpyDir (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetNumpyDir") < 0)) __PYX_ERR(0, 960, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetNumpyDir", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 960, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetNumpyDir", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_156GetNumpyDir(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_156GetNumpyDir(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("GetNumpyDir", 0);

  /* "metaphor/monal/lcode/codewriter.py":961
 * 
 *     def GetNumpyDir(self, garb=0):
 *         return self.NumpyDir             # <<<<<<<<<<<<<<
 * 
 *     def GetInOutStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NumpyDir); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 961, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":960
 *         return self.FileName
 * 
 *     def GetNumpyDir(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NumpyDir
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetNumpyDir", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":963
 *         return self.NumpyDir
 * 
 *     def GetInOutStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.inputCount + self.NetSource.outputCount)
 *     GetInOutputsStr = GetInOutStr
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_159GetInOutStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_159GetInOutStr = {"GetInOutStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_159GetInOutStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_159GetInOutStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetInOutStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetInOutStr") < 0)) __PYX_ERR(0, 963, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetInOutStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 963, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetInOutStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_158GetInOutStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_158GetInOutStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  __Pyx_RefNannySetupContext("GetInOutStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":964
 * 
 *     def GetInOutStr(self, garb=0):
 *         return str(self.NetSource.inputCount + self.NetSource.outputCount)             # <<<<<<<<<<<<<<
 *     GetInOutputsStr = GetInOutStr
 * 
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 964, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_inputCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 964, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 964, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_outputCount); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 964, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 964, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 964, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":963
 *         return self.NumpyDir
 * 
 *     def GetInOutStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.inputCount + self.NetSource.outputCount)
 *     GetInOutputsStr = GetInOutStr
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetInOutStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":967
 *     GetInOutputsStr = GetInOutStr
 * 
 *     def GetInputValues(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_161GetInputValues(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_161GetInputValues = {"GetInputValues", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_161GetInputValues, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_161GetInputValues(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetInputValues (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetInputValues") < 0)) __PYX_ERR(0, 967, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetInputValues", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 967, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetInputValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_160GetInputValues(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_160GetInputValues(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_8genexpr2__pyx_v_node = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  Py_ssize_t __pyx_t_7;
  PyObject *(*__pyx_t_8)(PyObject *);
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  PyObject *__pyx_t_12 = NULL;
  PyObject *__pyx_t_13 = NULL;
  int __pyx_t_14;
  __Pyx_RefNannySetupContext("GetInputValues", 0);

  /* "metaphor/monal/lcode/codewriter.py":968
 * 
 *     def GetInputValues(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]
 *             res = ",\n".join(lst)
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":969
 *     def GetInputValues(self, garb=0):
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]             # <<<<<<<<<<<<<<
 *             res = ",\n".join(lst)
 *         except AttributeError:
 */
      { /* enter inner scope */
        __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 969, __pyx_L11_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 969, __pyx_L11_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_inputNodes); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 969, __pyx_L11_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (likely(PyList_CheckExact(__pyx_t_6)) || PyTuple_CheckExact(__pyx_t_6)) {
          __pyx_t_5 = __pyx_t_6; __Pyx_INCREF(__pyx_t_5); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 969, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_8 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 969, __pyx_L11_error)
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        for (;;) {
          if (likely(!__pyx_t_8)) {
            if (likely(PyList_CheckExact(__pyx_t_5))) {
              if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
              __pyx_t_6 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 969, __pyx_L11_error)
              #else
              __pyx_t_6 = PySequence_ITEM(__pyx_t_5, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_6);
              #endif
            } else {
              if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
              __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 969, __pyx_L11_error)
              #else
              __pyx_t_6 = PySequence_ITEM(__pyx_t_5, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_6);
              #endif
            }
          } else {
            __pyx_t_6 = __pyx_t_8(__pyx_t_5);
            if (unlikely(!__pyx_t_6)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else __PYX_ERR(0, 969, __pyx_L11_error)
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_6);
          }
          __Pyx_XDECREF_SET(__pyx_8genexpr2__pyx_v_node, __pyx_t_6);
          __pyx_t_6 = 0;
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_kp_u__35, __pyx_n_s_format); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 969, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_8genexpr2__pyx_v_node, __pyx_n_s_name); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 969, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = NULL;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
            __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_9);
            if (likely(__pyx_t_11)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
              __Pyx_INCREF(__pyx_t_11);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_9, function);
            }
          }
          if (!__pyx_t_11) {
            __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 969, __pyx_L11_error)
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_GOTREF(__pyx_t_6);
          } else {
            #if CYTHON_FAST_PYCALL
            if (PyFunction_Check(__pyx_t_9)) {
              PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
              __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            #if CYTHON_FAST_PYCCALL
            if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
              PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
              __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            {
              __pyx_t_12 = PyTuple_New(1+1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_12);
              __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_11); __pyx_t_11 = NULL;
              __Pyx_GIVEREF(__pyx_t_10);
              PyTuple_SET_ITEM(__pyx_t_12, 0+1, __pyx_t_10);
              __pyx_t_10 = 0;
              __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_12, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            }
          }
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ValToStr); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 969, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_12);
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_8genexpr2__pyx_v_node, __pyx_n_s_value); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 969, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = NULL;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
            __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_12);
            if (likely(__pyx_t_11)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
              __Pyx_INCREF(__pyx_t_11);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_12, function);
            }
          }
          if (!__pyx_t_11) {
            __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_10); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 969, __pyx_L11_error)
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_GOTREF(__pyx_t_9);
          } else {
            #if CYTHON_FAST_PYCALL
            if (PyFunction_Check(__pyx_t_12)) {
              PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
              __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_12, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            #if CYTHON_FAST_PYCCALL
            if (__Pyx_PyFastCFunction_Check(__pyx_t_12)) {
              PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
              __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_12, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            {
              __pyx_t_13 = PyTuple_New(1+1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_11); __pyx_t_11 = NULL;
              __Pyx_GIVEREF(__pyx_t_10);
              PyTuple_SET_ITEM(__pyx_t_13, 0+1, __pyx_t_10);
              __pyx_t_10 = 0;
              __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_t_13, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 969, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            }
          }
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __pyx_t_12 = PyNumber_Add(__pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 969, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_12))) __PYX_ERR(0, 969, __pyx_L11_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_8genexpr2__pyx_v_node); __pyx_8genexpr2__pyx_v_node = 0;
        goto __pyx_L14_exit_scope;
        __pyx_L11_error:;
        __Pyx_XDECREF(__pyx_8genexpr2__pyx_v_node); __pyx_8genexpr2__pyx_v_node = 0;
        goto __pyx_L3_error;
        __pyx_L14_exit_scope:;
      } /* exit inner scope */
      __pyx_v_lst = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

      /* "metaphor/monal/lcode/codewriter.py":970
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]
 *             res = ",\n".join(lst)             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             res = ""
 */
      __pyx_t_4 = PyUnicode_Join(__pyx_kp_u__36, __pyx_v_lst); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 970, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_res = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

      /* "metaphor/monal/lcode/codewriter.py":968
 * 
 *     def GetInputValues(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]
 *             res = ",\n".join(lst)
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
    __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
    __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":971
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]
 *             res = ",\n".join(lst)
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             res = ""
 *         return res
 */
    __pyx_t_14 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_14) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetInputValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_12) < 0) __PYX_ERR(0, 971, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_12);

      /* "metaphor/monal/lcode/codewriter.py":972
 *             res = ",\n".join(lst)
 *         except AttributeError:
 *             res = ""             # <<<<<<<<<<<<<<
 *         return res
 * 
 */
      __Pyx_INCREF(__pyx_kp_u_);
      __Pyx_XDECREF_SET(__pyx_v_res, __pyx_kp_u_);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":968
 * 
 *     def GetInputValues(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]
 *             res = ",\n".join(lst)
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":973
 *         except AttributeError:
 *             res = ""
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def GetOutputValues(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":967
 *     GetInOutputsStr = GetInOutStr
 * 
 *     def GetInputValues(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetInputValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XDECREF(__pyx_8genexpr2__pyx_v_node);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":975
 *         return res
 * 
 *     def GetOutputValues(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_163GetOutputValues(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_163GetOutputValues = {"GetOutputValues", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_163GetOutputValues, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_163GetOutputValues(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetOutputValues (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetOutputValues") < 0)) __PYX_ERR(0, 975, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetOutputValues", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 975, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOutputValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_162GetOutputValues(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_162GetOutputValues(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_8genexpr3__pyx_v_node = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  Py_ssize_t __pyx_t_7;
  PyObject *(*__pyx_t_8)(PyObject *);
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  PyObject *__pyx_t_12 = NULL;
  PyObject *__pyx_t_13 = NULL;
  int __pyx_t_14;
  __Pyx_RefNannySetupContext("GetOutputValues", 0);

  /* "metaphor/monal/lcode/codewriter.py":976
 * 
 *     def GetOutputValues(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]
 *             res = ",\n".join(lst)
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":977
 *     def GetOutputValues(self, garb=0):
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]             # <<<<<<<<<<<<<<
 *             res = ",\n".join(lst)
 *         except AttributeError:
 */
      { /* enter inner scope */
        __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 977, __pyx_L11_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 977, __pyx_L11_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_outputNodes); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 977, __pyx_L11_error)
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (likely(PyList_CheckExact(__pyx_t_6)) || PyTuple_CheckExact(__pyx_t_6)) {
          __pyx_t_5 = __pyx_t_6; __Pyx_INCREF(__pyx_t_5); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 977, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_8 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 977, __pyx_L11_error)
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        for (;;) {
          if (likely(!__pyx_t_8)) {
            if (likely(PyList_CheckExact(__pyx_t_5))) {
              if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
              __pyx_t_6 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 977, __pyx_L11_error)
              #else
              __pyx_t_6 = PySequence_ITEM(__pyx_t_5, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_6);
              #endif
            } else {
              if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
              __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 977, __pyx_L11_error)
              #else
              __pyx_t_6 = PySequence_ITEM(__pyx_t_5, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_6);
              #endif
            }
          } else {
            __pyx_t_6 = __pyx_t_8(__pyx_t_5);
            if (unlikely(!__pyx_t_6)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else __PYX_ERR(0, 977, __pyx_L11_error)
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_6);
          }
          __Pyx_XDECREF_SET(__pyx_8genexpr3__pyx_v_node, __pyx_t_6);
          __pyx_t_6 = 0;
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_kp_u__35, __pyx_n_s_format); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 977, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_8genexpr3__pyx_v_node, __pyx_n_s_name); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 977, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = NULL;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
            __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_9);
            if (likely(__pyx_t_11)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
              __Pyx_INCREF(__pyx_t_11);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_9, function);
            }
          }
          if (!__pyx_t_11) {
            __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 977, __pyx_L11_error)
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_GOTREF(__pyx_t_6);
          } else {
            #if CYTHON_FAST_PYCALL
            if (PyFunction_Check(__pyx_t_9)) {
              PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
              __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            #if CYTHON_FAST_PYCCALL
            if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
              PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
              __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            {
              __pyx_t_12 = PyTuple_New(1+1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_12);
              __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_11); __pyx_t_11 = NULL;
              __Pyx_GIVEREF(__pyx_t_10);
              PyTuple_SET_ITEM(__pyx_t_12, 0+1, __pyx_t_10);
              __pyx_t_10 = 0;
              __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_12, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            }
          }
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ValToStr); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 977, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_12);
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_8genexpr3__pyx_v_node, __pyx_n_s_value); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 977, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = NULL;
          if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
            __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_12);
            if (likely(__pyx_t_11)) {
              PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
              __Pyx_INCREF(__pyx_t_11);
              __Pyx_INCREF(function);
              __Pyx_DECREF_SET(__pyx_t_12, function);
            }
          }
          if (!__pyx_t_11) {
            __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_10); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 977, __pyx_L11_error)
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_GOTREF(__pyx_t_9);
          } else {
            #if CYTHON_FAST_PYCALL
            if (PyFunction_Check(__pyx_t_12)) {
              PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
              __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_12, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            #if CYTHON_FAST_PYCCALL
            if (__Pyx_PyFastCFunction_Check(__pyx_t_12)) {
              PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_10};
              __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_12, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else
            #endif
            {
              __pyx_t_13 = PyTuple_New(1+1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_13);
              __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_11); __pyx_t_11 = NULL;
              __Pyx_GIVEREF(__pyx_t_10);
              PyTuple_SET_ITEM(__pyx_t_13, 0+1, __pyx_t_10);
              __pyx_t_10 = 0;
              __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_t_13, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 977, __pyx_L11_error)
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            }
          }
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __pyx_t_12 = PyNumber_Add(__pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 977, __pyx_L11_error)
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_12))) __PYX_ERR(0, 977, __pyx_L11_error)
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_node); __pyx_8genexpr3__pyx_v_node = 0;
        goto __pyx_L14_exit_scope;
        __pyx_L11_error:;
        __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_node); __pyx_8genexpr3__pyx_v_node = 0;
        goto __pyx_L3_error;
        __pyx_L14_exit_scope:;
      } /* exit inner scope */
      __pyx_v_lst = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

      /* "metaphor/monal/lcode/codewriter.py":978
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]
 *             res = ",\n".join(lst)             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             res = ""
 */
      __pyx_t_4 = PyUnicode_Join(__pyx_kp_u__36, __pyx_v_lst); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 978, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_res = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

      /* "metaphor/monal/lcode/codewriter.py":976
 * 
 *     def GetOutputValues(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]
 *             res = ",\n".join(lst)
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
    __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
    __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
    __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":979
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]
 *             res = ",\n".join(lst)
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             res = ""
 *         return res
 */
    __pyx_t_14 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_14) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOutputValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_12) < 0) __PYX_ERR(0, 979, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_12);

      /* "metaphor/monal/lcode/codewriter.py":980
 *             res = ",\n".join(lst)
 *         except AttributeError:
 *             res = ""             # <<<<<<<<<<<<<<
 *         return res
 * 
 */
      __Pyx_INCREF(__pyx_kp_u_);
      __Pyx_XDECREF_SET(__pyx_v_res, __pyx_kp_u_);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":976
 * 
 *     def GetOutputValues(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]
 *             res = ",\n".join(lst)
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":981
 *         except AttributeError:
 *             res = ""
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def GetInputsStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":975
 *         return res
 * 
 *     def GetOutputValues(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOutputValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_node);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":983
 *         return res
 * 
 *     def GetInputsStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             res = str(self.NetSource.inputCount)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_165GetInputsStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_165GetInputsStr = {"GetInputsStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_165GetInputsStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_165GetInputsStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetInputsStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetInputsStr") < 0)) __PYX_ERR(0, 983, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetInputsStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 983, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetInputsStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_164GetInputsStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_164GetInputsStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("GetInputsStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":984
 * 
 *     def GetInputsStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             res = str(self.NetSource.inputCount)
 *         except AttributeError:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":985
 *     def GetInputsStr(self, garb=0):
 *         try:
 *             res = str(self.NetSource.inputCount)             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             res = ""
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 985, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_inputCount); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 985, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 985, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_res = __pyx_t_4;
      __pyx_t_4 = 0;

      /* "metaphor/monal/lcode/codewriter.py":984
 * 
 *     def GetInputsStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             res = str(self.NetSource.inputCount)
 *         except AttributeError:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":986
 *         try:
 *             res = str(self.NetSource.inputCount)
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             res = ""
 *         return res
 */
    __pyx_t_6 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_6) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetInputsStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_7) < 0) __PYX_ERR(0, 986, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":987
 *             res = str(self.NetSource.inputCount)
 *         except AttributeError:
 *             res = ""             # <<<<<<<<<<<<<<
 *         return res
 * 
 */
      __Pyx_INCREF(__pyx_kp_u_);
      __Pyx_XDECREF_SET(__pyx_v_res, __pyx_kp_u_);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":984
 * 
 *     def GetInputsStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             res = str(self.NetSource.inputCount)
 *         except AttributeError:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":988
 *         except AttributeError:
 *             res = ""
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def GetOutputsStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":983
 *         return res
 * 
 *     def GetInputsStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             res = str(self.NetSource.inputCount)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetInputsStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":990
 *         return res
 * 
 *     def GetOutputsStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             res = str(self.NetSource.outputCount)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_167GetOutputsStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_167GetOutputsStr = {"GetOutputsStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_167GetOutputsStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_167GetOutputsStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetOutputsStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetOutputsStr") < 0)) __PYX_ERR(0, 990, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetOutputsStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 990, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOutputsStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_166GetOutputsStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_166GetOutputsStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("GetOutputsStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":991
 * 
 *     def GetOutputsStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             res = str(self.NetSource.outputCount)
 *         except AttributeError:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":992
 *     def GetOutputsStr(self, garb=0):
 *         try:
 *             res = str(self.NetSource.outputCount)             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             res = ""
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 992, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_outputCount); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 992, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 992, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_res = __pyx_t_4;
      __pyx_t_4 = 0;

      /* "metaphor/monal/lcode/codewriter.py":991
 * 
 *     def GetOutputsStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             res = str(self.NetSource.outputCount)
 *         except AttributeError:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":993
 *         try:
 *             res = str(self.NetSource.outputCount)
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             res = ""
 *         return res
 */
    __pyx_t_6 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_6) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOutputsStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_7) < 0) __PYX_ERR(0, 993, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":994
 *             res = str(self.NetSource.outputCount)
 *         except AttributeError:
 *             res = ""             # <<<<<<<<<<<<<<
 *         return res
 * 
 */
      __Pyx_INCREF(__pyx_kp_u_);
      __Pyx_XDECREF_SET(__pyx_v_res, __pyx_kp_u_);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":991
 * 
 *     def GetOutputsStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             res = str(self.NetSource.outputCount)
 *         except AttributeError:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":995
 *         except AttributeError:
 *             res = ""
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def GetSynapsesStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":990
 *         return res
 * 
 *     def GetOutputsStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             res = str(self.NetSource.outputCount)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOutputsStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":997
 *         return res
 * 
 *     def GetSynapsesStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.synapseCount)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_169GetSynapsesStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_169GetSynapsesStr = {"GetSynapsesStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_169GetSynapsesStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_169GetSynapsesStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetSynapsesStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetSynapsesStr") < 0)) __PYX_ERR(0, 997, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetSynapsesStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 997, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetSynapsesStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_168GetSynapsesStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_168GetSynapsesStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("GetSynapsesStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":998
 * 
 *     def GetSynapsesStr(self, garb=0):
 *         return str(self.NetSource.synapseCount)             # <<<<<<<<<<<<<<
 * 
 *     def GetDimensionStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 998, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_synapseCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 998, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 998, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":997
 *         return res
 * 
 *     def GetSynapsesStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.synapseCount)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetSynapsesStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1000
 *         return str(self.NetSource.synapseCount)
 * 
 *     def GetDimensionStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.dimension)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_171GetDimensionStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_171GetDimensionStr = {"GetDimensionStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_171GetDimensionStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_171GetDimensionStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetDimensionStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetDimensionStr") < 0)) __PYX_ERR(0, 1000, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetDimensionStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1000, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDimensionStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_170GetDimensionStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_170GetDimensionStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("GetDimensionStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1001
 * 
 *     def GetDimensionStr(self, garb=0):
 *         return str(self.NetSource.dimension)             # <<<<<<<<<<<<<<
 * 
 * #     def GetNLWCountStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1001, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_dimension); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1001, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1001, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1000
 *         return str(self.NetSource.synapseCount)
 * 
 *     def GetDimensionStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.dimension)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDimensionStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1007
 * #         return str(val)
 * 
 *     def GetOrderStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.order)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_173GetOrderStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_173GetOrderStr = {"GetOrderStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_173GetOrderStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_173GetOrderStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetOrderStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetOrderStr") < 0)) __PYX_ERR(0, 1007, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetOrderStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1007, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOrderStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_172GetOrderStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_172GetOrderStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("GetOrderStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1008
 * 
 *     def GetOrderStr(self, garb=0):
 *         return str(self.NetSource.order)             # <<<<<<<<<<<<<<
 * 
 *     def GetNodeStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1008, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_order); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1008, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1008, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1007
 * #         return str(val)
 * 
 *     def GetOrderStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.order)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOrderStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1010
 *         return str(self.NetSource.order)
 * 
 *     def GetNodeStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return str(self.NetSource.nodeCount)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_175GetNodeStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_175GetNodeStr = {"GetNodeStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_175GetNodeStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_175GetNodeStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetNodeStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetNodeStr") < 0)) __PYX_ERR(0, 1010, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetNodeStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1010, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetNodeStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_174GetNodeStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_174GetNodeStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("GetNodeStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1011
 * 
 *     def GetNodeStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.nodeCount)
 *         except AttributeError:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1012
 *     def GetNodeStr(self, garb=0):
 *         try:
 *             return str(self.NetSource.nodeCount)             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             return 0
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1012, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_nodeCount); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1012, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1012, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L7_try_return;

      /* "metaphor/monal/lcode/codewriter.py":1011
 * 
 *     def GetNodeStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.nodeCount)
 *         except AttributeError:
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1013
 *         try:
 *             return str(self.NetSource.nodeCount)
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             return 0
 * 
 */
    __pyx_t_6 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_6) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetNodeStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_7) < 0) __PYX_ERR(0, 1013, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":1014
 *             return str(self.NetSource.nodeCount)
 *         except AttributeError:
 *             return 0             # <<<<<<<<<<<<<<
 * 
 *     def GetStdDevStr(self, garb=0):
 */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_int_0);
      __pyx_r = __pyx_int_0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L6_except_return;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1011
 * 
 *     def GetNodeStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return str(self.NetSource.nodeCount)
 *         except AttributeError:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":1010
 *         return str(self.NetSource.order)
 * 
 *     def GetNodeStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return str(self.NetSource.nodeCount)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetNodeStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1016
 *             return 0
 * 
 *     def GetStdDevStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.stdtrain
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_177GetStdDevStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_177GetStdDevStr = {"GetStdDevStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_177GetStdDevStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_177GetStdDevStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetStdDevStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetStdDevStr") < 0)) __PYX_ERR(0, 1016, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetStdDevStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1016, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetStdDevStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_176GetStdDevStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_176GetStdDevStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_val = NULL;
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  int __pyx_t_7;
  int __pyx_t_8;
  PyObject *__pyx_t_9 = NULL;
  __Pyx_RefNannySetupContext("GetStdDevStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1017
 * 
 *     def GetStdDevStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.DriverSource.stdtrain
 *             if val is None:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1018
 *     def GetStdDevStr(self, garb=0):
 *         try:
 *             val = self.DriverSource.stdtrain             # <<<<<<<<<<<<<<
 *             if val is None:
 *                 res = "0"
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1018, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_stdtrain); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1018, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_val = __pyx_t_5;
      __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":1019
 *         try:
 *             val = self.DriverSource.stdtrain
 *             if val is None:             # <<<<<<<<<<<<<<
 *                 res = "0"
 *             else:
 */
      __pyx_t_6 = (__pyx_v_val == Py_None);
      __pyx_t_7 = (__pyx_t_6 != 0);
      if (__pyx_t_7) {

        /* "metaphor/monal/lcode/codewriter.py":1020
 *             val = self.DriverSource.stdtrain
 *             if val is None:
 *                 res = "0"             # <<<<<<<<<<<<<<
 *             else:
 *                 res = str(val)  #TrainStdDev[0]
 */
        __Pyx_INCREF(__pyx_kp_u_0);
        __pyx_v_res = __pyx_kp_u_0;

        /* "metaphor/monal/lcode/codewriter.py":1019
 *         try:
 *             val = self.DriverSource.stdtrain
 *             if val is None:             # <<<<<<<<<<<<<<
 *                 res = "0"
 *             else:
 */
        goto __pyx_L9;
      }

      /* "metaphor/monal/lcode/codewriter.py":1022
 *                 res = "0"
 *             else:
 *                 res = str(val)  #TrainStdDev[0]             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             res = "0"
 */
      /*else*/ {
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1022, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_v_res = __pyx_t_5;
        __pyx_t_5 = 0;
      }
      __pyx_L9:;

      /* "metaphor/monal/lcode/codewriter.py":1017
 * 
 *     def GetStdDevStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.DriverSource.stdtrain
 *             if val is None:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1023
 *             else:
 *                 res = str(val)  #TrainStdDev[0]
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             res = "0"
 *         return res
 */
    __pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_8) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetStdDevStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_9) < 0) __PYX_ERR(0, 1023, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_9);

      /* "metaphor/monal/lcode/codewriter.py":1024
 *                 res = str(val)  #TrainStdDev[0]
 *         except AttributeError:
 *             res = "0"             # <<<<<<<<<<<<<<
 *         return res
 * 
 */
      __Pyx_INCREF(__pyx_kp_u_0);
      __Pyx_XDECREF_SET(__pyx_v_res, __pyx_kp_u_0);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1017
 * 
 *     def GetStdDevStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.DriverSource.stdtrain
 *             if val is None:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":1025
 *         except AttributeError:
 *             res = "0"
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def GetStudentStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1016
 *             return 0
 * 
 *     def GetStdDevStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.stdtrain
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetStdDevStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_val);
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1027
 *         return res
 * 
 *     def GetStudentStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.studentvariable
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_179GetStudentStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_179GetStudentStr = {"GetStudentStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_179GetStudentStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_179GetStudentStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetStudentStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetStudentStr") < 0)) __PYX_ERR(0, 1027, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetStudentStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1027, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetStudentStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_178GetStudentStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_178GetStudentStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_val = NULL;
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  int __pyx_t_7;
  int __pyx_t_8;
  PyObject *__pyx_t_9 = NULL;
  __Pyx_RefNannySetupContext("GetStudentStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1028
 * 
 *     def GetStudentStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.DriverSource.studentvariable
 *             if val is None:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1029
 *     def GetStudentStr(self, garb=0):
 *         try:
 *             val = self.DriverSource.studentvariable             # <<<<<<<<<<<<<<
 *             if val is None:
 *                 res = "0"
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1029, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_studentvariable); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1029, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_val = __pyx_t_5;
      __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":1030
 *         try:
 *             val = self.DriverSource.studentvariable
 *             if val is None:             # <<<<<<<<<<<<<<
 *                 res = "0"
 *             else:
 */
      __pyx_t_6 = (__pyx_v_val == Py_None);
      __pyx_t_7 = (__pyx_t_6 != 0);
      if (__pyx_t_7) {

        /* "metaphor/monal/lcode/codewriter.py":1031
 *             val = self.DriverSource.studentvariable
 *             if val is None:
 *                 res = "0"             # <<<<<<<<<<<<<<
 *             else:
 *                 res = str(val)  #self.Student95[0]
 */
        __Pyx_INCREF(__pyx_kp_u_0);
        __pyx_v_res = __pyx_kp_u_0;

        /* "metaphor/monal/lcode/codewriter.py":1030
 *         try:
 *             val = self.DriverSource.studentvariable
 *             if val is None:             # <<<<<<<<<<<<<<
 *                 res = "0"
 *             else:
 */
        goto __pyx_L9;
      }

      /* "metaphor/monal/lcode/codewriter.py":1033
 *                 res = "0"
 *             else:
 *                 res = str(val)  #self.Student95[0]             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             res = "0"
 */
      /*else*/ {
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1033, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_v_res = __pyx_t_5;
        __pyx_t_5 = 0;
      }
      __pyx_L9:;

      /* "metaphor/monal/lcode/codewriter.py":1028
 * 
 *     def GetStudentStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.DriverSource.studentvariable
 *             if val is None:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1034
 *             else:
 *                 res = str(val)  #self.Student95[0]
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             res = "0"
 *         return res
 */
    __pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_8) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetStudentStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_9) < 0) __PYX_ERR(0, 1034, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_9);

      /* "metaphor/monal/lcode/codewriter.py":1035
 *                 res = str(val)  #self.Student95[0]
 *         except AttributeError:
 *             res = "0"             # <<<<<<<<<<<<<<
 *         return res
 * 
 */
      __Pyx_INCREF(__pyx_kp_u_0);
      __Pyx_XDECREF_SET(__pyx_v_res, __pyx_kp_u_0);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1028
 * 
 *     def GetStudentStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.DriverSource.studentvariable
 *             if val is None:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":1036
 *         except AttributeError:
 *             res = "0"
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def GetMuStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1027
 *         return res
 * 
 *     def GetStudentStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.studentvariable
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetStudentStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_val);
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1038
 *         return res
 * 
 *     def GetMuStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.mu
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_181GetMuStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_181GetMuStr = {"GetMuStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_181GetMuStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_181GetMuStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetMuStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetMuStr") < 0)) __PYX_ERR(0, 1038, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetMuStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1038, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMuStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_180GetMuStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_180GetMuStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_val = NULL;
  PyObject *__pyx_v_res = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  int __pyx_t_7;
  int __pyx_t_8;
  PyObject *__pyx_t_9 = NULL;
  __Pyx_RefNannySetupContext("GetMuStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1039
 * 
 *     def GetMuStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.DriverSource.mu
 *             if val is None:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1040
 *     def GetMuStr(self, garb=0):
 *         try:
 *             val = self.DriverSource.mu             # <<<<<<<<<<<<<<
 *             if val is None:
 *                 res = "0"
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1040, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_mu); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1040, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_val = __pyx_t_5;
      __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":1041
 *         try:
 *             val = self.DriverSource.mu
 *             if val is None:             # <<<<<<<<<<<<<<
 *                 res = "0"
 *             else:
 */
      __pyx_t_6 = (__pyx_v_val == Py_None);
      __pyx_t_7 = (__pyx_t_6 != 0);
      if (__pyx_t_7) {

        /* "metaphor/monal/lcode/codewriter.py":1042
 *             val = self.DriverSource.mu
 *             if val is None:
 *                 res = "0"             # <<<<<<<<<<<<<<
 *             else:
 *                 res = str(val)  #self.Student95[0]
 */
        __Pyx_INCREF(__pyx_kp_u_0);
        __pyx_v_res = __pyx_kp_u_0;

        /* "metaphor/monal/lcode/codewriter.py":1041
 *         try:
 *             val = self.DriverSource.mu
 *             if val is None:             # <<<<<<<<<<<<<<
 *                 res = "0"
 *             else:
 */
        goto __pyx_L9;
      }

      /* "metaphor/monal/lcode/codewriter.py":1044
 *                 res = "0"
 *             else:
 *                 res = str(val)  #self.Student95[0]             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             res = "0"
 */
      /*else*/ {
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1044, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_v_res = __pyx_t_5;
        __pyx_t_5 = 0;
      }
      __pyx_L9:;

      /* "metaphor/monal/lcode/codewriter.py":1039
 * 
 *     def GetMuStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.DriverSource.mu
 *             if val is None:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1045
 *             else:
 *                 res = str(val)  #self.Student95[0]
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             res = "0"
 *         return res
 */
    __pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_8) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMuStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_9) < 0) __PYX_ERR(0, 1045, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_9);

      /* "metaphor/monal/lcode/codewriter.py":1046
 *                 res = str(val)  #self.Student95[0]
 *         except AttributeError:
 *             res = "0"             # <<<<<<<<<<<<<<
 *         return res
 * 
 */
      __Pyx_INCREF(__pyx_kp_u_0);
      __Pyx_XDECREF_SET(__pyx_v_res, __pyx_kp_u_0);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1039
 * 
 *     def GetMuStr(self, garb=0):
 *         try:             # <<<<<<<<<<<<<<
 *             val = self.DriverSource.mu
 *             if val is None:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":1047
 *         except AttributeError:
 *             res = "0"
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def GetUseCountStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1038
 *         return res
 * 
 *     def GetMuStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.mu
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetMuStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_val);
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1049
 *         return res
 * 
 *     def GetUseCountStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.UseCount)
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_183GetUseCountStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_183GetUseCountStr = {"GetUseCountStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_183GetUseCountStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_183GetUseCountStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetUseCountStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetUseCountStr") < 0)) __PYX_ERR(0, 1049, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetUseCountStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1049, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetUseCountStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_182GetUseCountStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_182GetUseCountStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  __Pyx_RefNannySetupContext("GetUseCountStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1050
 * 
 *     def GetUseCountStr(self, garb=0):
 *         return str(self.UseCount)             # <<<<<<<<<<<<<<
 * 
 *     def GetCommentCountStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_UseCount_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1050, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1050, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1049
 *         return res
 * 
 *     def GetUseCountStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.UseCount)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetUseCountStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1052
 *         return str(self.UseCount)
 * 
 *     def GetCommentCountStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(max(1, self.NetSource.commentCount))
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_185GetCommentCountStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_185GetCommentCountStr = {"GetCommentCountStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_185GetCommentCountStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_185GetCommentCountStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetCommentCountStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetCommentCountStr") < 0)) __PYX_ERR(0, 1052, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetCommentCountStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1052, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetCommentCountStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_184GetCommentCountStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_184GetCommentCountStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  long __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  __Pyx_RefNannySetupContext("GetCommentCountStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1053
 * 
 *     def GetCommentCountStr(self, garb=0):
 *         return str(max(1, self.NetSource.commentCount))             # <<<<<<<<<<<<<<
 * 
 *     def GetLinearStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1053, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_commentCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1053, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = 1;
  __pyx_t_4 = __Pyx_PyInt_From_long(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1053, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_GT); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1053, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 1053, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__pyx_t_6) {
    __Pyx_INCREF(__pyx_t_2);
    __pyx_t_1 = __pyx_t_2;
  } else {
    __pyx_t_5 = __Pyx_PyInt_From_long(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1053, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __pyx_t_1 = __pyx_t_5;
    __pyx_t_5 = 0;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1053, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1052
 *         return str(self.UseCount)
 * 
 *     def GetCommentCountStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(max(1, self.NetSource.commentCount))
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetCommentCountStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1055
 *         return str(max(1, self.NetSource.commentCount))
 * 
 *     def GetLinearStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         # Attention cela perturbe le model et les valeurs sauvegardes
 *         try:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_187GetLinearStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_187GetLinearStr = {"GetLinearStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_187GetLinearStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_187GetLinearStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetLinearStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetLinearStr") < 0)) __PYX_ERR(0, 1055, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetLinearStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1055, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetLinearStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_186GetLinearStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_186GetLinearStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_ind = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  __Pyx_RefNannySetupContext("GetLinearStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1057
 *     def GetLinearStr(self, garb=0):
 *         # Attention cela perturbe le model et les valeurs sauvegardes
 *         try:             # <<<<<<<<<<<<<<
 *             ind = int(self.NetSource.isLinear)
 *         except:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1058
 *         # Attention cela perturbe le model et les valeurs sauvegardes
 *         try:
 *             ind = int(self.NetSource.isLinear)             # <<<<<<<<<<<<<<
 *         except:
 *             ind = 0
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1058, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_isLinear); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1058, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyNumber_Int(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1058, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_ind = __pyx_t_4;
      __pyx_t_4 = 0;

      /* "metaphor/monal/lcode/codewriter.py":1057
 *     def GetLinearStr(self, garb=0):
 *         # Attention cela perturbe le model et les valeurs sauvegardes
 *         try:             # <<<<<<<<<<<<<<
 *             ind = int(self.NetSource.isLinear)
 *         except:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1059
 *         try:
 *             ind = int(self.NetSource.isLinear)
 *         except:             # <<<<<<<<<<<<<<
 *             ind = 0
 *         return str(ind)
 */
    /*except:*/ {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetLinearStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6) < 0) __PYX_ERR(0, 1059, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_6);

      /* "metaphor/monal/lcode/codewriter.py":1060
 *             ind = int(self.NetSource.isLinear)
 *         except:
 *             ind = 0             # <<<<<<<<<<<<<<
 *         return str(ind)
 * 
 */
      __Pyx_INCREF(__pyx_int_0);
      __Pyx_XDECREF_SET(__pyx_v_ind, __pyx_int_0);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L4_exception_handled;
    }
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1057
 *     def GetLinearStr(self, garb=0):
 *         # Attention cela perturbe le model et les valeurs sauvegardes
 *         try:             # <<<<<<<<<<<<<<
 *             ind = int(self.NetSource.isLinear)
 *         except:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":1061
 *         except:
 *             ind = 0
 *         return str(ind)             # <<<<<<<<<<<<<<
 * 
 *     def BaseCount(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_6 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_ind); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1061, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_r = __pyx_t_6;
  __pyx_t_6 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1055
 *         return str(max(1, self.NetSource.commentCount))
 * 
 *     def GetLinearStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         # Attention cela perturbe le model et les valeurs sauvegardes
 *         try:
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetLinearStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_ind);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1063
 *         return str(ind)
 * 
 *     def BaseCount(self):             # <<<<<<<<<<<<<<
 *         return 0
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_189BaseCount(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_189BaseCount = {"BaseCount", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_189BaseCount, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_189BaseCount(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("BaseCount (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_188BaseCount(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_188BaseCount(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("BaseCount", 0);

  /* "metaphor/monal/lcode/codewriter.py":1064
 * 
 *     def BaseCount(self):
 *         return 0             # <<<<<<<<<<<<<<
 * 
 *     def SaveToFile(self, St, back=False):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_int_0);
  __pyx_r = __pyx_int_0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1063
 *         return str(ind)
 * 
 *     def BaseCount(self):             # <<<<<<<<<<<<<<
 *         return 0
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1066
 *         return 0
 * 
 *     def SaveToFile(self, St, back=False):             # <<<<<<<<<<<<<<
 *         path = os.path.dirname(self.FileName)
 *         if back:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_191SaveToFile(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_191SaveToFile = {"SaveToFile", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_191SaveToFile, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_191SaveToFile(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_St = 0;
  PyObject *__pyx_v_back = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("SaveToFile (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_St,&__pyx_n_s_back,0};
    PyObject* values[3] = {0,0,0};
    values[2] = ((PyObject *)((PyObject *)Py_False));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_St)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("SaveToFile", 0, 2, 3, 1); __PYX_ERR(0, 1066, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_back);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "SaveToFile") < 0)) __PYX_ERR(0, 1066, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_St = values[1];
    __pyx_v_back = values[2];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("SaveToFile", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1066, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SaveToFile", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_190SaveToFile(__pyx_self, __pyx_v_self, __pyx_v_St, __pyx_v_back);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_190SaveToFile(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_St, PyObject *__pyx_v_back) {
  PyObject *__pyx_v_path = NULL;
  PyObject *__pyx_v_fname = NULL;
  PyObject *__pyx_v_ff = NULL;
  int __pyx_v_Result;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  int __pyx_t_12;
  __Pyx_RefNannySetupContext("SaveToFile", 0);

  /* "metaphor/monal/lcode/codewriter.py":1067
 * 
 *     def SaveToFile(self, St, back=False):
 *         path = os.path.dirname(self.FileName)             # <<<<<<<<<<<<<<
 *         if back:
 *             fname = path
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_os); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1067, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_path); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1067, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_dirname); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1067, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_FileName_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1067, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_t_4 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_4)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_4) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1067, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_3};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1067, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_t_3};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1067, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    } else
    #endif
    {
      __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1067, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = NULL;
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1067, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_path = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1068
 *     def SaveToFile(self, St, back=False):
 *         path = os.path.dirname(self.FileName)
 *         if back:             # <<<<<<<<<<<<<<
 *             fname = path
 *             path = os.path.dirname(path)
 */
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_back); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 1068, __pyx_L1_error)
  if (__pyx_t_6) {

    /* "metaphor/monal/lcode/codewriter.py":1069
 *         path = os.path.dirname(self.FileName)
 *         if back:
 *             fname = path             # <<<<<<<<<<<<<<
 *             path = os.path.dirname(path)
 *         else:
 */
    __Pyx_INCREF(__pyx_v_path);
    __pyx_v_fname = __pyx_v_path;

    /* "metaphor/monal/lcode/codewriter.py":1070
 *         if back:
 *             fname = path
 *             path = os.path.dirname(path)             # <<<<<<<<<<<<<<
 *         else:
 *             fname = self.FileName
 */
    __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_os); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1070, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_path); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1070, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_5);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_dirname); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1070, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __pyx_t_5 = NULL;
    if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_5)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_5);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_5) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1070, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_path};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1070, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_path};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1070, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      {
        __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1070, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5); __pyx_t_5 = NULL;
        __Pyx_INCREF(__pyx_v_path);
        __Pyx_GIVEREF(__pyx_v_path);
        PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_path);
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1070, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF_SET(__pyx_v_path, __pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1068
 *     def SaveToFile(self, St, back=False):
 *         path = os.path.dirname(self.FileName)
 *         if back:             # <<<<<<<<<<<<<<
 *             fname = path
 *             path = os.path.dirname(path)
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1072
 *             path = os.path.dirname(path)
 *         else:
 *             fname = self.FileName             # <<<<<<<<<<<<<<
 *         if path:  # and (not os.path.exists(path)):
 *             #os.m akedirs(path)
 */
  /*else*/ {
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_FileName_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1072, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_fname = __pyx_t_1;
    __pyx_t_1 = 0;
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":1073
 *         else:
 *             fname = self.FileName
 *         if path:  # and (not os.path.exists(path)):             # <<<<<<<<<<<<<<
 *             #os.m akedirs(path)
 *             safemakedirs(path)
 */
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_path); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 1073, __pyx_L1_error)
  if (__pyx_t_6) {

    /* "metaphor/monal/lcode/codewriter.py":1075
 *         if path:  # and (not os.path.exists(path)):
 *             #os.m akedirs(path)
 *             safemakedirs(path)             # <<<<<<<<<<<<<<
 *         if PY3:
 *             with open(fname, "wb") as ff:
 */
    __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_safemakedirs); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1075, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = NULL;
    if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
      __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
      if (likely(__pyx_t_3)) {
        PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(function);
        __Pyx_DECREF_SET(__pyx_t_2, function);
      }
    }
    if (!__pyx_t_3) {
      __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1075, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
    } else {
      #if CYTHON_FAST_PYCALL
      if (PyFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_path};
        __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1075, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      #if CYTHON_FAST_PYCCALL
      if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
        PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_path};
        __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1075, __pyx_L1_error)
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_GOTREF(__pyx_t_1);
      } else
      #endif
      {
        __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1075, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
        __Pyx_INCREF(__pyx_v_path);
        __Pyx_GIVEREF(__pyx_v_path);
        PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_v_path);
        __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1075, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1073
 *         else:
 *             fname = self.FileName
 *         if path:  # and (not os.path.exists(path)):             # <<<<<<<<<<<<<<
 *             #os.m akedirs(path)
 *             safemakedirs(path)
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":1076
 *             #os.m akedirs(path)
 *             safemakedirs(path)
 *         if PY3:             # <<<<<<<<<<<<<<
 *             with open(fname, "wb") as ff:
 *                 ff.write(bytes(St, "utf-8"))
 */
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_PY3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1076, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 1076, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_6) {

    /* "metaphor/monal/lcode/codewriter.py":1077
 *             safemakedirs(path)
 *         if PY3:
 *             with open(fname, "wb") as ff:             # <<<<<<<<<<<<<<
 *                 ff.write(bytes(St, "utf-8"))
 *                 Result = True
 */
    /*with:*/ {
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1077, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_fname);
      __Pyx_GIVEREF(__pyx_v_fname);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_fname);
      __Pyx_INCREF(__pyx_n_u_wb);
      __Pyx_GIVEREF(__pyx_n_u_wb);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_n_u_wb);
      __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_open, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1077, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1077, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1077, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_3)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      if (__pyx_t_3) {
        __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1077, __pyx_L6_error)
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else {
        __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1077, __pyx_L6_error)
      }
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __pyx_t_1;
      __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      /*try:*/ {
        {
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __Pyx_ExceptionSave(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
          __Pyx_XGOTREF(__pyx_t_8);
          __Pyx_XGOTREF(__pyx_t_9);
          __Pyx_XGOTREF(__pyx_t_10);
          /*try:*/ {
            __pyx_v_ff = __pyx_t_5;
            __pyx_t_5 = 0;

            /* "metaphor/monal/lcode/codewriter.py":1078
 *         if PY3:
 *             with open(fname, "wb") as ff:
 *                 ff.write(bytes(St, "utf-8"))             # <<<<<<<<<<<<<<
 *                 Result = True
 *         else:
 */
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_ff, __pyx_n_s_write); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1078, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1078, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_INCREF(__pyx_v_St);
            __Pyx_GIVEREF(__pyx_v_St);
            PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_St);
            __Pyx_INCREF(__pyx_kp_u_utf_8);
            __Pyx_GIVEREF(__pyx_kp_u_utf_8);
            PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_kp_u_utf_8);
            __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1078, __pyx_L10_error)
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_1 = NULL;
            if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
              __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_2);
              if (likely(__pyx_t_1)) {
                PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
                __Pyx_INCREF(__pyx_t_1);
                __Pyx_INCREF(function);
                __Pyx_DECREF_SET(__pyx_t_2, function);
              }
            }
            if (!__pyx_t_1) {
              __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1078, __pyx_L10_error)
              __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              __Pyx_GOTREF(__pyx_t_5);
            } else {
              #if CYTHON_FAST_PYCALL
              if (PyFunction_Check(__pyx_t_2)) {
                PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_t_3};
                __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1078, __pyx_L10_error)
                __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
                __Pyx_GOTREF(__pyx_t_5);
                __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              } else
              #endif
              #if CYTHON_FAST_PYCCALL
              if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
                PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_t_3};
                __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1078, __pyx_L10_error)
                __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
                __Pyx_GOTREF(__pyx_t_5);
                __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              } else
              #endif
              {
                __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1078, __pyx_L10_error)
                __Pyx_GOTREF(__pyx_t_4);
                __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL;
                __Pyx_GIVEREF(__pyx_t_3);
                PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_3);
                __pyx_t_3 = 0;
                __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1078, __pyx_L10_error)
                __Pyx_GOTREF(__pyx_t_5);
                __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
              }
            }
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

            /* "metaphor/monal/lcode/codewriter.py":1079
 *             with open(fname, "wb") as ff:
 *                 ff.write(bytes(St, "utf-8"))
 *                 Result = True             # <<<<<<<<<<<<<<
 *         else:
 *             with open(fname, "wb") as ff:
 */
            __pyx_v_Result = 1;

            /* "metaphor/monal/lcode/codewriter.py":1077
 *             safemakedirs(path)
 *         if PY3:
 *             with open(fname, "wb") as ff:             # <<<<<<<<<<<<<<
 *                 ff.write(bytes(St, "utf-8"))
 *                 Result = True
 */
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SaveToFile", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_2, &__pyx_t_4) < 0) __PYX_ERR(0, 1077, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_3 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1077, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_3, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1077, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_6 < 0) __PYX_ERR(0, 1077, __pyx_L12_except_error)
            __pyx_t_12 = ((!(__pyx_t_6 != 0)) != 0);
            if (__pyx_t_12) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_2);
              __Pyx_XGIVEREF(__pyx_t_4);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_2, __pyx_t_4);
              __pyx_t_5 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; 
              __PYX_ERR(0, 1077, __pyx_L12_except_error)
            }
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L1_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L15_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__37, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1077, __pyx_L1_error)
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
      }
      goto __pyx_L19;
      __pyx_L6_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L1_error;
      __pyx_L19:;
    }

    /* "metaphor/monal/lcode/codewriter.py":1076
 *             #os.m akedirs(path)
 *             safemakedirs(path)
 *         if PY3:             # <<<<<<<<<<<<<<
 *             with open(fname, "wb") as ff:
 *                 ff.write(bytes(St, "utf-8"))
 */
    goto __pyx_L5;
  }

  /* "metaphor/monal/lcode/codewriter.py":1081
 *                 Result = True
 *         else:
 *             with open(fname, "wb") as ff:             # <<<<<<<<<<<<<<
 *                 ff.write(St)
 *                 Result = True
 */
  /*else*/ {
    /*with:*/ {
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1081, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_fname);
      __Pyx_GIVEREF(__pyx_v_fname);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_fname);
      __Pyx_INCREF(__pyx_n_u_wb);
      __Pyx_GIVEREF(__pyx_n_u_wb);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_n_u_wb);
      __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_open, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1081, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_7 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_exit); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1081, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_5 = __Pyx_PyObject_LookupSpecial(__pyx_t_2, __pyx_n_s_enter); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1081, __pyx_L20_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_3)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      if (__pyx_t_3) {
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1081, __pyx_L20_error)
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else {
        __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1081, __pyx_L20_error)
      }
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __pyx_t_4;
      __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      /*try:*/ {
        {
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __Pyx_ExceptionSave(&__pyx_t_10, &__pyx_t_9, &__pyx_t_8);
          __Pyx_XGOTREF(__pyx_t_10);
          __Pyx_XGOTREF(__pyx_t_9);
          __Pyx_XGOTREF(__pyx_t_8);
          /*try:*/ {
            __pyx_v_ff = __pyx_t_5;
            __pyx_t_5 = 0;

            /* "metaphor/monal/lcode/codewriter.py":1082
 *         else:
 *             with open(fname, "wb") as ff:
 *                 ff.write(St)             # <<<<<<<<<<<<<<
 *                 Result = True
 *         return Result
 */
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_ff, __pyx_n_s_write); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1082, __pyx_L24_error)
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_4 = NULL;
            if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
              __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
              if (likely(__pyx_t_4)) {
                PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
                __Pyx_INCREF(__pyx_t_4);
                __Pyx_INCREF(function);
                __Pyx_DECREF_SET(__pyx_t_2, function);
              }
            }
            if (!__pyx_t_4) {
              __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_St); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1082, __pyx_L24_error)
              __Pyx_GOTREF(__pyx_t_5);
            } else {
              #if CYTHON_FAST_PYCALL
              if (PyFunction_Check(__pyx_t_2)) {
                PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_St};
                __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1082, __pyx_L24_error)
                __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
                __Pyx_GOTREF(__pyx_t_5);
              } else
              #endif
              #if CYTHON_FAST_PYCCALL
              if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
                PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_St};
                __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1082, __pyx_L24_error)
                __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
                __Pyx_GOTREF(__pyx_t_5);
              } else
              #endif
              {
                __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1082, __pyx_L24_error)
                __Pyx_GOTREF(__pyx_t_3);
                __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
                __Pyx_INCREF(__pyx_v_St);
                __Pyx_GIVEREF(__pyx_v_St);
                PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_St);
                __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1082, __pyx_L24_error)
                __Pyx_GOTREF(__pyx_t_5);
                __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              }
            }
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

            /* "metaphor/monal/lcode/codewriter.py":1083
 *             with open(fname, "wb") as ff:
 *                 ff.write(St)
 *                 Result = True             # <<<<<<<<<<<<<<
 *         return Result
 * 
 */
            __pyx_v_Result = 1;

            /* "metaphor/monal/lcode/codewriter.py":1081
 *                 Result = True
 *         else:
 *             with open(fname, "wb") as ff:             # <<<<<<<<<<<<<<
 *                 ff.write(St)
 *                 Result = True
 */
          }
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          goto __pyx_L29_try_end;
          __pyx_L24_error:;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          /*except:*/ {
            __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SaveToFile", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_2, &__pyx_t_3) < 0) __PYX_ERR(0, 1081, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_4 = PyTuple_Pack(3, __pyx_t_5, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1081, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_4, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1081, __pyx_L26_except_error)
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (__pyx_t_12 < 0) __PYX_ERR(0, 1081, __pyx_L26_except_error)
            __pyx_t_6 = ((!(__pyx_t_12 != 0)) != 0);
            if (__pyx_t_6) {
              __Pyx_GIVEREF(__pyx_t_5);
              __Pyx_GIVEREF(__pyx_t_2);
              __Pyx_XGIVEREF(__pyx_t_3);
              __Pyx_ErrRestoreWithState(__pyx_t_5, __pyx_t_2, __pyx_t_3);
              __pyx_t_5 = 0; __pyx_t_2 = 0; __pyx_t_3 = 0; 
              __PYX_ERR(0, 1081, __pyx_L26_except_error)
            }
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L25_exception_handled;
          }
          __pyx_L26_except_error:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
          goto __pyx_L1_error;
          __pyx_L25_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_9, __pyx_t_8);
          __pyx_L29_try_end:;
        }
      }
      /*finally:*/ {
        /*normal exit:*/{
          if (__pyx_t_7) {
            __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_tuple__38, NULL);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1081, __pyx_L1_error)
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          }
          goto __pyx_L23;
        }
        __pyx_L23:;
      }
      goto __pyx_L33;
      __pyx_L20_error:;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L1_error;
      __pyx_L33:;
    }
  }
  __pyx_L5:;

  /* "metaphor/monal/lcode/codewriter.py":1084
 *                 ff.write(St)
 *                 Result = True
 *         return Result             # <<<<<<<<<<<<<<
 * 
 *     def LimitLine(self, Text):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_Result); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1084, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __pyx_r = __pyx_t_3;
  __pyx_t_3 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1066
 *         return 0
 * 
 *     def SaveToFile(self, St, back=False):             # <<<<<<<<<<<<<<
 *         path = os.path.dirname(self.FileName)
 *         if back:
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.SaveToFile", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_path);
  __Pyx_XDECREF(__pyx_v_fname);
  __Pyx_XDECREF(__pyx_v_ff);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1086
 *         return Result
 * 
 *     def LimitLine(self, Text):             # <<<<<<<<<<<<<<
 *         # limitation de la longueur des lignes. Faut-il le faire ?
 *         return Text
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_193LimitLine(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_193LimitLine = {"LimitLine", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_193LimitLine, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_193LimitLine(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_Text = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("LimitLine (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Text,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Text)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("LimitLine", 1, 2, 2, 1); __PYX_ERR(0, 1086, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "LimitLine") < 0)) __PYX_ERR(0, 1086, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_Text = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("LimitLine", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1086, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.LimitLine", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_192LimitLine(__pyx_self, __pyx_v_self, __pyx_v_Text);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_192LimitLine(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_Text) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("LimitLine", 0);

  /* "metaphor/monal/lcode/codewriter.py":1088
 *     def LimitLine(self, Text):
 *         # limitation de la longueur des lignes. Faut-il le faire ?
 *         return Text             # <<<<<<<<<<<<<<
 * 
 *     def IsComment(self, Line):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_Text);
  __pyx_r = __pyx_v_Text;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1086
 *         return Result
 * 
 *     def LimitLine(self, Text):             # <<<<<<<<<<<<<<
 *         # limitation de la longueur des lignes. Faut-il le faire ?
 *         return Text
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1090
 *         return Text
 * 
 *     def IsComment(self, Line):             # <<<<<<<<<<<<<<
 *         return False
 * 
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_195IsComment(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_195IsComment = {"IsComment", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_195IsComment, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_195IsComment(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Line = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("IsComment (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Line,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Line)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("IsComment", 1, 2, 2, 1); __PYX_ERR(0, 1090, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "IsComment") < 0)) __PYX_ERR(0, 1090, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_Line = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("IsComment", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1090, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.IsComment", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_194IsComment(__pyx_self, __pyx_v_self, __pyx_v_Line);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_194IsComment(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Line) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("IsComment", 0);

  /* "metaphor/monal/lcode/codewriter.py":1091
 * 
 *     def IsComment(self, Line):
 *         return False             # <<<<<<<<<<<<<<
 * 
 *     def ExtractFileNameOnly(self, filename):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(Py_False);
  __pyx_r = Py_False;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1090
 *         return Text
 * 
 *     def IsComment(self, Line):             # <<<<<<<<<<<<<<
 *         return False
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1093
 *         return False
 * 
 *     def ExtractFileNameOnly(self, filename):             # <<<<<<<<<<<<<<
 *         res = os.path.basename(filename)
 *         res, _ = os.path.splitext(res)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_197ExtractFileNameOnly(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_197ExtractFileNameOnly = {"ExtractFileNameOnly", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_197ExtractFileNameOnly, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_197ExtractFileNameOnly(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_filename = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("ExtractFileNameOnly (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_filename,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_filename)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("ExtractFileNameOnly", 1, 2, 2, 1); __PYX_ERR(0, 1093, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ExtractFileNameOnly") < 0)) __PYX_ERR(0, 1093, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_self = values[0];
    __pyx_v_filename = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("ExtractFileNameOnly", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1093, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ExtractFileNameOnly", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_196ExtractFileNameOnly(__pyx_self, __pyx_v_self, __pyx_v_filename);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_196ExtractFileNameOnly(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_filename) {
  PyObject *__pyx_v_res = NULL;
  CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *(*__pyx_t_5)(PyObject *);
  __Pyx_RefNannySetupContext("ExtractFileNameOnly", 0);

  /* "metaphor/monal/lcode/codewriter.py":1094
 * 
 *     def ExtractFileNameOnly(self, filename):
 *         res = os.path.basename(filename)             # <<<<<<<<<<<<<<
 *         res, _ = os.path.splitext(res)
 *         return res
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_os); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1094, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_path); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1094, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_basename); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1094, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_3) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_filename); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1094, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_filename};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1094, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_filename};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1094, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    {
      __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1094, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
      __Pyx_INCREF(__pyx_v_filename);
      __Pyx_GIVEREF(__pyx_v_filename);
      PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_filename);
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1094, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_v_res = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1095
 *     def ExtractFileNameOnly(self, filename):
 *         res = os.path.basename(filename)
 *         res, _ = os.path.splitext(res)             # <<<<<<<<<<<<<<
 *         return res
 * 
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_os); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1095, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_path); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1095, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_splitext); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1095, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_t_4 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
    __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
    if (likely(__pyx_t_4)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
      __Pyx_INCREF(__pyx_t_4);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_2, function);
    }
  }
  if (!__pyx_t_4) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_res); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1095, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_res};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1095, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
      PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_res};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1095, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    {
      __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1095, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
      __Pyx_INCREF(__pyx_v_res);
      __Pyx_GIVEREF(__pyx_v_res);
      PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_res);
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1095, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
    PyObject* sequence = __pyx_t_1;
    Py_ssize_t size = __Pyx_PySequence_SIZE(sequence);
    if (unlikely(size != 2)) {
      if (size > 2) __Pyx_RaiseTooManyValuesError(2);
      else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
      __PYX_ERR(0, 1095, __pyx_L1_error)
    }
    #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    if (likely(PyTuple_CheckExact(sequence))) {
      __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0); 
      __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1); 
    } else {
      __pyx_t_2 = PyList_GET_ITEM(sequence, 0); 
      __pyx_t_3 = PyList_GET_ITEM(sequence, 1); 
    }
    __Pyx_INCREF(__pyx_t_2);
    __Pyx_INCREF(__pyx_t_3);
    #else
    __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1095, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1095, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    #endif
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  } else {
    Py_ssize_t index = -1;
    __pyx_t_4 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1095, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
    index = 0; __pyx_t_2 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
    __Pyx_GOTREF(__pyx_t_2);
    index = 1; __pyx_t_3 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_3)) goto __pyx_L3_unpacking_failed;
    __Pyx_GOTREF(__pyx_t_3);
    if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) __PYX_ERR(0, 1095, __pyx_L1_error)
    __pyx_t_5 = NULL;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    goto __pyx_L4_unpacking_done;
    __pyx_L3_unpacking_failed:;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = NULL;
    if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
    __PYX_ERR(0, 1095, __pyx_L1_error)
    __pyx_L4_unpacking_done:;
  }
  __Pyx_DECREF_SET(__pyx_v_res, __pyx_t_2);
  __pyx_t_2 = 0;
  __pyx_v__ = __pyx_t_3;
  __pyx_t_3 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1096
 *         res = os.path.basename(filename)
 *         res, _ = os.path.splitext(res)
 *         return res             # <<<<<<<<<<<<<<
 * 
 *     def GetDataRecStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_res);
  __pyx_r = __pyx_v_res;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1093
 *         return False
 * 
 *     def ExtractFileNameOnly(self, filename):             # <<<<<<<<<<<<<<
 *         res = os.path.basename(filename)
 *         res, _ = os.path.splitext(res)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.ExtractFileNameOnly", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_res);
  __Pyx_XDECREF(__pyx_v__);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1098
 *         return res
 * 
 *     def GetDataRecStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return ''
 * # commented le 14/112/17
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_199GetDataRecStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_199GetDataRecStr = {"GetDataRecStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_199GetDataRecStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_199GetDataRecStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  CYTHON_UNUSED PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetDataRecStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetDataRecStr") < 0)) __PYX_ERR(0, 1098, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetDataRecStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1098, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDataRecStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_198GetDataRecStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_198GetDataRecStr(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetDataRecStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1099
 * 
 *     def GetDataRecStr(self, garb=0):
 *         return ''             # <<<<<<<<<<<<<<
 * # commented le 14/112/17
 * #         TL = []
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1098
 *         return res
 * 
 *     def GetDataRecStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return ''
 * # commented le 14/112/17
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1131
 * #         return "\n".join(TL)
 * #
 *     def GetModelCount(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             N = self.NetSource.modelCount
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_201GetModelCount(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_201GetModelCount = {"GetModelCount", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_201GetModelCount, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_201GetModelCount(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetModelCount (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetModelCount") < 0)) __PYX_ERR(0, 1131, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetModelCount", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1131, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetModelCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_200GetModelCount(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_200GetModelCount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_v_N = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  __Pyx_RefNannySetupContext("GetModelCount", 0);

  /* "metaphor/monal/lcode/codewriter.py":1132
 * #
 *     def GetModelCount(self, Indent=0):
 *         try:             # <<<<<<<<<<<<<<
 *             N = self.NetSource.modelCount
 *         except AttributeError:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1133
 *     def GetModelCount(self, Indent=0):
 *         try:
 *             N = self.NetSource.modelCount             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             N = 1
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1133, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_modelCount); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1133, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_N = __pyx_t_5;
      __pyx_t_5 = 0;

      /* "metaphor/monal/lcode/codewriter.py":1132
 * #
 *     def GetModelCount(self, Indent=0):
 *         try:             # <<<<<<<<<<<<<<
 *             N = self.NetSource.modelCount
 *         except AttributeError:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1134
 *         try:
 *             N = self.NetSource.modelCount
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             N = 1
 *         return str(N)
 */
    __pyx_t_6 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_6) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetModelCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_7) < 0) __PYX_ERR(0, 1134, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":1135
 *             N = self.NetSource.modelCount
 *         except AttributeError:
 *             N = 1             # <<<<<<<<<<<<<<
 *         return str(N)
 * 
 */
      __Pyx_INCREF(__pyx_int_1);
      __Pyx_XDECREF_SET(__pyx_v_N, __pyx_int_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1132
 * #
 *     def GetModelCount(self, Indent=0):
 *         try:             # <<<<<<<<<<<<<<
 *             N = self.NetSource.modelCount
 *         except AttributeError:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":1136
 *         except AttributeError:
 *             N = 1
 *         return str(N)             # <<<<<<<<<<<<<<
 * 
 *     def GetDataCount(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_7 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_N); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1136, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __pyx_r = __pyx_t_7;
  __pyx_t_7 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1131
 * #         return "\n".join(TL)
 * #
 *     def GetModelCount(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             N = self.NetSource.modelCount
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetModelCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_N);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1138
 *         return str(N)
 * 
 *     def GetDataCount(self, Indent=0):             # <<<<<<<<<<<<<<
 *         N = 0
 * #         model = self.NetSource
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_203GetDataCount(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_203GetDataCount = {"GetDataCount", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_203GetDataCount, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_203GetDataCount(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetDataCount (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetDataCount") < 0)) __PYX_ERR(0, 1138, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetDataCount", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1138, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDataCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_202GetDataCount(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_202GetDataCount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_v_N = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("GetDataCount", 0);

  /* "metaphor/monal/lcode/codewriter.py":1139
 * 
 *     def GetDataCount(self, Indent=0):
 *         N = 0             # <<<<<<<<<<<<<<
 * #         model = self.NetSource
 *         #self.NetSource
 */
  __Pyx_INCREF(__pyx_int_0);
  __pyx_v_N = __pyx_int_0;

  /* "metaphor/monal/lcode/codewriter.py":1144
 * #         if model.owner is not None:
 * #             N = self.NetSource.owner.dataCount
 *         if self.DriverSource is not None:             # <<<<<<<<<<<<<<
 *             N = self.DriverSource.dataCount
 *         #elif isinstance(model, model.Multimodel) and (model.style == model.ms_serie):
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1144, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = (__pyx_t_1 != Py_None);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":1145
 * #             N = self.NetSource.owner.dataCount
 *         if self.DriverSource is not None:
 *             N = self.DriverSource.dataCount             # <<<<<<<<<<<<<<
 *         #elif isinstance(model, model.Multimodel) and (model.style == model.ms_serie):
 *         else:
 */
    __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DriverSource_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1145, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_dataCount); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1145, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF_SET(__pyx_v_N, __pyx_t_4);
    __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1144
 * #         if model.owner is not None:
 * #             N = self.NetSource.owner.dataCount
 *         if self.DriverSource is not None:             # <<<<<<<<<<<<<<
 *             N = self.DriverSource.dataCount
 *         #elif isinstance(model, model.Multimodel) and (model.style == model.ms_serie):
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1148
 *         #elif isinstance(model, model.Multimodel) and (model.style == model.ms_serie):
 *         else:
 *             try:             # <<<<<<<<<<<<<<
 *                 N = self.NetSource.modelCount
 *             except:
 */
  /*else*/ {
    {
      __Pyx_PyThreadState_declare
      __Pyx_PyThreadState_assign
      __Pyx_ExceptionSave(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7);
      __Pyx_XGOTREF(__pyx_t_5);
      __Pyx_XGOTREF(__pyx_t_6);
      __Pyx_XGOTREF(__pyx_t_7);
      /*try:*/ {

        /* "metaphor/monal/lcode/codewriter.py":1149
 *         else:
 *             try:
 *                 N = self.NetSource.modelCount             # <<<<<<<<<<<<<<
 *             except:
 *                 N = 0
 */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1149, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_modelCount); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1149, __pyx_L4_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF_SET(__pyx_v_N, __pyx_t_1);
        __pyx_t_1 = 0;

        /* "metaphor/monal/lcode/codewriter.py":1148
 *         #elif isinstance(model, model.Multimodel) and (model.style == model.ms_serie):
 *         else:
 *             try:             # <<<<<<<<<<<<<<
 *                 N = self.NetSource.modelCount
 *             except:
 */
      }
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L9_try_end;
      __pyx_L4_error:;
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "metaphor/monal/lcode/codewriter.py":1150
 *             try:
 *                 N = self.NetSource.modelCount
 *             except:             # <<<<<<<<<<<<<<
 *                 N = 0
 *         return str(N)
 */
      /*except:*/ {
        __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDataCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
        if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_4, &__pyx_t_8) < 0) __PYX_ERR(0, 1150, __pyx_L6_except_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_GOTREF(__pyx_t_8);

        /* "metaphor/monal/lcode/codewriter.py":1151
 *                 N = self.NetSource.modelCount
 *             except:
 *                 N = 0             # <<<<<<<<<<<<<<
 *         return str(N)
 * 
 */
        __Pyx_INCREF(__pyx_int_0);
        __Pyx_DECREF_SET(__pyx_v_N, __pyx_int_0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        goto __pyx_L5_exception_handled;
      }
      __pyx_L6_except_error:;

      /* "metaphor/monal/lcode/codewriter.py":1148
 *         #elif isinstance(model, model.Multimodel) and (model.style == model.ms_serie):
 *         else:
 *             try:             # <<<<<<<<<<<<<<
 *                 N = self.NetSource.modelCount
 *             except:
 */
      __Pyx_XGIVEREF(__pyx_t_5);
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_ExceptionReset(__pyx_t_5, __pyx_t_6, __pyx_t_7);
      goto __pyx_L1_error;
      __pyx_L5_exception_handled:;
      __Pyx_XGIVEREF(__pyx_t_5);
      __Pyx_XGIVEREF(__pyx_t_6);
      __Pyx_XGIVEREF(__pyx_t_7);
      __Pyx_ExceptionReset(__pyx_t_5, __pyx_t_6, __pyx_t_7);
      __pyx_L9_try_end:;
    }
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":1152
 *             except:
 *                 N = 0
 *         return str(N)             # <<<<<<<<<<<<<<
 * 
 *     def GetModelList(self, Indent=1):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_8 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_N); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1152, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_r = __pyx_t_8;
  __pyx_t_8 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1138
 *         return str(N)
 * 
 *     def GetDataCount(self, Indent=0):             # <<<<<<<<<<<<<<
 *         N = 0
 * #         model = self.NetSource
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDataCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_N);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1154
 *         return str(N)
 * 
 *     def GetModelList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         lst = [self.DebutLigne(Indent) + '"%s"'% model.name for model in self.NetSource.models]
 *         return ",\n".join(lst)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_205GetModelList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_205GetModelList = {"GetModelList", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_205GetModelList, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_205GetModelList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetModelList (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_1));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetModelList") < 0)) __PYX_ERR(0, 1154, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetModelList", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1154, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetModelList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_204GetModelList(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_204GetModelList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Indent) {
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_8genexpr4__pyx_v_model = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  Py_ssize_t __pyx_t_4;
  PyObject *(*__pyx_t_5)(PyObject *);
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("GetModelList", 0);

  /* "metaphor/monal/lcode/codewriter.py":1155
 * 
 *     def GetModelList(self, Indent=1):
 *         lst = [self.DebutLigne(Indent) + '"%s"'% model.name for model in self.NetSource.models]             # <<<<<<<<<<<<<<
 *         return ",\n".join(lst)
 * 
 */
  { /* enter inner scope */
    __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1155, __pyx_L5_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1155, __pyx_L5_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_models); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1155, __pyx_L5_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (likely(PyList_CheckExact(__pyx_t_3)) || PyTuple_CheckExact(__pyx_t_3)) {
      __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0;
      __pyx_t_5 = NULL;
    } else {
      __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1155, __pyx_L5_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1155, __pyx_L5_error)
    }
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    for (;;) {
      if (likely(!__pyx_t_5)) {
        if (likely(PyList_CheckExact(__pyx_t_2))) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(0, 1155, __pyx_L5_error)
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1155, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          #endif
        } else {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(0, 1155, __pyx_L5_error)
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1155, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          #endif
        }
      } else {
        __pyx_t_3 = __pyx_t_5(__pyx_t_2);
        if (unlikely(!__pyx_t_3)) {
          PyObject* exc_type = PyErr_Occurred();
          if (exc_type) {
            if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
            else __PYX_ERR(0, 1155, __pyx_L5_error)
          }
          break;
        }
        __Pyx_GOTREF(__pyx_t_3);
      }
      __Pyx_XDECREF_SET(__pyx_8genexpr4__pyx_v_model, __pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DebutLigne); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1155, __pyx_L5_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
        __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
        if (likely(__pyx_t_7)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_6, function);
        }
      }
      if (!__pyx_t_7) {
        __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_v_Indent); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1155, __pyx_L5_error)
        __Pyx_GOTREF(__pyx_t_3);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_6)) {
          PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_v_Indent};
          __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1155, __pyx_L5_error)
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_GOTREF(__pyx_t_3);
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
          PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_v_Indent};
          __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1155, __pyx_L5_error)
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_GOTREF(__pyx_t_3);
        } else
        #endif
        {
          __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1155, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
          __Pyx_INCREF(__pyx_v_Indent);
          __Pyx_GIVEREF(__pyx_v_Indent);
          PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_v_Indent);
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1155, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_8genexpr4__pyx_v_model, __pyx_n_s_name); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1155, __pyx_L5_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_8 = PyUnicode_Format(__pyx_kp_u_s_2, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1155, __pyx_L5_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyNumber_Add(__pyx_t_3, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1155, __pyx_L5_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_6))) __PYX_ERR(0, 1155, __pyx_L5_error)
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_8genexpr4__pyx_v_model); __pyx_8genexpr4__pyx_v_model = 0;
    goto __pyx_L8_exit_scope;
    __pyx_L5_error:;
    __Pyx_XDECREF(__pyx_8genexpr4__pyx_v_model); __pyx_8genexpr4__pyx_v_model = 0;
    goto __pyx_L1_error;
    __pyx_L8_exit_scope:;
  } /* exit inner scope */
  __pyx_v_lst = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1156
 *     def GetModelList(self, Indent=1):
 *         lst = [self.DebutLigne(Indent) + '"%s"'% model.name for model in self.NetSource.models]
 *         return ",\n".join(lst)             # <<<<<<<<<<<<<<
 * 
 *     def GetTrueModelList(self, Indent=1):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyUnicode_Join(__pyx_kp_u__36, __pyx_v_lst); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1156, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1154
 *         return str(N)
 * 
 *     def GetModelList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         lst = [self.DebutLigne(Indent) + '"%s"'% model.name for model in self.NetSource.models]
 *         return ",\n".join(lst)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetModelList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_8genexpr4__pyx_v_model);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1158
 *         return ",\n".join(lst)
 * 
 *     def GetTrueModelList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         try:
 *             try:
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_207GetTrueModelList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_207GetTrueModelList = {"GetTrueModelList", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_207GetTrueModelList, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_207GetTrueModelList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetTrueModelList (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_1));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetTrueModelList") < 0)) __PYX_ERR(0, 1158, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetTrueModelList", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1158, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTrueModelList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_206GetTrueModelList(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_206GetTrueModelList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Indent) {
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_8genexpr5__pyx_v_model = NULL;
  PyObject *__pyx_8genexpr6__pyx_v_model = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  Py_ssize_t __pyx_t_10;
  PyObject *(*__pyx_t_11)(PyObject *);
  PyObject *__pyx_t_12 = NULL;
  PyObject *__pyx_t_13 = NULL;
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  PyObject *__pyx_t_16 = NULL;
  PyObject *__pyx_t_17 = NULL;
  int __pyx_t_18;
  __Pyx_RefNannySetupContext("GetTrueModelList", 0);

  /* "metaphor/monal/lcode/codewriter.py":1159
 * 
 *     def GetTrueModelList(self, Indent=1):
 *         try:             # <<<<<<<<<<<<<<
 *             try:
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.trueName for model in self.NetSource.models]
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1160
 *     def GetTrueModelList(self, Indent=1):
 *         try:
 *             try:             # <<<<<<<<<<<<<<
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.trueName for model in self.NetSource.models]
 *             except:
 */
      {
        __Pyx_PyThreadState_declare
        __Pyx_PyThreadState_assign
        __Pyx_ExceptionSave(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6);
        __Pyx_XGOTREF(__pyx_t_4);
        __Pyx_XGOTREF(__pyx_t_5);
        __Pyx_XGOTREF(__pyx_t_6);
        /*try:*/ {

          /* "metaphor/monal/lcode/codewriter.py":1161
 *         try:
 *             try:
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.trueName for model in self.NetSource.models]             # <<<<<<<<<<<<<<
 *             except:
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.trueName for model in self.NetSource.models]
 */
          { /* enter inner scope */
            __pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1161, __pyx_L17_error)
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1161, __pyx_L17_error)
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_models); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1161, __pyx_L17_error)
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            if (likely(PyList_CheckExact(__pyx_t_9)) || PyTuple_CheckExact(__pyx_t_9)) {
              __pyx_t_8 = __pyx_t_9; __Pyx_INCREF(__pyx_t_8); __pyx_t_10 = 0;
              __pyx_t_11 = NULL;
            } else {
              __pyx_t_10 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1161, __pyx_L17_error)
              __Pyx_GOTREF(__pyx_t_8);
              __pyx_t_11 = Py_TYPE(__pyx_t_8)->tp_iternext; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1161, __pyx_L17_error)
            }
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            for (;;) {
              if (likely(!__pyx_t_11)) {
                if (likely(PyList_CheckExact(__pyx_t_8))) {
                  if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_8)) break;
                  #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                  __pyx_t_9 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_9); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1161, __pyx_L17_error)
                  #else
                  __pyx_t_9 = PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1161, __pyx_L17_error)
                  __Pyx_GOTREF(__pyx_t_9);
                  #endif
                } else {
                  if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_8)) break;
                  #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                  __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_9); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1161, __pyx_L17_error)
                  #else
                  __pyx_t_9 = PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1161, __pyx_L17_error)
                  __Pyx_GOTREF(__pyx_t_9);
                  #endif
                }
              } else {
                __pyx_t_9 = __pyx_t_11(__pyx_t_8);
                if (unlikely(!__pyx_t_9)) {
                  PyObject* exc_type = PyErr_Occurred();
                  if (exc_type) {
                    if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                    else __PYX_ERR(0, 1161, __pyx_L17_error)
                  }
                  break;
                }
                __Pyx_GOTREF(__pyx_t_9);
              }
              __Pyx_XDECREF_SET(__pyx_8genexpr5__pyx_v_model, __pyx_t_9);
              __pyx_t_9 = 0;
              __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DebutLigne); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1161, __pyx_L17_error)
              __Pyx_GOTREF(__pyx_t_12);
              __pyx_t_13 = NULL;
              if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_12))) {
                __pyx_t_13 = PyMethod_GET_SELF(__pyx_t_12);
                if (likely(__pyx_t_13)) {
                  PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12);
                  __Pyx_INCREF(__pyx_t_13);
                  __Pyx_INCREF(function);
                  __Pyx_DECREF_SET(__pyx_t_12, function);
                }
              }
              if (!__pyx_t_13) {
                __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_v_Indent); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1161, __pyx_L17_error)
                __Pyx_GOTREF(__pyx_t_9);
              } else {
                #if CYTHON_FAST_PYCALL
                if (PyFunction_Check(__pyx_t_12)) {
                  PyObject *__pyx_temp[2] = {__pyx_t_13, __pyx_v_Indent};
                  __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_12, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1161, __pyx_L17_error)
                  __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
                  __Pyx_GOTREF(__pyx_t_9);
                } else
                #endif
                #if CYTHON_FAST_PYCCALL
                if (__Pyx_PyFastCFunction_Check(__pyx_t_12)) {
                  PyObject *__pyx_temp[2] = {__pyx_t_13, __pyx_v_Indent};
                  __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_12, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1161, __pyx_L17_error)
                  __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
                  __Pyx_GOTREF(__pyx_t_9);
                } else
                #endif
                {
                  __pyx_t_14 = PyTuple_New(1+1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1161, __pyx_L17_error)
                  __Pyx_GOTREF(__pyx_t_14);
                  __Pyx_GIVEREF(__pyx_t_13); PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_13); __pyx_t_13 = NULL;
                  __Pyx_INCREF(__pyx_v_Indent);
                  __Pyx_GIVEREF(__pyx_v_Indent);
                  PyTuple_SET_ITEM(__pyx_t_14, 0+1, __pyx_v_Indent);
                  __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_t_14, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1161, __pyx_L17_error)
                  __Pyx_GOTREF(__pyx_t_9);
                  __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
                }
              }
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
              __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_8genexpr5__pyx_v_model, __pyx_n_s_trueName); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1161, __pyx_L17_error)
              __Pyx_GOTREF(__pyx_t_12);
              __pyx_t_14 = PyUnicode_Format(__pyx_kp_u_s_2, __pyx_t_12); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1161, __pyx_L17_error)
              __Pyx_GOTREF(__pyx_t_14);
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
              __pyx_t_12 = PyNumber_Add(__pyx_t_9, __pyx_t_14); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1161, __pyx_L17_error)
              __Pyx_GOTREF(__pyx_t_12);
              __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
              __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
              if (unlikely(__Pyx_ListComp_Append(__pyx_t_7, (PyObject*)__pyx_t_12))) __PYX_ERR(0, 1161, __pyx_L17_error)
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            }
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_XDECREF(__pyx_8genexpr5__pyx_v_model); __pyx_8genexpr5__pyx_v_model = 0;
            goto __pyx_L20_exit_scope;
            __pyx_L17_error:;
            __Pyx_XDECREF(__pyx_8genexpr5__pyx_v_model); __pyx_8genexpr5__pyx_v_model = 0;
            goto __pyx_L9_error;
            __pyx_L20_exit_scope:;
          } /* exit inner scope */
          __pyx_v_lst = ((PyObject*)__pyx_t_7);
          __pyx_t_7 = 0;

          /* "metaphor/monal/lcode/codewriter.py":1160
 *     def GetTrueModelList(self, Indent=1):
 *         try:
 *             try:             # <<<<<<<<<<<<<<
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.trueName for model in self.NetSource.models]
 *             except:
 */
        }
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        goto __pyx_L14_try_end;
        __pyx_L9_error:;
        __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
        __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;

        /* "metaphor/monal/lcode/codewriter.py":1162
 *             try:
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.trueName for model in self.NetSource.models]
 *             except:             # <<<<<<<<<<<<<<
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.trueName for model in self.NetSource.models]
 *         except AttributeError:
 */
        /*except:*/ {
          __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTrueModelList", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_12) < 0) __PYX_ERR(0, 1162, __pyx_L11_except_error)
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_GOTREF(__pyx_t_12);

          /* "metaphor/monal/lcode/codewriter.py":1163
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.trueName for model in self.NetSource.models]
 *             except:
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.trueName for model in self.NetSource.models]             # <<<<<<<<<<<<<<
 *         except AttributeError:
 *             lst = ['"_"']
 */
          { /* enter inner scope */
            __pyx_t_14 = PyList_New(0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1163, __pyx_L25_error)
            __Pyx_GOTREF(__pyx_t_14);
            __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1163, __pyx_L25_error)
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_models); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1163, __pyx_L25_error)
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (likely(PyList_CheckExact(__pyx_t_13)) || PyTuple_CheckExact(__pyx_t_13)) {
              __pyx_t_9 = __pyx_t_13; __Pyx_INCREF(__pyx_t_9); __pyx_t_10 = 0;
              __pyx_t_11 = NULL;
            } else {
              __pyx_t_10 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_13); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1163, __pyx_L25_error)
              __Pyx_GOTREF(__pyx_t_9);
              __pyx_t_11 = Py_TYPE(__pyx_t_9)->tp_iternext; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1163, __pyx_L25_error)
            }
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            for (;;) {
              if (likely(!__pyx_t_11)) {
                if (likely(PyList_CheckExact(__pyx_t_9))) {
                  if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_9)) break;
                  #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                  __pyx_t_13 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_10); __Pyx_INCREF(__pyx_t_13); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1163, __pyx_L25_error)
                  #else
                  __pyx_t_13 = PySequence_ITEM(__pyx_t_9, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1163, __pyx_L25_error)
                  __Pyx_GOTREF(__pyx_t_13);
                  #endif
                } else {
                  if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_9)) break;
                  #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                  __pyx_t_13 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_10); __Pyx_INCREF(__pyx_t_13); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1163, __pyx_L25_error)
                  #else
                  __pyx_t_13 = PySequence_ITEM(__pyx_t_9, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1163, __pyx_L25_error)
                  __Pyx_GOTREF(__pyx_t_13);
                  #endif
                }
              } else {
                __pyx_t_13 = __pyx_t_11(__pyx_t_9);
                if (unlikely(!__pyx_t_13)) {
                  PyObject* exc_type = PyErr_Occurred();
                  if (exc_type) {
                    if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                    else __PYX_ERR(0, 1163, __pyx_L25_error)
                  }
                  break;
                }
                __Pyx_GOTREF(__pyx_t_13);
              }
              __Pyx_XDECREF_SET(__pyx_8genexpr6__pyx_v_model, __pyx_t_13);
              __pyx_t_13 = 0;
              __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DebutLigne); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1163, __pyx_L25_error)
              __Pyx_GOTREF(__pyx_t_15);
              __pyx_t_16 = NULL;
              if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_15))) {
                __pyx_t_16 = PyMethod_GET_SELF(__pyx_t_15);
                if (likely(__pyx_t_16)) {
                  PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_15);
                  __Pyx_INCREF(__pyx_t_16);
                  __Pyx_INCREF(function);
                  __Pyx_DECREF_SET(__pyx_t_15, function);
                }
              }
              if (!__pyx_t_16) {
                __pyx_t_13 = __Pyx_PyObject_CallOneArg(__pyx_t_15, __pyx_v_Indent); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1163, __pyx_L25_error)
                __Pyx_GOTREF(__pyx_t_13);
              } else {
                #if CYTHON_FAST_PYCALL
                if (PyFunction_Check(__pyx_t_15)) {
                  PyObject *__pyx_temp[2] = {__pyx_t_16, __pyx_v_Indent};
                  __pyx_t_13 = __Pyx_PyFunction_FastCall(__pyx_t_15, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1163, __pyx_L25_error)
                  __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
                  __Pyx_GOTREF(__pyx_t_13);
                } else
                #endif
                #if CYTHON_FAST_PYCCALL
                if (__Pyx_PyFastCFunction_Check(__pyx_t_15)) {
                  PyObject *__pyx_temp[2] = {__pyx_t_16, __pyx_v_Indent};
                  __pyx_t_13 = __Pyx_PyCFunction_FastCall(__pyx_t_15, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1163, __pyx_L25_error)
                  __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
                  __Pyx_GOTREF(__pyx_t_13);
                } else
                #endif
                {
                  __pyx_t_17 = PyTuple_New(1+1); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1163, __pyx_L25_error)
                  __Pyx_GOTREF(__pyx_t_17);
                  __Pyx_GIVEREF(__pyx_t_16); PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_16); __pyx_t_16 = NULL;
                  __Pyx_INCREF(__pyx_v_Indent);
                  __Pyx_GIVEREF(__pyx_v_Indent);
                  PyTuple_SET_ITEM(__pyx_t_17, 0+1, __pyx_v_Indent);
                  __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_t_17, NULL); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1163, __pyx_L25_error)
                  __Pyx_GOTREF(__pyx_t_13);
                  __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
                }
              }
              __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
              __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_8genexpr6__pyx_v_model, __pyx_n_s_mainModel); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1163, __pyx_L25_error)
              __Pyx_GOTREF(__pyx_t_15);
              __pyx_t_17 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_trueName); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1163, __pyx_L25_error)
              __Pyx_GOTREF(__pyx_t_17);
              __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
              __pyx_t_15 = PyUnicode_Format(__pyx_kp_u_s_2, __pyx_t_17); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1163, __pyx_L25_error)
              __Pyx_GOTREF(__pyx_t_15);
              __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
              __pyx_t_17 = PyNumber_Add(__pyx_t_13, __pyx_t_15); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1163, __pyx_L25_error)
              __Pyx_GOTREF(__pyx_t_17);
              __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
              __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
              if (unlikely(__Pyx_ListComp_Append(__pyx_t_14, (PyObject*)__pyx_t_17))) __PYX_ERR(0, 1163, __pyx_L25_error)
              __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
            }
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_XDECREF(__pyx_8genexpr6__pyx_v_model); __pyx_8genexpr6__pyx_v_model = 0;
            goto __pyx_L28_exit_scope;
            __pyx_L25_error:;
            __Pyx_XDECREF(__pyx_8genexpr6__pyx_v_model); __pyx_8genexpr6__pyx_v_model = 0;
            goto __pyx_L11_except_error;
            __pyx_L28_exit_scope:;
          } /* exit inner scope */
          __Pyx_XDECREF_SET(__pyx_v_lst, ((PyObject*)__pyx_t_14));
          __pyx_t_14 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L10_exception_handled;
        }
        __pyx_L11_except_error:;

        /* "metaphor/monal/lcode/codewriter.py":1160
 *     def GetTrueModelList(self, Indent=1):
 *         try:
 *             try:             # <<<<<<<<<<<<<<
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.trueName for model in self.NetSource.models]
 *             except:
 */
        __Pyx_XGIVEREF(__pyx_t_4);
        __Pyx_XGIVEREF(__pyx_t_5);
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
        goto __pyx_L3_error;
        __pyx_L10_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_4);
        __Pyx_XGIVEREF(__pyx_t_5);
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
        __pyx_L14_try_end:;
      }

      /* "metaphor/monal/lcode/codewriter.py":1159
 * 
 *     def GetTrueModelList(self, Indent=1):
 *         try:             # <<<<<<<<<<<<<<
 *             try:
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.trueName for model in self.NetSource.models]
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
    __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
    __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
    __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
    __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
    __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
    __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1164
 *             except:
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.trueName for model in self.NetSource.models]
 *         except AttributeError:             # <<<<<<<<<<<<<<
 *             lst = ['"_"']
 *         return ",\n".join(lst)
 */
    __pyx_t_18 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
    if (__pyx_t_18) {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTrueModelList", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_12, &__pyx_t_8, &__pyx_t_7) < 0) __PYX_ERR(0, 1164, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_GOTREF(__pyx_t_7);

      /* "metaphor/monal/lcode/codewriter.py":1165
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.trueName for model in self.NetSource.models]
 *         except AttributeError:
 *             lst = ['"_"']             # <<<<<<<<<<<<<<
 *         return ",\n".join(lst)
 * 
 */
      __pyx_t_14 = PyList_New(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1165, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_INCREF(__pyx_kp_u__39);
      __Pyx_GIVEREF(__pyx_kp_u__39);
      PyList_SET_ITEM(__pyx_t_14, 0, __pyx_kp_u__39);
      __Pyx_XDECREF_SET(__pyx_v_lst, ((PyObject*)__pyx_t_14));
      __pyx_t_14 = 0;
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      goto __pyx_L4_exception_handled;
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1159
 * 
 *     def GetTrueModelList(self, Indent=1):
 *         try:             # <<<<<<<<<<<<<<
 *             try:
 *                 lst = [self.DebutLigne(Indent) + '"%s"'% model.trueName for model in self.NetSource.models]
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L4_exception_handled:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":1166
 *         except AttributeError:
 *             lst = ['"_"']
 *         return ",\n".join(lst)             # <<<<<<<<<<<<<<
 * 
 *     def Getsmiles(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_7 = PyUnicode_Join(__pyx_kp_u__36, __pyx_v_lst); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1166, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __pyx_r = __pyx_t_7;
  __pyx_t_7 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1158
 *         return ",\n".join(lst)
 * 
 *     def GetTrueModelList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         try:
 *             try:
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_12);
  __Pyx_XDECREF(__pyx_t_13);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_XDECREF(__pyx_t_16);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTrueModelList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_8genexpr5__pyx_v_model);
  __Pyx_XDECREF(__pyx_8genexpr6__pyx_v_model);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1168
 *         return ",\n".join(lst)
 * 
 *     def Getsmiles(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.NetSource.smiles
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_209Getsmiles(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_209Getsmiles = {"Getsmiles", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_209Getsmiles, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_209Getsmiles(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("Getsmiles (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "Getsmiles") < 0)) __PYX_ERR(0, 1168, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("Getsmiles", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1168, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getsmiles", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_208Getsmiles(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_208Getsmiles(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  __Pyx_RefNannySetupContext("Getsmiles", 0);

  /* "metaphor/monal/lcode/codewriter.py":1169
 * 
 *     def Getsmiles(self, Indent=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return self.NetSource.smiles
 *         except:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1170
 *     def Getsmiles(self, Indent=0):
 *         try:
 *             return self.NetSource.smiles             # <<<<<<<<<<<<<<
 *         except:
 *             return ""
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1170, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_smiles); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1170, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L7_try_return;

      /* "metaphor/monal/lcode/codewriter.py":1169
 * 
 *     def Getsmiles(self, Indent=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return self.NetSource.smiles
 *         except:
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1171
 *         try:
 *             return self.NetSource.smiles
 *         except:             # <<<<<<<<<<<<<<
 *             return ""
 * 
 */
    /*except:*/ {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getsmiles", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_6) < 0) __PYX_ERR(0, 1171, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_6);

      /* "metaphor/monal/lcode/codewriter.py":1172
 *             return self.NetSource.smiles
 *         except:
 *             return ""             # <<<<<<<<<<<<<<
 * 
 *     def Getmodelname(self, Indent=0):
 */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_kp_u_);
      __pyx_r = __pyx_kp_u_;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      goto __pyx_L6_except_return;
    }
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1169
 * 
 *     def Getsmiles(self, Indent=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return self.NetSource.smiles
 *         except:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":1168
 *         return ",\n".join(lst)
 * 
 *     def Getsmiles(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.NetSource.smiles
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getsmiles", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1174
 *             return ""
 * 
 *     def Getmodelname(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return nonASCIICharsConvert(self.NetSource.trueName)
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_211Getmodelname(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_211Getmodelname = {"Getmodelname", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_211Getmodelname, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_211Getmodelname(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("Getmodelname (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "Getmodelname") < 0)) __PYX_ERR(0, 1174, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("Getmodelname", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1174, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getmodelname", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_210Getmodelname(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_210Getmodelname(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("Getmodelname", 0);

  /* "metaphor/monal/lcode/codewriter.py":1175
 * 
 *     def Getmodelname(self, Indent=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return nonASCIICharsConvert(self.NetSource.trueName)
 *             #return CCharOnlys(self.NetSource.trueName)
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1176
 *     def Getmodelname(self, Indent=0):
 *         try:
 *             return nonASCIICharsConvert(self.NetSource.trueName)             # <<<<<<<<<<<<<<
 *             #return CCharOnlys(self.NetSource.trueName)
 *         except:
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_nonASCIICharsConvert); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1176, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1176, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_trueName); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1176, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = NULL;
      if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
        __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
        if (likely(__pyx_t_6)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_6);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_5, function);
        }
      }
      if (!__pyx_t_6) {
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1176, __pyx_L3_error)
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_GOTREF(__pyx_t_4);
      } else {
        #if CYTHON_FAST_PYCALL
        if (PyFunction_Check(__pyx_t_5)) {
          PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_7};
          __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1176, __pyx_L3_error)
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        } else
        #endif
        #if CYTHON_FAST_PYCCALL
        if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
          PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_7};
          __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1176, __pyx_L3_error)
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        } else
        #endif
        {
          __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1176, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
          __Pyx_GIVEREF(__pyx_t_7);
          PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_7);
          __pyx_t_7 = 0;
          __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1176, __pyx_L3_error)
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L7_try_return;

      /* "metaphor/monal/lcode/codewriter.py":1175
 * 
 *     def Getmodelname(self, Indent=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return nonASCIICharsConvert(self.NetSource.trueName)
 *             #return CCharOnlys(self.NetSource.trueName)
 */
    }
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
    __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1178
 *             return nonASCIICharsConvert(self.NetSource.trueName)
 *             #return CCharOnlys(self.NetSource.trueName)
 *         except:             # <<<<<<<<<<<<<<
 *             return ""
 * 
 */
    /*except:*/ {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getmodelname", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_8) < 0) __PYX_ERR(0, 1178, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_8);

      /* "metaphor/monal/lcode/codewriter.py":1179
 *             #return CCharOnlys(self.NetSource.trueName)
 *         except:
 *             return ""             # <<<<<<<<<<<<<<
 * 
 *     def GetsmilesList(self, Indent=1):
 */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_kp_u_);
      __pyx_r = __pyx_kp_u_;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      goto __pyx_L6_except_return;
    }
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1175
 * 
 *     def Getmodelname(self, Indent=0):
 *         try:             # <<<<<<<<<<<<<<
 *             return nonASCIICharsConvert(self.NetSource.trueName)
 *             #return CCharOnlys(self.NetSource.trueName)
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
  }

  /* "metaphor/monal/lcode/codewriter.py":1174
 *             return ""
 * 
 *     def Getmodelname(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return nonASCIICharsConvert(self.NetSource.trueName)
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getmodelname", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1181
 *             return ""
 * 
 *     def GetsmilesList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         try:
 *             if hasattr(self.NetSource.models[0], "smiles"):
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_213GetsmilesList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_213GetsmilesList = {"GetsmilesList", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_213GetsmilesList, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_213GetsmilesList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetsmilesList (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_1));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetsmilesList") < 0)) __PYX_ERR(0, 1181, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetsmilesList", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1181, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetsmilesList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_212GetsmilesList(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_212GetsmilesList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_Indent) {
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_8genexpr7__pyx_v_model = NULL;
  PyObject *__pyx_8genexpr8__pyx_v_model = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  int __pyx_t_6;
  int __pyx_t_7;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  Py_ssize_t __pyx_t_12;
  PyObject *(*__pyx_t_13)(PyObject *);
  PyObject *__pyx_t_14 = NULL;
  PyObject *__pyx_t_15 = NULL;
  PyObject *__pyx_t_16 = NULL;
  PyObject *__pyx_t_17 = NULL;
  PyObject *__pyx_t_18 = NULL;
  PyObject *__pyx_t_19 = NULL;
  __Pyx_RefNannySetupContext("GetsmilesList", 0);

  /* "metaphor/monal/lcode/codewriter.py":1182
 * 
 *     def GetsmilesList(self, Indent=1):
 *         try:             # <<<<<<<<<<<<<<
 *             if hasattr(self.NetSource.models[0], "smiles"):
 *                 try:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "metaphor/monal/lcode/codewriter.py":1183
 *     def GetsmilesList(self, Indent=1):
 *         try:
 *             if hasattr(self.NetSource.models[0], "smiles"):             # <<<<<<<<<<<<<<
 *                 try:
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.smiles for model in self.NetSource.models]
 */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1183, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_models); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1183, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_5, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1183, __pyx_L3_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_6 = __Pyx_HasAttr(__pyx_t_4, __pyx_n_u_smiles); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 1183, __pyx_L3_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_7 = (__pyx_t_6 != 0);
      if (__pyx_t_7) {

        /* "metaphor/monal/lcode/codewriter.py":1184
 *         try:
 *             if hasattr(self.NetSource.models[0], "smiles"):
 *                 try:             # <<<<<<<<<<<<<<
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.smiles for model in self.NetSource.models]
 *                 except:
 */
        {
          __Pyx_PyThreadState_declare
          __Pyx_PyThreadState_assign
          __Pyx_ExceptionSave(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
          __Pyx_XGOTREF(__pyx_t_8);
          __Pyx_XGOTREF(__pyx_t_9);
          __Pyx_XGOTREF(__pyx_t_10);
          /*try:*/ {

            /* "metaphor/monal/lcode/codewriter.py":1185
 *             if hasattr(self.NetSource.models[0], "smiles"):
 *                 try:
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.smiles for model in self.NetSource.models]             # <<<<<<<<<<<<<<
 *                 except:
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.smiles for model in self.NetSource.models]
 */
            { /* enter inner scope */
              __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1185, __pyx_L18_error)
              __Pyx_GOTREF(__pyx_t_4);
              __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1185, __pyx_L18_error)
              __Pyx_GOTREF(__pyx_t_5);
              __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_models); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1185, __pyx_L18_error)
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              if (likely(PyList_CheckExact(__pyx_t_11)) || PyTuple_CheckExact(__pyx_t_11)) {
                __pyx_t_5 = __pyx_t_11; __Pyx_INCREF(__pyx_t_5); __pyx_t_12 = 0;
                __pyx_t_13 = NULL;
              } else {
                __pyx_t_12 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_11); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1185, __pyx_L18_error)
                __Pyx_GOTREF(__pyx_t_5);
                __pyx_t_13 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1185, __pyx_L18_error)
              }
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              for (;;) {
                if (likely(!__pyx_t_13)) {
                  if (likely(PyList_CheckExact(__pyx_t_5))) {
                    if (__pyx_t_12 >= PyList_GET_SIZE(__pyx_t_5)) break;
                    #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                    __pyx_t_11 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_12); __Pyx_INCREF(__pyx_t_11); __pyx_t_12++; if (unlikely(0 < 0)) __PYX_ERR(0, 1185, __pyx_L18_error)
                    #else
                    __pyx_t_11 = PySequence_ITEM(__pyx_t_5, __pyx_t_12); __pyx_t_12++; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1185, __pyx_L18_error)
                    __Pyx_GOTREF(__pyx_t_11);
                    #endif
                  } else {
                    if (__pyx_t_12 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
                    #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                    __pyx_t_11 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_12); __Pyx_INCREF(__pyx_t_11); __pyx_t_12++; if (unlikely(0 < 0)) __PYX_ERR(0, 1185, __pyx_L18_error)
                    #else
                    __pyx_t_11 = PySequence_ITEM(__pyx_t_5, __pyx_t_12); __pyx_t_12++; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1185, __pyx_L18_error)
                    __Pyx_GOTREF(__pyx_t_11);
                    #endif
                  }
                } else {
                  __pyx_t_11 = __pyx_t_13(__pyx_t_5);
                  if (unlikely(!__pyx_t_11)) {
                    PyObject* exc_type = PyErr_Occurred();
                    if (exc_type) {
                      if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                      else __PYX_ERR(0, 1185, __pyx_L18_error)
                    }
                    break;
                  }
                  __Pyx_GOTREF(__pyx_t_11);
                }
                __Pyx_XDECREF_SET(__pyx_8genexpr7__pyx_v_model, __pyx_t_11);
                __pyx_t_11 = 0;
                __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DebutLigne); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1185, __pyx_L18_error)
                __Pyx_GOTREF(__pyx_t_14);
                __pyx_t_15 = NULL;
                if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_14))) {
                  __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_14);
                  if (likely(__pyx_t_15)) {
                    PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14);
                    __Pyx_INCREF(__pyx_t_15);
                    __Pyx_INCREF(function);
                    __Pyx_DECREF_SET(__pyx_t_14, function);
                  }
                }
                if (!__pyx_t_15) {
                  __pyx_t_11 = __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_v_Indent); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1185, __pyx_L18_error)
                  __Pyx_GOTREF(__pyx_t_11);
                } else {
                  #if CYTHON_FAST_PYCALL
                  if (PyFunction_Check(__pyx_t_14)) {
                    PyObject *__pyx_temp[2] = {__pyx_t_15, __pyx_v_Indent};
                    __pyx_t_11 = __Pyx_PyFunction_FastCall(__pyx_t_14, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1185, __pyx_L18_error)
                    __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
                    __Pyx_GOTREF(__pyx_t_11);
                  } else
                  #endif
                  #if CYTHON_FAST_PYCCALL
                  if (__Pyx_PyFastCFunction_Check(__pyx_t_14)) {
                    PyObject *__pyx_temp[2] = {__pyx_t_15, __pyx_v_Indent};
                    __pyx_t_11 = __Pyx_PyCFunction_FastCall(__pyx_t_14, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1185, __pyx_L18_error)
                    __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
                    __Pyx_GOTREF(__pyx_t_11);
                  } else
                  #endif
                  {
                    __pyx_t_16 = PyTuple_New(1+1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1185, __pyx_L18_error)
                    __Pyx_GOTREF(__pyx_t_16);
                    __Pyx_GIVEREF(__pyx_t_15); PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_15); __pyx_t_15 = NULL;
                    __Pyx_INCREF(__pyx_v_Indent);
                    __Pyx_GIVEREF(__pyx_v_Indent);
                    PyTuple_SET_ITEM(__pyx_t_16, 0+1, __pyx_v_Indent);
                    __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_16, NULL); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1185, __pyx_L18_error)
                    __Pyx_GOTREF(__pyx_t_11);
                    __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                  }
                }
                __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
                __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_8genexpr7__pyx_v_model, __pyx_n_s_smiles); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1185, __pyx_L18_error)
                __Pyx_GOTREF(__pyx_t_14);
                __pyx_t_16 = PyUnicode_Format(__pyx_kp_u_s_2, __pyx_t_14); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1185, __pyx_L18_error)
                __Pyx_GOTREF(__pyx_t_16);
                __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
                __pyx_t_14 = PyNumber_Add(__pyx_t_11, __pyx_t_16); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1185, __pyx_L18_error)
                __Pyx_GOTREF(__pyx_t_14);
                __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
                __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_14))) __PYX_ERR(0, 1185, __pyx_L18_error)
                __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
              }
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              __Pyx_XDECREF(__pyx_8genexpr7__pyx_v_model); __pyx_8genexpr7__pyx_v_model = 0;
              goto __pyx_L21_exit_scope;
              __pyx_L18_error:;
              __Pyx_XDECREF(__pyx_8genexpr7__pyx_v_model); __pyx_8genexpr7__pyx_v_model = 0;
              goto __pyx_L10_error;
              __pyx_L21_exit_scope:;
            } /* exit inner scope */
            __pyx_v_lst = ((PyObject*)__pyx_t_4);
            __pyx_t_4 = 0;

            /* "metaphor/monal/lcode/codewriter.py":1184
 *         try:
 *             if hasattr(self.NetSource.models[0], "smiles"):
 *                 try:             # <<<<<<<<<<<<<<
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.smiles for model in self.NetSource.models]
 *                 except:
 */
          }
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L15_try_end;
          __pyx_L10_error:;
          __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

          /* "metaphor/monal/lcode/codewriter.py":1186
 *                 try:
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.smiles for model in self.NetSource.models]
 *                 except:             # <<<<<<<<<<<<<<
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.smiles for model in self.NetSource.models]
 *                 return ",\n".join(lst)
 */
          /*except:*/ {
            __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetsmilesList", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_14) < 0) __PYX_ERR(0, 1186, __pyx_L12_except_error)
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_GOTREF(__pyx_t_14);

            /* "metaphor/monal/lcode/codewriter.py":1187
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.smiles for model in self.NetSource.models]
 *                 except:
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.smiles for model in self.NetSource.models]             # <<<<<<<<<<<<<<
 *                 return ",\n".join(lst)
 *         except:
 */
            { /* enter inner scope */
              __pyx_t_16 = PyList_New(0); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1187, __pyx_L26_error)
              __Pyx_GOTREF(__pyx_t_16);
              __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1187, __pyx_L26_error)
              __Pyx_GOTREF(__pyx_t_11);
              __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_models); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1187, __pyx_L26_error)
              __Pyx_GOTREF(__pyx_t_15);
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              if (likely(PyList_CheckExact(__pyx_t_15)) || PyTuple_CheckExact(__pyx_t_15)) {
                __pyx_t_11 = __pyx_t_15; __Pyx_INCREF(__pyx_t_11); __pyx_t_12 = 0;
                __pyx_t_13 = NULL;
              } else {
                __pyx_t_12 = -1; __pyx_t_11 = PyObject_GetIter(__pyx_t_15); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1187, __pyx_L26_error)
                __Pyx_GOTREF(__pyx_t_11);
                __pyx_t_13 = Py_TYPE(__pyx_t_11)->tp_iternext; if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1187, __pyx_L26_error)
              }
              __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
              for (;;) {
                if (likely(!__pyx_t_13)) {
                  if (likely(PyList_CheckExact(__pyx_t_11))) {
                    if (__pyx_t_12 >= PyList_GET_SIZE(__pyx_t_11)) break;
                    #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                    __pyx_t_15 = PyList_GET_ITEM(__pyx_t_11, __pyx_t_12); __Pyx_INCREF(__pyx_t_15); __pyx_t_12++; if (unlikely(0 < 0)) __PYX_ERR(0, 1187, __pyx_L26_error)
                    #else
                    __pyx_t_15 = PySequence_ITEM(__pyx_t_11, __pyx_t_12); __pyx_t_12++; if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1187, __pyx_L26_error)
                    __Pyx_GOTREF(__pyx_t_15);
                    #endif
                  } else {
                    if (__pyx_t_12 >= PyTuple_GET_SIZE(__pyx_t_11)) break;
                    #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                    __pyx_t_15 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_12); __Pyx_INCREF(__pyx_t_15); __pyx_t_12++; if (unlikely(0 < 0)) __PYX_ERR(0, 1187, __pyx_L26_error)
                    #else
                    __pyx_t_15 = PySequence_ITEM(__pyx_t_11, __pyx_t_12); __pyx_t_12++; if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1187, __pyx_L26_error)
                    __Pyx_GOTREF(__pyx_t_15);
                    #endif
                  }
                } else {
                  __pyx_t_15 = __pyx_t_13(__pyx_t_11);
                  if (unlikely(!__pyx_t_15)) {
                    PyObject* exc_type = PyErr_Occurred();
                    if (exc_type) {
                      if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                      else __PYX_ERR(0, 1187, __pyx_L26_error)
                    }
                    break;
                  }
                  __Pyx_GOTREF(__pyx_t_15);
                }
                __Pyx_XDECREF_SET(__pyx_8genexpr8__pyx_v_model, __pyx_t_15);
                __pyx_t_15 = 0;
                __pyx_t_17 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_DebutLigne); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1187, __pyx_L26_error)
                __Pyx_GOTREF(__pyx_t_17);
                __pyx_t_18 = NULL;
                if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_17))) {
                  __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_17);
                  if (likely(__pyx_t_18)) {
                    PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_17);
                    __Pyx_INCREF(__pyx_t_18);
                    __Pyx_INCREF(function);
                    __Pyx_DECREF_SET(__pyx_t_17, function);
                  }
                }
                if (!__pyx_t_18) {
                  __pyx_t_15 = __Pyx_PyObject_CallOneArg(__pyx_t_17, __pyx_v_Indent); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1187, __pyx_L26_error)
                  __Pyx_GOTREF(__pyx_t_15);
                } else {
                  #if CYTHON_FAST_PYCALL
                  if (PyFunction_Check(__pyx_t_17)) {
                    PyObject *__pyx_temp[2] = {__pyx_t_18, __pyx_v_Indent};
                    __pyx_t_15 = __Pyx_PyFunction_FastCall(__pyx_t_17, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1187, __pyx_L26_error)
                    __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
                    __Pyx_GOTREF(__pyx_t_15);
                  } else
                  #endif
                  #if CYTHON_FAST_PYCCALL
                  if (__Pyx_PyFastCFunction_Check(__pyx_t_17)) {
                    PyObject *__pyx_temp[2] = {__pyx_t_18, __pyx_v_Indent};
                    __pyx_t_15 = __Pyx_PyCFunction_FastCall(__pyx_t_17, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1187, __pyx_L26_error)
                    __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
                    __Pyx_GOTREF(__pyx_t_15);
                  } else
                  #endif
                  {
                    __pyx_t_19 = PyTuple_New(1+1); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 1187, __pyx_L26_error)
                    __Pyx_GOTREF(__pyx_t_19);
                    __Pyx_GIVEREF(__pyx_t_18); PyTuple_SET_ITEM(__pyx_t_19, 0, __pyx_t_18); __pyx_t_18 = NULL;
                    __Pyx_INCREF(__pyx_v_Indent);
                    __Pyx_GIVEREF(__pyx_v_Indent);
                    PyTuple_SET_ITEM(__pyx_t_19, 0+1, __pyx_v_Indent);
                    __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_17, __pyx_t_19, NULL); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1187, __pyx_L26_error)
                    __Pyx_GOTREF(__pyx_t_15);
                    __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
                  }
                }
                __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
                __pyx_t_17 = __Pyx_PyObject_GetAttrStr(__pyx_8genexpr8__pyx_v_model, __pyx_n_s_mainModel); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1187, __pyx_L26_error)
                __Pyx_GOTREF(__pyx_t_17);
                __pyx_t_19 = __Pyx_PyObject_GetAttrStr(__pyx_t_17, __pyx_n_s_smiles); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 1187, __pyx_L26_error)
                __Pyx_GOTREF(__pyx_t_19);
                __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
                __pyx_t_17 = PyUnicode_Format(__pyx_kp_u_s_2, __pyx_t_19); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1187, __pyx_L26_error)
                __Pyx_GOTREF(__pyx_t_17);
                __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
                __pyx_t_19 = PyNumber_Add(__pyx_t_15, __pyx_t_17); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 1187, __pyx_L26_error)
                __Pyx_GOTREF(__pyx_t_19);
                __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
                __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
                if (unlikely(__Pyx_ListComp_Append(__pyx_t_16, (PyObject*)__pyx_t_19))) __PYX_ERR(0, 1187, __pyx_L26_error)
                __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
              }
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_XDECREF(__pyx_8genexpr8__pyx_v_model); __pyx_8genexpr8__pyx_v_model = 0;
              goto __pyx_L29_exit_scope;
              __pyx_L26_error:;
              __Pyx_XDECREF(__pyx_8genexpr8__pyx_v_model); __pyx_8genexpr8__pyx_v_model = 0;
              goto __pyx_L12_except_error;
              __pyx_L29_exit_scope:;
            } /* exit inner scope */
            __Pyx_XDECREF_SET(__pyx_v_lst, ((PyObject*)__pyx_t_16));
            __pyx_t_16 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            goto __pyx_L11_exception_handled;
          }
          __pyx_L12_except_error:;

          /* "metaphor/monal/lcode/codewriter.py":1184
 *         try:
 *             if hasattr(self.NetSource.models[0], "smiles"):
 *                 try:             # <<<<<<<<<<<<<<
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.smiles for model in self.NetSource.models]
 *                 except:
 */
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          goto __pyx_L3_error;
          __pyx_L11_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_10);
          __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
          __pyx_L15_try_end:;
        }

        /* "metaphor/monal/lcode/codewriter.py":1188
 *                 except:
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.smiles for model in self.NetSource.models]
 *                 return ",\n".join(lst)             # <<<<<<<<<<<<<<
 *         except:
 *             return ",\n".join(['"_"'])
 */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_14 = PyUnicode_Join(__pyx_kp_u__36, __pyx_v_lst); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1188, __pyx_L3_error)
        __Pyx_GOTREF(__pyx_t_14);
        __pyx_r = __pyx_t_14;
        __pyx_t_14 = 0;
        goto __pyx_L7_try_return;

        /* "metaphor/monal/lcode/codewriter.py":1183
 *     def GetsmilesList(self, Indent=1):
 *         try:
 *             if hasattr(self.NetSource.models[0], "smiles"):             # <<<<<<<<<<<<<<
 *                 try:
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.smiles for model in self.NetSource.models]
 */
      }

      /* "metaphor/monal/lcode/codewriter.py":1182
 * 
 *     def GetsmilesList(self, Indent=1):
 *         try:             # <<<<<<<<<<<<<<
 *             if hasattr(self.NetSource.models[0], "smiles"):
 *                 try:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;
    __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0;
    __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
    __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
    __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0;
    __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
    __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1189
 *                     lst = [self.DebutLigne(Indent) + '"%s"'% model.mainModel.smiles for model in self.NetSource.models]
 *                 return ",\n".join(lst)
 *         except:             # <<<<<<<<<<<<<<
 *             return ",\n".join(['"_"'])
 *         return ""
 */
    /*except:*/ {
      __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetsmilesList", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_14, &__pyx_t_5, &__pyx_t_4) < 0) __PYX_ERR(0, 1189, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_14);
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_4);

      /* "metaphor/monal/lcode/codewriter.py":1190
 *                 return ",\n".join(lst)
 *         except:
 *             return ",\n".join(['"_"'])             # <<<<<<<<<<<<<<
 *         return ""
 * 
 */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_16 = PyList_New(1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1190, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_16);
      __Pyx_INCREF(__pyx_kp_u__39);
      __Pyx_GIVEREF(__pyx_kp_u__39);
      PyList_SET_ITEM(__pyx_t_16, 0, __pyx_kp_u__39);
      __pyx_t_11 = PyUnicode_Join(__pyx_kp_u__36, __pyx_t_16); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1190, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
      __pyx_r = __pyx_t_11;
      __pyx_t_11 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
      goto __pyx_L6_except_return;
    }
    __pyx_L5_except_error:;

    /* "metaphor/monal/lcode/codewriter.py":1182
 * 
 *     def GetsmilesList(self, Indent=1):
 *         try:             # <<<<<<<<<<<<<<
 *             if hasattr(self.NetSource.models[0], "smiles"):
 *                 try:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L7_try_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L6_except_return:;
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L0;
    __pyx_L8_try_end:;
  }

  /* "metaphor/monal/lcode/codewriter.py":1191
 *         except:
 *             return ",\n".join(['"_"'])
 *         return ""             # <<<<<<<<<<<<<<
 * 
 *     def GetDitectorStr(self, garb=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_);
  __pyx_r = __pyx_kp_u_;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1181
 *             return ""
 * 
 *     def GetsmilesList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         try:
 *             if hasattr(self.NetSource.models[0], "smiles"):
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_14);
  __Pyx_XDECREF(__pyx_t_15);
  __Pyx_XDECREF(__pyx_t_16);
  __Pyx_XDECREF(__pyx_t_17);
  __Pyx_XDECREF(__pyx_t_18);
  __Pyx_XDECREF(__pyx_t_19);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetsmilesList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_8genexpr7__pyx_v_model);
  __Pyx_XDECREF(__pyx_8genexpr8__pyx_v_model);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1193
 *         return ""
 * 
 *     def GetDitectorStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         modulo = 32
 *         lst = []
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_215GetDitectorStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_215GetDitectorStr = {"GetDitectorStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_215GetDitectorStr, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_215GetDitectorStr(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_garb = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetDitectorStr (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_garb,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_garb);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetDitectorStr") < 0)) __PYX_ERR(0, 1193, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_garb = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetDitectorStr", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1193, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDitectorStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_214GetDitectorStr(__pyx_self, __pyx_v_self, __pyx_v_garb);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_214GetDitectorStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_garb) {
  PyObject *__pyx_v_modulo = NULL;
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_v_N = NULL;
  PyObject *__pyx_v_start = NULL;
  PyObject *__pyx_v_Q = NULL;
  PyObject *__pyx_v_lst2 = NULL;
  PyObject *__pyx_v_i = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  Py_ssize_t __pyx_t_6;
  PyObject *(*__pyx_t_7)(PyObject *);
  int __pyx_t_8;
  __Pyx_RefNannySetupContext("GetDitectorStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1194
 * 
 *     def GetDitectorStr(self, garb=0):
 *         modulo = 32             # <<<<<<<<<<<<<<
 *         lst = []
 *         N = self.NetSource.modelCount
 */
  __Pyx_INCREF(__pyx_int_32);
  __pyx_v_modulo = __pyx_int_32;

  /* "metaphor/monal/lcode/codewriter.py":1195
 *     def GetDitectorStr(self, garb=0):
 *         modulo = 32
 *         lst = []             # <<<<<<<<<<<<<<
 *         N = self.NetSource.modelCount
 *         start = 0
 */
  __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1195, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_lst = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1196
 *         modulo = 32
 *         lst = []
 *         N = self.NetSource.modelCount             # <<<<<<<<<<<<<<
 *         start = 0
 *         Q = N
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1196, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_modelCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1196, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_v_N = __pyx_t_2;
  __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1197
 *         lst = []
 *         N = self.NetSource.modelCount
 *         start = 0             # <<<<<<<<<<<<<<
 *         Q = N
 *         while Q > start:
 */
  __Pyx_INCREF(__pyx_int_0);
  __pyx_v_start = __pyx_int_0;

  /* "metaphor/monal/lcode/codewriter.py":1198
 *         N = self.NetSource.modelCount
 *         start = 0
 *         Q = N             # <<<<<<<<<<<<<<
 *         while Q > start:
 *             lst2 = []
 */
  __Pyx_INCREF(__pyx_v_N);
  __pyx_v_Q = __pyx_v_N;

  /* "metaphor/monal/lcode/codewriter.py":1199
 *         start = 0
 *         Q = N
 *         while Q > start:             # <<<<<<<<<<<<<<
 *             lst2 = []
 *             for i in range(start, min(start + modulo, Q)):
 */
  while (1) {
    __pyx_t_2 = PyObject_RichCompare(__pyx_v_Q, __pyx_v_start, Py_GT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1199, __pyx_L1_error)
    __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1199, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (!__pyx_t_3) break;

    /* "metaphor/monal/lcode/codewriter.py":1200
 *         Q = N
 *         while Q > start:
 *             lst2 = []             # <<<<<<<<<<<<<<
 *             for i in range(start, min(start + modulo, Q)):
 *                 lst2.append(str(i))
 */
    __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1200, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_XDECREF_SET(__pyx_v_lst2, ((PyObject*)__pyx_t_2));
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1201
 *         while Q > start:
 *             lst2 = []
 *             for i in range(start, min(start + modulo, Q)):             # <<<<<<<<<<<<<<
 *                 lst2.append(str(i))
 *             lst.append(",".join(lst2))
 */
    __Pyx_INCREF(__pyx_v_Q);
    __pyx_t_2 = __pyx_v_Q;
    __pyx_t_1 = PyNumber_Add(__pyx_v_start, __pyx_v_modulo); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1201, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_5 = PyObject_RichCompare(__pyx_t_2, __pyx_t_1, Py_LT); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1201, __pyx_L1_error)
    __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1201, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (__pyx_t_3) {
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_4 = __pyx_t_2;
    } else {
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_4 = __pyx_t_1;
    }
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1201, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_INCREF(__pyx_v_start);
    __Pyx_GIVEREF(__pyx_v_start);
    PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_start);
    __Pyx_INCREF(__pyx_t_4);
    __Pyx_GIVEREF(__pyx_t_4);
    PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_range, __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1201, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (likely(PyList_CheckExact(__pyx_t_4)) || PyTuple_CheckExact(__pyx_t_4)) {
      __pyx_t_2 = __pyx_t_4; __Pyx_INCREF(__pyx_t_2); __pyx_t_6 = 0;
      __pyx_t_7 = NULL;
    } else {
      __pyx_t_6 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1201, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_7 = Py_TYPE(__pyx_t_2)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1201, __pyx_L1_error)
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    for (;;) {
      if (likely(!__pyx_t_7)) {
        if (likely(PyList_CheckExact(__pyx_t_2))) {
          if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1201, __pyx_L1_error)
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1201, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_4);
          #endif
        } else {
          if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1201, __pyx_L1_error)
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1201, __pyx_L1_error)
          __Pyx_GOTREF(__pyx_t_4);
          #endif
        }
      } else {
        __pyx_t_4 = __pyx_t_7(__pyx_t_2);
        if (unlikely(!__pyx_t_4)) {
          PyObject* exc_type = PyErr_Occurred();
          if (exc_type) {
            if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
            else __PYX_ERR(0, 1201, __pyx_L1_error)
          }
          break;
        }
        __Pyx_GOTREF(__pyx_t_4);
      }
      __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_4);
      __pyx_t_4 = 0;

      /* "metaphor/monal/lcode/codewriter.py":1202
 *             lst2 = []
 *             for i in range(start, min(start + modulo, Q)):
 *                 lst2.append(str(i))             # <<<<<<<<<<<<<<
 *             lst.append(",".join(lst2))
 *             start += modulo
 */
      __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_v_i); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1202, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_8 = __Pyx_PyList_Append(__pyx_v_lst2, __pyx_t_4); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1202, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "metaphor/monal/lcode/codewriter.py":1201
 *         while Q > start:
 *             lst2 = []
 *             for i in range(start, min(start + modulo, Q)):             # <<<<<<<<<<<<<<
 *                 lst2.append(str(i))
 *             lst.append(",".join(lst2))
 */
    }
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1203
 *             for i in range(start, min(start + modulo, Q)):
 *                 lst2.append(str(i))
 *             lst.append(",".join(lst2))             # <<<<<<<<<<<<<<
 *             start += modulo
 *         return "{\n%s}"%  ",\n".join(lst)
 */
    __pyx_t_2 = PyUnicode_Join(__pyx_kp_u__2, __pyx_v_lst2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1203, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_8 = __Pyx_PyList_Append(__pyx_v_lst, __pyx_t_2); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1203, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1204
 *                 lst2.append(str(i))
 *             lst.append(",".join(lst2))
 *             start += modulo             # <<<<<<<<<<<<<<
 *         return "{\n%s}"%  ",\n".join(lst)
 * 
 */
    __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_start, __pyx_v_modulo); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1204, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_start, __pyx_t_2);
    __pyx_t_2 = 0;
  }

  /* "metaphor/monal/lcode/codewriter.py":1205
 *             lst.append(",".join(lst2))
 *             start += modulo
 *         return "{\n%s}"%  ",\n".join(lst)             # <<<<<<<<<<<<<<
 * 
 *     def Get0TargetList(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_2 = PyUnicode_Join(__pyx_kp_u__36, __pyx_v_lst); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_4 = PyUnicode_Format(__pyx_kp_u_s_3, __pyx_t_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1205, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_r = __pyx_t_4;
  __pyx_t_4 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1193
 *         return ""
 * 
 *     def GetDitectorStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         modulo = 32
 *         lst = []
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetDitectorStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_modulo);
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_v_N);
  __Pyx_XDECREF(__pyx_v_start);
  __Pyx_XDECREF(__pyx_v_Q);
  __Pyx_XDECREF(__pyx_v_lst2);
  __Pyx_XDECREF(__pyx_v_i);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1207
 *         return "{\n%s}"%  ",\n".join(lst)
 * 
 *     def Get0TargetList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         lst = []
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_217Get0TargetList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_217Get0TargetList = {"Get0TargetList", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_217Get0TargetList, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_217Get0TargetList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("Get0TargetList (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "Get0TargetList") < 0)) __PYX_ERR(0, 1207, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("Get0TargetList", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1207, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Get0TargetList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_216Get0TargetList(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_216Get0TargetList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_v_source = NULL;
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_v_i = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  Py_ssize_t __pyx_t_3;
  PyObject *(*__pyx_t_4)(PyObject *);
  int __pyx_t_5;
  int __pyx_t_6;
  int __pyx_t_7;
  int __pyx_t_8;
  __Pyx_RefNannySetupContext("Get0TargetList", 0);

  /* "metaphor/monal/lcode/codewriter.py":1208
 * 
 *     def Get0TargetList(self, Indent=0):
 *         source = self.NetSource             # <<<<<<<<<<<<<<
 *         lst = []
 *         for i in range(source.modelCount):
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1208, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_source = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1209
 *     def Get0TargetList(self, Indent=0):
 *         source = self.NetSource
 *         lst = []             # <<<<<<<<<<<<<<
 *         for i in range(source.modelCount):
 *             if i and not (i % 32):
 */
  __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1209, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_lst = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1210
 *         source = self.NetSource
 *         lst = []
 *         for i in range(source.modelCount):             # <<<<<<<<<<<<<<
 *             if i and not (i % 32):
 *                 lst.append("0\n")
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_modelCount); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1210, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_builtin_range, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1210, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (likely(PyList_CheckExact(__pyx_t_2)) || PyTuple_CheckExact(__pyx_t_2)) {
    __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0;
    __pyx_t_4 = NULL;
  } else {
    __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1210, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1210, __pyx_L1_error)
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  for (;;) {
    if (likely(!__pyx_t_4)) {
      if (likely(PyList_CheckExact(__pyx_t_1))) {
        if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break;
        #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 1210, __pyx_L1_error)
        #else
        __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1210, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        #endif
      } else {
        if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
        #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 1210, __pyx_L1_error)
        #else
        __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1210, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_2);
        #endif
      }
    } else {
      __pyx_t_2 = __pyx_t_4(__pyx_t_1);
      if (unlikely(!__pyx_t_2)) {
        PyObject* exc_type = PyErr_Occurred();
        if (exc_type) {
          if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
          else __PYX_ERR(0, 1210, __pyx_L1_error)
        }
        break;
      }
      __Pyx_GOTREF(__pyx_t_2);
    }
    __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1211
 *         lst = []
 *         for i in range(source.modelCount):
 *             if i and not (i % 32):             # <<<<<<<<<<<<<<
 *                 lst.append("0\n")
 *             else:
 */
    __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_i); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 1211, __pyx_L1_error)
    if (__pyx_t_6) {
    } else {
      __pyx_t_5 = __pyx_t_6;
      goto __pyx_L6_bool_binop_done;
    }
    __pyx_t_2 = __Pyx_PyInt_RemainderObjC(__pyx_v_i, __pyx_int_32, 32, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1211, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 1211, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    __pyx_t_7 = ((!__pyx_t_6) != 0);
    __pyx_t_5 = __pyx_t_7;
    __pyx_L6_bool_binop_done:;
    if (__pyx_t_5) {

      /* "metaphor/monal/lcode/codewriter.py":1212
 *         for i in range(source.modelCount):
 *             if i and not (i % 32):
 *                 lst.append("0\n")             # <<<<<<<<<<<<<<
 *             else:
 *                 lst.append("0")
 */
      __pyx_t_8 = __Pyx_PyList_Append(__pyx_v_lst, __pyx_kp_u_0_2); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1212, __pyx_L1_error)

      /* "metaphor/monal/lcode/codewriter.py":1211
 *         lst = []
 *         for i in range(source.modelCount):
 *             if i and not (i % 32):             # <<<<<<<<<<<<<<
 *                 lst.append("0\n")
 *             else:
 */
      goto __pyx_L5;
    }

    /* "metaphor/monal/lcode/codewriter.py":1214
 *                 lst.append("0\n")
 *             else:
 *                 lst.append("0")             # <<<<<<<<<<<<<<
 *         return "{\n%s}" % ",".join(lst)
 * 
 */
    /*else*/ {
      __pyx_t_8 = __Pyx_PyList_Append(__pyx_v_lst, __pyx_kp_u_0); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1214, __pyx_L1_error)
    }
    __pyx_L5:;

    /* "metaphor/monal/lcode/codewriter.py":1210
 *         source = self.NetSource
 *         lst = []
 *         for i in range(source.modelCount):             # <<<<<<<<<<<<<<
 *             if i and not (i % 32):
 *                 lst.append("0\n")
 */
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1215
 *             else:
 *                 lst.append("0")
 *         return "{\n%s}" % ",".join(lst)             # <<<<<<<<<<<<<<
 * 
 *     def GetTargetList(self, Indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyUnicode_Join(__pyx_kp_u__2, __pyx_v_lst); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1215, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = PyUnicode_Format(__pyx_kp_u_s_3, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1215, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_r = __pyx_t_2;
  __pyx_t_2 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1207
 *         return "{\n%s}"%  ",\n".join(lst)
 * 
 *     def Get0TargetList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         lst = []
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Get0TargetList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_source);
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_v_i);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1217
 *         return "{\n%s}" % ",".join(lst)
 * 
 *     def GetTargetList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if not hasattr(source, "targets"):
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_219GetTargetList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_219GetTargetList = {"GetTargetList", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_219GetTargetList, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_219GetTargetList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetTargetList (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetTargetList") < 0)) __PYX_ERR(0, 1217, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetTargetList", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1217, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTargetList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_218GetTargetList(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_218GetTargetList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_v_source = NULL;
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_v_st = NULL;
  PyObject *__pyx_8genexpr9__pyx_v_val = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  Py_ssize_t __pyx_t_6;
  PyObject *(*__pyx_t_7)(PyObject *);
  __Pyx_RefNannySetupContext("GetTargetList", 0);

  /* "metaphor/monal/lcode/codewriter.py":1218
 * 
 *     def GetTargetList(self, Indent=0):
 *         source = self.NetSource             # <<<<<<<<<<<<<<
 *         if not hasattr(source, "targets"):
 *             return "NULL"
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1218, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_source = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1219
 *     def GetTargetList(self, Indent=0):
 *         source = self.NetSource
 *         if not hasattr(source, "targets"):             # <<<<<<<<<<<<<<
 *             return "NULL"
 *         lst = ["%18.15g"%(val) for val in source.targets]
 */
  __pyx_t_2 = __Pyx_HasAttr(__pyx_v_source, __pyx_n_u_targets); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1219, __pyx_L1_error)
  __pyx_t_3 = ((!(__pyx_t_2 != 0)) != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":1220
 *         source = self.NetSource
 *         if not hasattr(source, "targets"):
 *             return "NULL"             # <<<<<<<<<<<<<<
 *         lst = ["%18.15g"%(val) for val in source.targets]
 *         st =  ",\n".join(lst)
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_n_u_NULL);
    __pyx_r = __pyx_n_u_NULL;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":1219
 *     def GetTargetList(self, Indent=0):
 *         source = self.NetSource
 *         if not hasattr(source, "targets"):             # <<<<<<<<<<<<<<
 *             return "NULL"
 *         lst = ["%18.15g"%(val) for val in source.targets]
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":1221
 *         if not hasattr(source, "targets"):
 *             return "NULL"
 *         lst = ["%18.15g"%(val) for val in source.targets]             # <<<<<<<<<<<<<<
 *         st =  ",\n".join(lst)
 *         return '{%s}'% st
 */
  { /* enter inner scope */
    __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1221, __pyx_L6_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_targets); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1221, __pyx_L6_error)
    __Pyx_GOTREF(__pyx_t_4);
    if (likely(PyList_CheckExact(__pyx_t_4)) || PyTuple_CheckExact(__pyx_t_4)) {
      __pyx_t_5 = __pyx_t_4; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
      __pyx_t_7 = NULL;
    } else {
      __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1221, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1221, __pyx_L6_error)
    }
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    for (;;) {
      if (likely(!__pyx_t_7)) {
        if (likely(PyList_CheckExact(__pyx_t_5))) {
          if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1221, __pyx_L6_error)
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1221, __pyx_L6_error)
          __Pyx_GOTREF(__pyx_t_4);
          #endif
        } else {
          if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1221, __pyx_L6_error)
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1221, __pyx_L6_error)
          __Pyx_GOTREF(__pyx_t_4);
          #endif
        }
      } else {
        __pyx_t_4 = __pyx_t_7(__pyx_t_5);
        if (unlikely(!__pyx_t_4)) {
          PyObject* exc_type = PyErr_Occurred();
          if (exc_type) {
            if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
            else __PYX_ERR(0, 1221, __pyx_L6_error)
          }
          break;
        }
        __Pyx_GOTREF(__pyx_t_4);
      }
      __Pyx_XDECREF_SET(__pyx_8genexpr9__pyx_v_val, __pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyUnicode_Format(__pyx_kp_u_18_15g, __pyx_8genexpr9__pyx_v_val); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1221, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(0, 1221, __pyx_L6_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_XDECREF(__pyx_8genexpr9__pyx_v_val); __pyx_8genexpr9__pyx_v_val = 0;
    goto __pyx_L9_exit_scope;
    __pyx_L6_error:;
    __Pyx_XDECREF(__pyx_8genexpr9__pyx_v_val); __pyx_8genexpr9__pyx_v_val = 0;
    goto __pyx_L1_error;
    __pyx_L9_exit_scope:;
  } /* exit inner scope */
  __pyx_v_lst = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1222
 *             return "NULL"
 *         lst = ["%18.15g"%(val) for val in source.targets]
 *         st =  ",\n".join(lst)             # <<<<<<<<<<<<<<
 *         return '{%s}'% st
 * 
 */
  __pyx_t_1 = PyUnicode_Join(__pyx_kp_u__36, __pyx_v_lst); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1222, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_st = ((PyObject*)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1223
 *         lst = ["%18.15g"%(val) for val in source.targets]
 *         st =  ",\n".join(lst)
 *         return '{%s}'% st             # <<<<<<<<<<<<<<
 * 
 *     #@timeit
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyUnicode_Format(__pyx_kp_u_s_4, __pyx_v_st); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1223, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1217
 *         return "{\n%s}" % ",".join(lst)
 * 
 *     def GetTargetList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if not hasattr(source, "targets"):
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetTargetList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_source);
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_v_st);
  __Pyx_XDECREF(__pyx_8genexpr9__pyx_v_val);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1226
 * 
 *     #@timeit
 *     def GetBiasBasedList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_221GetBiasBasedList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_221GetBiasBasedList = {"GetBiasBasedList", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_221GetBiasBasedList, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_221GetBiasBasedList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_Indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetBiasBasedList (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_Indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetBiasBasedList") < 0)) __PYX_ERR(0, 1226, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_Indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetBiasBasedList", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1226, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetBiasBasedList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_220GetBiasBasedList(__pyx_self, __pyx_v_self, __pyx_v_Indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_220GetBiasBasedList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_Indent) {
  PyObject *__pyx_v_source = NULL;
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_9genexpr10__pyx_v_val = NULL;
  PyObject *__pyx_9genexpr11__pyx_v_val = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  Py_ssize_t __pyx_t_6;
  PyObject *(*__pyx_t_7)(PyObject *);
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  __Pyx_RefNannySetupContext("GetBiasBasedList", 0);

  /* "metaphor/monal/lcode/codewriter.py":1227
 *     #@timeit
 *     def GetBiasBasedList(self, Indent=0):
 *         source = self.NetSource             # <<<<<<<<<<<<<<
 *         if hasattr(source, "biasBaseId"):
 *             lst = [str(val) for val in source.biasBaseId]
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1227, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_source = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1228
 *     def GetBiasBasedList(self, Indent=0):
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):
 */
  __pyx_t_2 = __Pyx_HasAttr(__pyx_v_source, __pyx_n_u_biasBaseId); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1228, __pyx_L1_error)
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":1229
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 *             lst = [str(val) for val in source.biasBaseId]             # <<<<<<<<<<<<<<
 *         elif hasattr(source, 'getBiasBased'):
 *             lst = [str(val) for val in source.getBiasBased()]
 */
    { /* enter inner scope */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1229, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_biasBaseId); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1229, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (likely(PyList_CheckExact(__pyx_t_4)) || PyTuple_CheckExact(__pyx_t_4)) {
        __pyx_t_5 = __pyx_t_4; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1229, __pyx_L6_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1229, __pyx_L6_error)
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      for (;;) {
        if (likely(!__pyx_t_7)) {
          if (likely(PyList_CheckExact(__pyx_t_5))) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_4 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1229, __pyx_L6_error)
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1229, __pyx_L6_error)
            __Pyx_GOTREF(__pyx_t_4);
            #endif
          } else {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1229, __pyx_L6_error)
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1229, __pyx_L6_error)
            __Pyx_GOTREF(__pyx_t_4);
            #endif
          }
        } else {
          __pyx_t_4 = __pyx_t_7(__pyx_t_5);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else __PYX_ERR(0, 1229, __pyx_L6_error)
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XDECREF_SET(__pyx_9genexpr10__pyx_v_val, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_9genexpr10__pyx_v_val); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1229, __pyx_L6_error)
        __Pyx_GOTREF(__pyx_t_4);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(0, 1229, __pyx_L6_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_9genexpr10__pyx_v_val); __pyx_9genexpr10__pyx_v_val = 0;
      goto __pyx_L9_exit_scope;
      __pyx_L6_error:;
      __Pyx_XDECREF(__pyx_9genexpr10__pyx_v_val); __pyx_9genexpr10__pyx_v_val = 0;
      goto __pyx_L1_error;
      __pyx_L9_exit_scope:;
    } /* exit inner scope */
    __pyx_v_lst = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1228
 *     def GetBiasBasedList(self, Indent=0):
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1230
 *         if hasattr(source, "biasBaseId"):
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.getBiasBased()]
 *         else:
 */
  __pyx_t_3 = __Pyx_HasAttr(__pyx_v_source, __pyx_n_u_getBiasBased); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1230, __pyx_L1_error)
  __pyx_t_2 = (__pyx_t_3 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":1231
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):
 *             lst = [str(val) for val in source.getBiasBased()]             # <<<<<<<<<<<<<<
 *         else:
 *             return ""
 */
    { /* enter inner scope */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1231, __pyx_L12_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_getBiasBased); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1231, __pyx_L12_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      if (__pyx_t_8) {
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1231, __pyx_L12_error)
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      } else {
        __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1231, __pyx_L12_error)
      }
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) {
        __pyx_t_4 = __pyx_t_5; __Pyx_INCREF(__pyx_t_4); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1231, __pyx_L12_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_7 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1231, __pyx_L12_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      for (;;) {
        if (likely(!__pyx_t_7)) {
          if (likely(PyList_CheckExact(__pyx_t_4))) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1231, __pyx_L12_error)
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1231, __pyx_L12_error)
            __Pyx_GOTREF(__pyx_t_5);
            #endif
          } else {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1231, __pyx_L12_error)
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1231, __pyx_L12_error)
            __Pyx_GOTREF(__pyx_t_5);
            #endif
          }
        } else {
          __pyx_t_5 = __pyx_t_7(__pyx_t_4);
          if (unlikely(!__pyx_t_5)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else __PYX_ERR(0, 1231, __pyx_L12_error)
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_5);
        }
        __Pyx_XDECREF_SET(__pyx_9genexpr11__pyx_v_val, __pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_9genexpr11__pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1231, __pyx_L12_error)
        __Pyx_GOTREF(__pyx_t_5);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_5))) __PYX_ERR(0, 1231, __pyx_L12_error)
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_9genexpr11__pyx_v_val); __pyx_9genexpr11__pyx_v_val = 0;
      goto __pyx_L15_exit_scope;
      __pyx_L12_error:;
      __Pyx_XDECREF(__pyx_9genexpr11__pyx_v_val); __pyx_9genexpr11__pyx_v_val = 0;
      goto __pyx_L1_error;
      __pyx_L15_exit_scope:;
    } /* exit inner scope */
    __pyx_v_lst = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1230
 *         if hasattr(source, "biasBaseId"):
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.getBiasBased()]
 *         else:
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1233
 *             lst = [str(val) for val in source.getBiasBased()]
 *         else:
 *             return ""             # <<<<<<<<<<<<<<
 *         return "{{{0}}}".format(", ".join(lst))
 * 
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_kp_u_);
    __pyx_r = __pyx_kp_u_;
    goto __pyx_L0;
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":1234
 *         else:
 *             return ""
 *         return "{{{0}}}".format(", ".join(lst))             # <<<<<<<<<<<<<<
 * 
 *     def Getbiasbasedcount(self, indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_kp_u_0_3, __pyx_n_s_format); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1234, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = PyUnicode_Join(__pyx_kp_u__40, __pyx_v_lst); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1234, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_8 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_4);
    if (likely(__pyx_t_8)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
      __Pyx_INCREF(__pyx_t_8);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_4, function);
    }
  }
  if (!__pyx_t_8) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1234, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_4)) {
      PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_5};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1234, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
      PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_5};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1234, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    } else
    #endif
    {
      __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1234, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
      __Pyx_GIVEREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_9, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1234, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1226
 * 
 *     #@timeit
 *     def GetBiasBasedList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetBiasBasedList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_source);
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_9genexpr10__pyx_v_val);
  __Pyx_XDECREF(__pyx_9genexpr11__pyx_v_val);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1236
 *         return "{{{0}}}".format(", ".join(lst))
 * 
 *     def Getbiasbasedcount(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_223Getbiasbasedcount(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_223Getbiasbasedcount = {"Getbiasbasedcount", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_223Getbiasbasedcount, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_223Getbiasbasedcount(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("Getbiasbasedcount (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "Getbiasbasedcount") < 0)) __PYX_ERR(0, 1236, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("Getbiasbasedcount", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1236, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getbiasbasedcount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_222Getbiasbasedcount(__pyx_self, __pyx_v_self, __pyx_v_indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_222Getbiasbasedcount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_indent) {
  PyObject *__pyx_v_source = NULL;
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_9genexpr12__pyx_v_val = NULL;
  PyObject *__pyx_9genexpr13__pyx_v_val = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  Py_ssize_t __pyx_t_6;
  PyObject *(*__pyx_t_7)(PyObject *);
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("Getbiasbasedcount", 0);

  /* "metaphor/monal/lcode/codewriter.py":1237
 * 
 *     def Getbiasbasedcount(self, indent=0):
 *         source = self.NetSource             # <<<<<<<<<<<<<<
 *         if hasattr(source, "biasBaseId"):
 *             lst = [str(val) for val in source.biasBaseId]
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1237, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_source = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1238
 *     def Getbiasbasedcount(self, indent=0):
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):
 */
  __pyx_t_2 = __Pyx_HasAttr(__pyx_v_source, __pyx_n_u_biasBaseId); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1238, __pyx_L1_error)
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":1239
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 *             lst = [str(val) for val in source.biasBaseId]             # <<<<<<<<<<<<<<
 *         elif hasattr(source, 'getBiasBased'):
 *             lst = [str(val) for val in source.getBiasBased()]
 */
    { /* enter inner scope */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1239, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_biasBaseId); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1239, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (likely(PyList_CheckExact(__pyx_t_4)) || PyTuple_CheckExact(__pyx_t_4)) {
        __pyx_t_5 = __pyx_t_4; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1239, __pyx_L6_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1239, __pyx_L6_error)
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      for (;;) {
        if (likely(!__pyx_t_7)) {
          if (likely(PyList_CheckExact(__pyx_t_5))) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_4 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1239, __pyx_L6_error)
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1239, __pyx_L6_error)
            __Pyx_GOTREF(__pyx_t_4);
            #endif
          } else {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1239, __pyx_L6_error)
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1239, __pyx_L6_error)
            __Pyx_GOTREF(__pyx_t_4);
            #endif
          }
        } else {
          __pyx_t_4 = __pyx_t_7(__pyx_t_5);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else __PYX_ERR(0, 1239, __pyx_L6_error)
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XDECREF_SET(__pyx_9genexpr12__pyx_v_val, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_9genexpr12__pyx_v_val); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1239, __pyx_L6_error)
        __Pyx_GOTREF(__pyx_t_4);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(0, 1239, __pyx_L6_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_9genexpr12__pyx_v_val); __pyx_9genexpr12__pyx_v_val = 0;
      goto __pyx_L9_exit_scope;
      __pyx_L6_error:;
      __Pyx_XDECREF(__pyx_9genexpr12__pyx_v_val); __pyx_9genexpr12__pyx_v_val = 0;
      goto __pyx_L1_error;
      __pyx_L9_exit_scope:;
    } /* exit inner scope */
    __pyx_v_lst = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1238
 *     def Getbiasbasedcount(self, indent=0):
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1240
 *         if hasattr(source, "biasBaseId"):
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.getBiasBased()]
 *         else:
 */
  __pyx_t_3 = __Pyx_HasAttr(__pyx_v_source, __pyx_n_u_getBiasBased); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1240, __pyx_L1_error)
  __pyx_t_2 = (__pyx_t_3 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":1241
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):
 *             lst = [str(val) for val in source.getBiasBased()]             # <<<<<<<<<<<<<<
 *         else:
 *             return 0
 */
    { /* enter inner scope */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1241, __pyx_L12_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_getBiasBased); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1241, __pyx_L12_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      if (__pyx_t_8) {
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1241, __pyx_L12_error)
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      } else {
        __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1241, __pyx_L12_error)
      }
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) {
        __pyx_t_4 = __pyx_t_5; __Pyx_INCREF(__pyx_t_4); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1241, __pyx_L12_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_7 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1241, __pyx_L12_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      for (;;) {
        if (likely(!__pyx_t_7)) {
          if (likely(PyList_CheckExact(__pyx_t_4))) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1241, __pyx_L12_error)
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1241, __pyx_L12_error)
            __Pyx_GOTREF(__pyx_t_5);
            #endif
          } else {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1241, __pyx_L12_error)
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1241, __pyx_L12_error)
            __Pyx_GOTREF(__pyx_t_5);
            #endif
          }
        } else {
          __pyx_t_5 = __pyx_t_7(__pyx_t_4);
          if (unlikely(!__pyx_t_5)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else __PYX_ERR(0, 1241, __pyx_L12_error)
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_5);
        }
        __Pyx_XDECREF_SET(__pyx_9genexpr13__pyx_v_val, __pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_9genexpr13__pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1241, __pyx_L12_error)
        __Pyx_GOTREF(__pyx_t_5);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_5))) __PYX_ERR(0, 1241, __pyx_L12_error)
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_9genexpr13__pyx_v_val); __pyx_9genexpr13__pyx_v_val = 0;
      goto __pyx_L15_exit_scope;
      __pyx_L12_error:;
      __Pyx_XDECREF(__pyx_9genexpr13__pyx_v_val); __pyx_9genexpr13__pyx_v_val = 0;
      goto __pyx_L1_error;
      __pyx_L15_exit_scope:;
    } /* exit inner scope */
    __pyx_v_lst = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1240
 *         if hasattr(source, "biasBaseId"):
 *             lst = [str(val) for val in source.biasBaseId]
 *         elif hasattr(source, 'getBiasBased'):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.getBiasBased()]
 *         else:
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1243
 *             lst = [str(val) for val in source.getBiasBased()]
 *         else:
 *             return 0             # <<<<<<<<<<<<<<
 *         return len(lst)
 * 
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_0);
    __pyx_r = __pyx_int_0;
    goto __pyx_L0;
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":1244
 *         else:
 *             return 0
 *         return len(lst)             # <<<<<<<<<<<<<<
 * 
 *     def GetOutputSynList(self, indent=0):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_6 = PyList_GET_SIZE(__pyx_v_lst); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1244, __pyx_L1_error)
  __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1244, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1236
 *         return "{{{0}}}".format(", ".join(lst))
 * 
 *     def Getbiasbasedcount(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getbiasbasedcount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_source);
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_9genexpr12__pyx_v_val);
  __Pyx_XDECREF(__pyx_9genexpr13__pyx_v_val);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1246
 *         return len(lst)
 * 
 *     def GetOutputSynList(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_225GetOutputSynList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_225GetOutputSynList = {"GetOutputSynList", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_225GetOutputSynList, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_225GetOutputSynList(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("GetOutputSynList (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "GetOutputSynList") < 0)) __PYX_ERR(0, 1246, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("GetOutputSynList", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1246, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOutputSynList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_224GetOutputSynList(__pyx_self, __pyx_v_self, __pyx_v_indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_224GetOutputSynList(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_indent) {
  PyObject *__pyx_v_source = NULL;
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_v_st = NULL;
  PyObject *__pyx_9genexpr14__pyx_v_val = NULL;
  PyObject *__pyx_9genexpr15__pyx_v_val = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  Py_ssize_t __pyx_t_6;
  PyObject *(*__pyx_t_7)(PyObject *);
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("GetOutputSynList", 0);

  /* "metaphor/monal/lcode/codewriter.py":1247
 * 
 *     def GetOutputSynList(self, indent=0):
 *         source = self.NetSource             # <<<<<<<<<<<<<<
 *         if hasattr(source, "outputLinkId"):
 *             lst = [str(val) for val in source.outputLinkId]
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1247, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_source = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1248
 *     def GetOutputSynList(self, indent=0):
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.outputLinkId]
 *             st =  ", ".join(lst)
 */
  __pyx_t_2 = __Pyx_HasAttr(__pyx_v_source, __pyx_n_u_outputLinkId); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1248, __pyx_L1_error)
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":1249
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 *             lst = [str(val) for val in source.outputLinkId]             # <<<<<<<<<<<<<<
 *             st =  ", ".join(lst)
 *         elif hasattr(source, 'getOutputLinks'):
 */
    { /* enter inner scope */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1249, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_outputLinkId); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1249, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (likely(PyList_CheckExact(__pyx_t_4)) || PyTuple_CheckExact(__pyx_t_4)) {
        __pyx_t_5 = __pyx_t_4; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1249, __pyx_L6_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1249, __pyx_L6_error)
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      for (;;) {
        if (likely(!__pyx_t_7)) {
          if (likely(PyList_CheckExact(__pyx_t_5))) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_4 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1249, __pyx_L6_error)
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1249, __pyx_L6_error)
            __Pyx_GOTREF(__pyx_t_4);
            #endif
          } else {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1249, __pyx_L6_error)
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1249, __pyx_L6_error)
            __Pyx_GOTREF(__pyx_t_4);
            #endif
          }
        } else {
          __pyx_t_4 = __pyx_t_7(__pyx_t_5);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else __PYX_ERR(0, 1249, __pyx_L6_error)
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XDECREF_SET(__pyx_9genexpr14__pyx_v_val, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_9genexpr14__pyx_v_val); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1249, __pyx_L6_error)
        __Pyx_GOTREF(__pyx_t_4);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(0, 1249, __pyx_L6_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_9genexpr14__pyx_v_val); __pyx_9genexpr14__pyx_v_val = 0;
      goto __pyx_L9_exit_scope;
      __pyx_L6_error:;
      __Pyx_XDECREF(__pyx_9genexpr14__pyx_v_val); __pyx_9genexpr14__pyx_v_val = 0;
      goto __pyx_L1_error;
      __pyx_L9_exit_scope:;
    } /* exit inner scope */
    __pyx_v_lst = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1250
 *         if hasattr(source, "outputLinkId"):
 *             lst = [str(val) for val in source.outputLinkId]
 *             st =  ", ".join(lst)             # <<<<<<<<<<<<<<
 *         elif hasattr(source, 'getOutputLinks'):
 *             lst = [str(val) for val in source.getOutputLinks()]
 */
    __pyx_t_1 = PyUnicode_Join(__pyx_kp_u__40, __pyx_v_lst); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1250, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_st = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1248
 *     def GetOutputSynList(self, indent=0):
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.outputLinkId]
 *             st =  ", ".join(lst)
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1251
 *             lst = [str(val) for val in source.outputLinkId]
 *             st =  ", ".join(lst)
 *         elif hasattr(source, 'getOutputLinks'):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.getOutputLinks()]
 *             st =  ", ".join(lst)
 */
  __pyx_t_3 = __Pyx_HasAttr(__pyx_v_source, __pyx_n_u_getOutputLinks); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1251, __pyx_L1_error)
  __pyx_t_2 = (__pyx_t_3 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":1252
 *             st =  ", ".join(lst)
 *         elif hasattr(source, 'getOutputLinks'):
 *             lst = [str(val) for val in source.getOutputLinks()]             # <<<<<<<<<<<<<<
 *             st =  ", ".join(lst)
 *         else:
 */
    { /* enter inner scope */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1252, __pyx_L12_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_getOutputLinks); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1252, __pyx_L12_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      if (__pyx_t_8) {
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1252, __pyx_L12_error)
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      } else {
        __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1252, __pyx_L12_error)
      }
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) {
        __pyx_t_4 = __pyx_t_5; __Pyx_INCREF(__pyx_t_4); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1252, __pyx_L12_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_7 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1252, __pyx_L12_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      for (;;) {
        if (likely(!__pyx_t_7)) {
          if (likely(PyList_CheckExact(__pyx_t_4))) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1252, __pyx_L12_error)
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1252, __pyx_L12_error)
            __Pyx_GOTREF(__pyx_t_5);
            #endif
          } else {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1252, __pyx_L12_error)
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1252, __pyx_L12_error)
            __Pyx_GOTREF(__pyx_t_5);
            #endif
          }
        } else {
          __pyx_t_5 = __pyx_t_7(__pyx_t_4);
          if (unlikely(!__pyx_t_5)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else __PYX_ERR(0, 1252, __pyx_L12_error)
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_5);
        }
        __Pyx_XDECREF_SET(__pyx_9genexpr15__pyx_v_val, __pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyUnicode_Type)), __pyx_9genexpr15__pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1252, __pyx_L12_error)
        __Pyx_GOTREF(__pyx_t_5);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_5))) __PYX_ERR(0, 1252, __pyx_L12_error)
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_9genexpr15__pyx_v_val); __pyx_9genexpr15__pyx_v_val = 0;
      goto __pyx_L15_exit_scope;
      __pyx_L12_error:;
      __Pyx_XDECREF(__pyx_9genexpr15__pyx_v_val); __pyx_9genexpr15__pyx_v_val = 0;
      goto __pyx_L1_error;
      __pyx_L15_exit_scope:;
    } /* exit inner scope */
    __pyx_v_lst = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1253
 *         elif hasattr(source, 'getOutputLinks'):
 *             lst = [str(val) for val in source.getOutputLinks()]
 *             st =  ", ".join(lst)             # <<<<<<<<<<<<<<
 *         else:
 *             return ""
 */
    __pyx_t_1 = PyUnicode_Join(__pyx_kp_u__40, __pyx_v_lst); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1253, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
    __pyx_v_st = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1251
 *             lst = [str(val) for val in source.outputLinkId]
 *             st =  ", ".join(lst)
 *         elif hasattr(source, 'getOutputLinks'):             # <<<<<<<<<<<<<<
 *             lst = [str(val) for val in source.getOutputLinks()]
 *             st =  ", ".join(lst)
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1255
 *             st =  ", ".join(lst)
 *         else:
 *             return ""             # <<<<<<<<<<<<<<
 *         return "{{{0}}}".format(st)
 * 
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_kp_u_);
    __pyx_r = __pyx_kp_u_;
    goto __pyx_L0;
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":1256
 *         else:
 *             return ""
 *         return "{{{0}}}".format(st)             # <<<<<<<<<<<<<<
 * 
 * 
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_kp_u_0_3, __pyx_n_s_format); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1256, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
    __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
    if (likely(__pyx_t_5)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
      __Pyx_INCREF(__pyx_t_5);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_4, function);
    }
  }
  if (!__pyx_t_5) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_st); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1256, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_1);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_4)) {
      PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_st};
      __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1256, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
      PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_st};
      __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1256, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_GOTREF(__pyx_t_1);
    } else
    #endif
    {
      __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1256, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL;
      __Pyx_INCREF(__pyx_v_st);
      __Pyx_GIVEREF(__pyx_v_st);
      PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_v_st);
      __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1256, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1246
 *         return len(lst)
 * 
 *     def GetOutputSynList(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.GetOutputSynList", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_source);
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_v_st);
  __Pyx_XDECREF(__pyx_9genexpr14__pyx_v_val);
  __Pyx_XDECREF(__pyx_9genexpr15__pyx_v_val);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1265
 * #         return '{%s}'% st
 * 
 *     def Getoutputsyncount(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_227Getoutputsyncount(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_227Getoutputsyncount = {"Getoutputsyncount", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_227Getoutputsyncount, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_227Getoutputsyncount(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_self = 0;
  CYTHON_UNUSED PyObject *__pyx_v_indent = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("Getoutputsyncount (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indent,0};
    PyObject* values[2] = {0,0};
    values[1] = ((PyObject *)((PyObject *)__pyx_int_0));
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_indent);
          if (value) { values[1] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "Getoutputsyncount") < 0)) __PYX_ERR(0, 1265, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_self = values[0];
    __pyx_v_indent = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("Getoutputsyncount", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1265, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getoutputsyncount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_226Getoutputsyncount(__pyx_self, __pyx_v_self, __pyx_v_indent);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_226Getoutputsyncount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_indent) {
  PyObject *__pyx_v_source = NULL;
  PyObject *__pyx_v_lst = NULL;
  PyObject *__pyx_9genexpr16__pyx_v_val = NULL;
  PyObject *__pyx_9genexpr17__pyx_v_val = NULL;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_t_2;
  int __pyx_t_3;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  Py_ssize_t __pyx_t_6;
  PyObject *(*__pyx_t_7)(PyObject *);
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("Getoutputsyncount", 0);

  /* "metaphor/monal/lcode/codewriter.py":1266
 * 
 *     def Getoutputsyncount(self, indent=0):
 *         source = self.NetSource             # <<<<<<<<<<<<<<
 *         if hasattr(source, "outputLinkId"):
 *             lst = ["%d"%(val) for val in source.outputLinkId]
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1266, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_v_source = __pyx_t_1;
  __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1267
 *     def Getoutputsyncount(self, indent=0):
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):             # <<<<<<<<<<<<<<
 *             lst = ["%d"%(val) for val in source.outputLinkId]
 *         elif hasattr(source, 'getOutputLinks'):
 */
  __pyx_t_2 = __Pyx_HasAttr(__pyx_v_source, __pyx_n_u_outputLinkId); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1267, __pyx_L1_error)
  __pyx_t_3 = (__pyx_t_2 != 0);
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":1268
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 *             lst = ["%d"%(val) for val in source.outputLinkId]             # <<<<<<<<<<<<<<
 *         elif hasattr(source, 'getOutputLinks'):
 *             lst = ["%d"%(val) for val in source.getOutputLinks()]
 */
    { /* enter inner scope */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1268, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_outputLinkId); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1268, __pyx_L6_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (likely(PyList_CheckExact(__pyx_t_4)) || PyTuple_CheckExact(__pyx_t_4)) {
        __pyx_t_5 = __pyx_t_4; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1268, __pyx_L6_error)
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1268, __pyx_L6_error)
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      for (;;) {
        if (likely(!__pyx_t_7)) {
          if (likely(PyList_CheckExact(__pyx_t_5))) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_4 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1268, __pyx_L6_error)
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1268, __pyx_L6_error)
            __Pyx_GOTREF(__pyx_t_4);
            #endif
          } else {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1268, __pyx_L6_error)
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1268, __pyx_L6_error)
            __Pyx_GOTREF(__pyx_t_4);
            #endif
          }
        } else {
          __pyx_t_4 = __pyx_t_7(__pyx_t_5);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else __PYX_ERR(0, 1268, __pyx_L6_error)
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XDECREF_SET(__pyx_9genexpr16__pyx_v_val, __pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyUnicode_Format(__pyx_kp_u_d, __pyx_9genexpr16__pyx_v_val); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1268, __pyx_L6_error)
        __Pyx_GOTREF(__pyx_t_4);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(0, 1268, __pyx_L6_error)
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_XDECREF(__pyx_9genexpr16__pyx_v_val); __pyx_9genexpr16__pyx_v_val = 0;
      goto __pyx_L9_exit_scope;
      __pyx_L6_error:;
      __Pyx_XDECREF(__pyx_9genexpr16__pyx_v_val); __pyx_9genexpr16__pyx_v_val = 0;
      goto __pyx_L1_error;
      __pyx_L9_exit_scope:;
    } /* exit inner scope */
    __pyx_v_lst = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1267
 *     def Getoutputsyncount(self, indent=0):
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):             # <<<<<<<<<<<<<<
 *             lst = ["%d"%(val) for val in source.outputLinkId]
 *         elif hasattr(source, 'getOutputLinks'):
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1269
 *         if hasattr(source, "outputLinkId"):
 *             lst = ["%d"%(val) for val in source.outputLinkId]
 *         elif hasattr(source, 'getOutputLinks'):             # <<<<<<<<<<<<<<
 *             lst = ["%d"%(val) for val in source.getOutputLinks()]
 *         else:
 */
  __pyx_t_3 = __Pyx_HasAttr(__pyx_v_source, __pyx_n_u_getOutputLinks); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1269, __pyx_L1_error)
  __pyx_t_2 = (__pyx_t_3 != 0);
  if (__pyx_t_2) {

    /* "metaphor/monal/lcode/codewriter.py":1270
 *             lst = ["%d"%(val) for val in source.outputLinkId]
 *         elif hasattr(source, 'getOutputLinks'):
 *             lst = ["%d"%(val) for val in source.getOutputLinks()]             # <<<<<<<<<<<<<<
 *         else:
 *             return 0
 */
    { /* enter inner scope */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1270, __pyx_L12_error)
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_getOutputLinks); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1270, __pyx_L12_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_8 = NULL;
      if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
        __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_4);
        if (likely(__pyx_t_8)) {
          PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_8);
          __Pyx_INCREF(function);
          __Pyx_DECREF_SET(__pyx_t_4, function);
        }
      }
      if (__pyx_t_8) {
        __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1270, __pyx_L12_error)
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      } else {
        __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1270, __pyx_L12_error)
      }
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) {
        __pyx_t_4 = __pyx_t_5; __Pyx_INCREF(__pyx_t_4); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1270, __pyx_L12_error)
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_7 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1270, __pyx_L12_error)
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      for (;;) {
        if (likely(!__pyx_t_7)) {
          if (likely(PyList_CheckExact(__pyx_t_4))) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1270, __pyx_L12_error)
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1270, __pyx_L12_error)
            __Pyx_GOTREF(__pyx_t_5);
            #endif
          } else {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
            __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 1270, __pyx_L12_error)
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1270, __pyx_L12_error)
            __Pyx_GOTREF(__pyx_t_5);
            #endif
          }
        } else {
          __pyx_t_5 = __pyx_t_7(__pyx_t_4);
          if (unlikely(!__pyx_t_5)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else __PYX_ERR(0, 1270, __pyx_L12_error)
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_5);
        }
        __Pyx_XDECREF_SET(__pyx_9genexpr17__pyx_v_val, __pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = PyUnicode_Format(__pyx_kp_u_d, __pyx_9genexpr17__pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1270, __pyx_L12_error)
        __Pyx_GOTREF(__pyx_t_5);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_5))) __PYX_ERR(0, 1270, __pyx_L12_error)
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF(__pyx_9genexpr17__pyx_v_val); __pyx_9genexpr17__pyx_v_val = 0;
      goto __pyx_L15_exit_scope;
      __pyx_L12_error:;
      __Pyx_XDECREF(__pyx_9genexpr17__pyx_v_val); __pyx_9genexpr17__pyx_v_val = 0;
      goto __pyx_L1_error;
      __pyx_L15_exit_scope:;
    } /* exit inner scope */
    __pyx_v_lst = ((PyObject*)__pyx_t_1);
    __pyx_t_1 = 0;

    /* "metaphor/monal/lcode/codewriter.py":1269
 *         if hasattr(source, "outputLinkId"):
 *             lst = ["%d"%(val) for val in source.outputLinkId]
 *         elif hasattr(source, 'getOutputLinks'):             # <<<<<<<<<<<<<<
 *             lst = ["%d"%(val) for val in source.getOutputLinks()]
 *         else:
 */
    goto __pyx_L3;
  }

  /* "metaphor/monal/lcode/codewriter.py":1272
 *             lst = ["%d"%(val) for val in source.getOutputLinks()]
 *         else:
 *             return 0             # <<<<<<<<<<<<<<
 *         return len(lst)
 * #         source = self.NetSource
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_0);
    __pyx_r = __pyx_int_0;
    goto __pyx_L0;
  }
  __pyx_L3:;

  /* "metaphor/monal/lcode/codewriter.py":1273
 *         else:
 *             return 0
 *         return len(lst)             # <<<<<<<<<<<<<<
 * #         source = self.NetSource
 * #         if not hasattr(source, "outputLinkId"):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_6 = PyList_GET_SIZE(__pyx_v_lst); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(0, 1273, __pyx_L1_error)
  __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1273, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1265
 * #         return '{%s}'% st
 * 
 *     def Getoutputsyncount(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.Getoutputsyncount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_source);
  __Pyx_XDECREF(__pyx_v_lst);
  __Pyx_XDECREF(__pyx_9genexpr16__pyx_v_val);
  __Pyx_XDECREF(__pyx_9genexpr17__pyx_v_val);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1279
 * #         return len(source.outputLinkId)
 * 
 *     def BracketOutDeclStr(self):             # <<<<<<<<<<<<<<
 *         if self.NetSource.outputCount == 1:
 *             return ""
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_229BracketOutDeclStr(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_229BracketOutDeclStr = {"BracketOutDeclStr", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_229BracketOutDeclStr, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_229BracketOutDeclStr(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("BracketOutDeclStr (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_228BracketOutDeclStr(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_228BracketOutDeclStr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_t_3;
  __Pyx_RefNannySetupContext("BracketOutDeclStr", 0);

  /* "metaphor/monal/lcode/codewriter.py":1280
 * 
 *     def BracketOutDeclStr(self):
 *         if self.NetSource.outputCount == 1:             # <<<<<<<<<<<<<<
 *             return ""
 *         return "[OUTPUTCOUNT]"
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1280, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_outputCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1280, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyInt_EqObjC(__pyx_t_2, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1280, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1280, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":1281
 *     def BracketOutDeclStr(self):
 *         if self.NetSource.outputCount == 1:
 *             return ""             # <<<<<<<<<<<<<<
 *         return "[OUTPUTCOUNT]"
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_kp_u_);
    __pyx_r = __pyx_kp_u_;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":1280
 * 
 *     def BracketOutDeclStr(self):
 *         if self.NetSource.outputCount == 1:             # <<<<<<<<<<<<<<
 *             return ""
 *         return "[OUTPUTCOUNT]"
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":1282
 *         if self.NetSource.outputCount == 1:
 *             return ""
 *         return "[OUTPUTCOUNT]"             # <<<<<<<<<<<<<<
 * 
 *     def BracketOut0Str(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_OUTPUTCOUNT);
  __pyx_r = __pyx_kp_u_OUTPUTCOUNT;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1279
 * #         return len(source.outputLinkId)
 * 
 *     def BracketOutDeclStr(self):             # <<<<<<<<<<<<<<
 *         if self.NetSource.outputCount == 1:
 *             return ""
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.BracketOutDeclStr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "metaphor/monal/lcode/codewriter.py":1284
 *         return "[OUTPUTCOUNT]"
 * 
 *     def BracketOut0Str(self):             # <<<<<<<<<<<<<<
 *         if self.NetSource.outputCount == 1:
 *             return ""
 */

/* Python wrapper */
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_231BracketOut0Str(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
static PyMethodDef __pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_231BracketOut0Str = {"BracketOut0Str", (PyCFunction)__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_231BracketOut0Str, METH_O, 0};
static PyObject *__pyx_pw_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_231BracketOut0Str(PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("BracketOut0Str (wrapper)", 0);
  __pyx_r = __pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_230BracketOut0Str(__pyx_self, ((PyObject *)__pyx_v_self));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_230BracketOut0Str(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_t_3;
  __Pyx_RefNannySetupContext("BracketOut0Str", 0);

  /* "metaphor/monal/lcode/codewriter.py":1285
 * 
 *     def BracketOut0Str(self):
 *         if self.NetSource.outputCount == 1:             # <<<<<<<<<<<<<<
 *             return ""
 *         return "[0]"
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_NetSource); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1285, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_outputCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1285, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyInt_EqObjC(__pyx_t_2, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1285, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1285, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (__pyx_t_3) {

    /* "metaphor/monal/lcode/codewriter.py":1286
 *     def BracketOut0Str(self):
 *         if self.NetSource.outputCount == 1:
 *             return ""             # <<<<<<<<<<<<<<
 *         return "[0]"
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_kp_u_);
    __pyx_r = __pyx_kp_u_;
    goto __pyx_L0;

    /* "metaphor/monal/lcode/codewriter.py":1285
 * 
 *     def BracketOut0Str(self):
 *         if self.NetSource.outputCount == 1:             # <<<<<<<<<<<<<<
 *             return ""
 *         return "[0]"
 */
  }

  /* "metaphor/monal/lcode/codewriter.py":1287
 *         if self.NetSource.outputCount == 1:
 *             return ""
 *         return "[0]"             # <<<<<<<<<<<<<<
 * 
 * # ============================================================= #
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_kp_u_0_4);
  __pyx_r = __pyx_kp_u_0_4;
  goto __pyx_L0;

  /* "metaphor/monal/lcode/codewriter.py":1284
 *         return "[OUTPUTCOUNT]"
 * 
 *     def BracketOut0Str(self):             # <<<<<<<<<<<<<<
 *         if self.NetSource.outputCount == 1:
 *             return ""
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_AddTraceback("metaphor.monal.lcode.codewriter.CodeWriterBase.BracketOut0Str", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyMethodDef __pyx_methods[] = {
  {0, 0, 0, 0}
};

#if PY_MAJOR_VERSION >= 3
#if CYTHON_PEP489_MULTI_PHASE_INIT
static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/
static int __pyx_pymod_exec_codewriter(PyObject* module); /*proto*/
static PyModuleDef_Slot __pyx_moduledef_slots[] = {
  {Py_mod_create, (void*)__pyx_pymod_create},
  {Py_mod_exec, (void*)__pyx_pymod_exec_codewriter},
  {0, NULL}
};
#endif

static struct PyModuleDef __pyx_moduledef = {
    PyModuleDef_HEAD_INIT,
    "codewriter",
    __pyx_k_Created_on_25_oct_2013_author_j, /* m_doc */
  #if CYTHON_PEP489_MULTI_PHASE_INIT
    0, /* m_size */
  #else
    -1, /* m_size */
  #endif
    __pyx_methods /* m_methods */,
  #if CYTHON_PEP489_MULTI_PHASE_INIT
    __pyx_moduledef_slots, /* m_slots */
  #else
    NULL, /* m_reload */
  #endif
    NULL, /* m_traverse */
    NULL, /* m_clear */
    NULL /* m_free */
};
#endif

static __Pyx_StringTabEntry __pyx_string_tab[] = {
  {&__pyx_n_s_, __pyx_k_, sizeof(__pyx_k_), 0, 0, 1, 1},
  {&__pyx_kp_u_, __pyx_k_, sizeof(__pyx_k_), 0, 1, 0, 0},
  {&__pyx_kp_u_0, __pyx_k_0, sizeof(__pyx_k_0), 0, 1, 0, 0},
  {&__pyx_kp_u_0Targetlist, __pyx_k_0Targetlist, sizeof(__pyx_k_0Targetlist), 0, 1, 0, 0},
  {&__pyx_kp_u_0_2, __pyx_k_0_2, sizeof(__pyx_k_0_2), 0, 1, 0, 0},
  {&__pyx_kp_u_0_3, __pyx_k_0_3, sizeof(__pyx_k_0_3), 0, 1, 0, 0},
  {&__pyx_kp_u_0_4, __pyx_k_0_4, sizeof(__pyx_k_0_4), 0, 1, 0, 0},
  {&__pyx_kp_u_18_15g, __pyx_k_18_15g, sizeof(__pyx_k_18_15g), 0, 1, 0, 0},
  {&__pyx_n_s_Affect, __pyx_k_Affect, sizeof(__pyx_k_Affect), 0, 0, 1, 1},
  {&__pyx_n_u_Affect, __pyx_k_Affect, sizeof(__pyx_k_Affect), 0, 1, 0, 1},
  {&__pyx_n_u_AllSynapses, __pyx_k_AllSynapses, sizeof(__pyx_k_AllSynapses), 0, 1, 0, 1},
  {&__pyx_n_s_AttributeError, __pyx_k_AttributeError, sizeof(__pyx_k_AttributeError), 0, 0, 1, 1},
  {&__pyx_n_s_BaseCount, __pyx_k_BaseCount, sizeof(__pyx_k_BaseCount), 0, 0, 1, 1},
  {&__pyx_n_u_Baselen, __pyx_k_Baselen, sizeof(__pyx_k_Baselen), 0, 1, 0, 1},
  {&__pyx_n_s_BaselenStr, __pyx_k_BaselenStr, sizeof(__pyx_k_BaselenStr), 0, 0, 1, 1},
  {&__pyx_n_u_BeginStr, __pyx_k_BeginStr, sizeof(__pyx_k_BeginStr), 0, 1, 0, 1},
  {&__pyx_n_s_BlocConstantes, __pyx_k_BlocConstantes, sizeof(__pyx_k_BlocConstantes), 0, 0, 1, 1},
  {&__pyx_n_s_BlocType, __pyx_k_BlocType, sizeof(__pyx_k_BlocType), 0, 0, 1, 1},
  {&__pyx_n_u_BracketOut0, __pyx_k_BracketOut0, sizeof(__pyx_k_BracketOut0), 0, 1, 0, 1},
  {&__pyx_n_s_BracketOut0Str, __pyx_k_BracketOut0Str, sizeof(__pyx_k_BracketOut0Str), 0, 0, 1, 1},
  {&__pyx_n_u_BracketOutDecl, __pyx_k_BracketOutDecl, sizeof(__pyx_k_BracketOutDecl), 0, 1, 0, 1},
  {&__pyx_n_s_BracketOutDeclStr, __pyx_k_BracketOutDeclStr, sizeof(__pyx_k_BracketOutDeclStr), 0, 0, 1, 1},
  {&__pyx_n_u_C, __pyx_k_C, sizeof(__pyx_k_C), 0, 1, 0, 1},
  {&__pyx_n_s_CC, __pyx_k_CC, sizeof(__pyx_k_CC), 0, 0, 1, 1},
  {&__pyx_n_u_CC, __pyx_k_CC, sizeof(__pyx_k_CC), 0, 1, 0, 1},
  {&__pyx_n_s_CCharOnlys, __pyx_k_CCharOnlys, sizeof(__pyx_k_CCharOnlys), 0, 0, 1, 1},
  {&__pyx_n_u_CFiles, __pyx_k_CFiles, sizeof(__pyx_k_CFiles), 0, 1, 0, 1},
  {&__pyx_n_s_CPrefix, __pyx_k_CPrefix, sizeof(__pyx_k_CPrefix), 0, 0, 1, 1},
  {&__pyx_n_s_CStr, __pyx_k_CStr, sizeof(__pyx_k_CStr), 0, 0, 1, 1},
  {&__pyx_n_s_ChaineCodeNeurone, __pyx_k_ChaineCodeNeurone, sizeof(__pyx_k_ChaineCodeNeurone), 0, 0, 1, 1},
  {&__pyx_n_s_ChaineEtat, __pyx_k_ChaineEtat, sizeof(__pyx_k_ChaineEtat), 0, 0, 1, 1},
  {&__pyx_n_s_ChaineSortieNeurone, __pyx_k_ChaineSortieNeurone, sizeof(__pyx_k_ChaineSortieNeurone), 0, 0, 1, 1},
  {&__pyx_n_s_CipherKey, __pyx_k_CipherKey, sizeof(__pyx_k_CipherKey), 0, 0, 1, 1},
  {&__pyx_n_s_CipherKey_2, __pyx_k_CipherKey_2, sizeof(__pyx_k_CipherKey_2), 0, 0, 1, 1},
  {&__pyx_n_u_CipherKey_2, __pyx_k_CipherKey_2, sizeof(__pyx_k_CipherKey_2), 0, 1, 0, 1},
  {&__pyx_n_s_ClientNum, __pyx_k_ClientNum, sizeof(__pyx_k_ClientNum), 0, 0, 1, 1},
  {&__pyx_n_s_ClientNum_2, __pyx_k_ClientNum_2, sizeof(__pyx_k_ClientNum_2), 0, 0, 1, 1},
  {&__pyx_n_u_ClientNum_2, __pyx_k_ClientNum_2, sizeof(__pyx_k_ClientNum_2), 0, 1, 0, 1},
  {&__pyx_n_s_CodeDebutInclus, __pyx_k_CodeDebutInclus, sizeof(__pyx_k_CodeDebutInclus), 0, 0, 1, 1},
  {&__pyx_n_s_CodeFichier, __pyx_k_CodeFichier, sizeof(__pyx_k_CodeFichier), 0, 0, 1, 1},
  {&__pyx_n_s_CodeFichierAvecTemplate, __pyx_k_CodeFichierAvecTemplate, sizeof(__pyx_k_CodeFichierAvecTemplate), 0, 0, 1, 1},
  {&__pyx_n_s_CodeFichierGradientInterne, __pyx_k_CodeFichierGradientInterne, sizeof(__pyx_k_CodeFichierGradientInterne), 0, 0, 1, 1},
  {&__pyx_n_s_CodeFichierTransfertInterne, __pyx_k_CodeFichierTransfertInterne, sizeof(__pyx_k_CodeFichierTransfertInterne), 0, 0, 1, 1},
  {&__pyx_n_s_CodeFichierTransfertLeverageInte, __pyx_k_CodeFichierTransfertLeverageInte, sizeof(__pyx_k_CodeFichierTransfertLeverageInte), 0, 0, 1, 1},
  {&__pyx_n_s_CodeFileName, __pyx_k_CodeFileName, sizeof(__pyx_k_CodeFileName), 0, 0, 1, 1},
  {&__pyx_n_s_CodeFinInclus, __pyx_k_CodeFinInclus, sizeof(__pyx_k_CodeFinInclus), 0, 0, 1, 1},
  {&__pyx_n_s_CodeFonctionTransfert, __pyx_k_CodeFonctionTransfert, sizeof(__pyx_k_CodeFonctionTransfert), 0, 0, 1, 1},
  {&__pyx_n_s_CodeFonctionTransfertAdv, __pyx_k_CodeFonctionTransfertAdv, sizeof(__pyx_k_CodeFonctionTransfertAdv), 0, 0, 1, 1},
  {&__pyx_n_s_CodeGradient, __pyx_k_CodeGradient, sizeof(__pyx_k_CodeGradient), 0, 0, 1, 1},
  {&__pyx_n_s_CodeNomEntree, __pyx_k_CodeNomEntree, sizeof(__pyx_k_CodeNomEntree), 0, 0, 1, 1},
  {&__pyx_n_s_CodeNomSortie, __pyx_k_CodeNomSortie, sizeof(__pyx_k_CodeNomSortie), 0, 0, 1, 1},
  {&__pyx_n_s_CodeProtoProcedure, __pyx_k_CodeProtoProcedure, sizeof(__pyx_k_CodeProtoProcedure), 0, 0, 1, 1},
  {&__pyx_n_s_CodeStr, __pyx_k_CodeStr, sizeof(__pyx_k_CodeStr), 0, 0, 1, 1},
  {&__pyx_n_u_CodeType, __pyx_k_CodeType, sizeof(__pyx_k_CodeType), 0, 1, 0, 1},
  {&__pyx_n_s_CodeWriterBase, __pyx_k_CodeWriterBase, sizeof(__pyx_k_CodeWriterBase), 0, 0, 1, 1},
  {&__pyx_n_s_iso885915_CodeWriterBase, __pyx_k_CodeWriterBase, sizeof(__pyx_k_CodeWriterBase), "iso-8859-15", 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_BaseCount, __pyx_k_CodeWriterBase_BaseCount, sizeof(__pyx_k_CodeWriterBase_BaseCount), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_BracketOut0Str, __pyx_k_CodeWriterBase_BracketOut0Str, sizeof(__pyx_k_CodeWriterBase_BracketOut0Str), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_BracketOutDeclStr, __pyx_k_CodeWriterBase_BracketOutDeclStr, sizeof(__pyx_k_CodeWriterBase_BracketOutDeclStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_CodeFichier, __pyx_k_CodeWriterBase_CodeFichier, sizeof(__pyx_k_CodeWriterBase_CodeFichier), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_CodeFichierAvecTe, __pyx_k_CodeWriterBase_CodeFichierAvecTe, sizeof(__pyx_k_CodeWriterBase_CodeFichierAvecTe), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_CodeFichierGradie, __pyx_k_CodeWriterBase_CodeFichierGradie, sizeof(__pyx_k_CodeWriterBase_CodeFichierGradie), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_CodeFichierTransf, __pyx_k_CodeWriterBase_CodeFichierTransf, sizeof(__pyx_k_CodeWriterBase_CodeFichierTransf), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_CodeFichierTransf_2, __pyx_k_CodeWriterBase_CodeFichierTransf_2, sizeof(__pyx_k_CodeWriterBase_CodeFichierTransf_2), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_CodeFileName, __pyx_k_CodeWriterBase_CodeFileName, sizeof(__pyx_k_CodeWriterBase_CodeFileName), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_CommentLine, __pyx_k_CodeWriterBase_CommentLine, sizeof(__pyx_k_CodeWriterBase_CommentLine), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_ConfigurationStr, __pyx_k_CodeWriterBase_ConfigurationStr, sizeof(__pyx_k_CodeWriterBase_ConfigurationStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_CurrentCodeFileNa, __pyx_k_CodeWriterBase_CurrentCodeFileNa, sizeof(__pyx_k_CodeWriterBase_CurrentCodeFileNa), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_DiviseEgal, __pyx_k_CodeWriterBase_DiviseEgal, sizeof(__pyx_k_CodeWriterBase_DiviseEgal), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_DoAffect, __pyx_k_CodeWriterBase_DoAffect, sizeof(__pyx_k_CodeWriterBase_DoAffect), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_DriverSource, __pyx_k_CodeWriterBase_DriverSource, sizeof(__pyx_k_CodeWriterBase_DriverSource), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_ExtractFileNameOn, __pyx_k_CodeWriterBase_ExtractFileNameOn, sizeof(__pyx_k_CodeWriterBase_ExtractFileNameOn), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_FileExt, __pyx_k_CodeWriterBase_FileExt, sizeof(__pyx_k_CodeWriterBase_FileExt), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_Get0TargetList, __pyx_k_CodeWriterBase_Get0TargetList, sizeof(__pyx_k_CodeWriterBase_Get0TargetList), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetAffect, __pyx_k_CodeWriterBase_GetAffect, sizeof(__pyx_k_CodeWriterBase_GetAffect), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetBeginStr, __pyx_k_CodeWriterBase_GetBeginStr, sizeof(__pyx_k_CodeWriterBase_GetBeginStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetBiasBasedList, __pyx_k_CodeWriterBase_GetBiasBasedList, sizeof(__pyx_k_CodeWriterBase_GetBiasBasedList), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetCodeStr, __pyx_k_CodeWriterBase_GetCodeStr, sizeof(__pyx_k_CodeWriterBase_GetCodeStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetCodeStrII, __pyx_k_CodeWriterBase_GetCodeStrII, sizeof(__pyx_k_CodeWriterBase_GetCodeStrII), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetCodeStrJI, __pyx_k_CodeWriterBase_GetCodeStrJI, sizeof(__pyx_k_CodeWriterBase_GetCodeStrJI), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetCodeType, __pyx_k_CodeWriterBase_GetCodeType, sizeof(__pyx_k_CodeWriterBase_GetCodeType), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetCommentCountSt, __pyx_k_CodeWriterBase_GetCommentCountSt, sizeof(__pyx_k_CodeWriterBase_GetCommentCountSt), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetComputerStr, __pyx_k_CodeWriterBase_GetComputerStr, sizeof(__pyx_k_CodeWriterBase_GetComputerStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetDataCount, __pyx_k_CodeWriterBase_GetDataCount, sizeof(__pyx_k_CodeWriterBase_GetDataCount), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetDataRecStr, __pyx_k_CodeWriterBase_GetDataRecStr, sizeof(__pyx_k_CodeWriterBase_GetDataRecStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetDateStr, __pyx_k_CodeWriterBase_GetDateStr, sizeof(__pyx_k_CodeWriterBase_GetDateStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetDecalIni, __pyx_k_CodeWriterBase_GetDecalIni, sizeof(__pyx_k_CodeWriterBase_GetDecalIni), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetDimensionStr, __pyx_k_CodeWriterBase_GetDimensionStr, sizeof(__pyx_k_CodeWriterBase_GetDimensionStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetDitectorStr, __pyx_k_CodeWriterBase_GetDitectorStr, sizeof(__pyx_k_CodeWriterBase_GetDitectorStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetEndStr, __pyx_k_CodeWriterBase_GetEndStr, sizeof(__pyx_k_CodeWriterBase_GetEndStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetFileNameStr, __pyx_k_CodeWriterBase_GetFileNameStr, sizeof(__pyx_k_CodeWriterBase_GetFileNameStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetHiddenStr, __pyx_k_CodeWriterBase_GetHiddenStr, sizeof(__pyx_k_CodeWriterBase_GetHiddenStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetInOutStr, __pyx_k_CodeWriterBase_GetInOutStr, sizeof(__pyx_k_CodeWriterBase_GetInOutStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetInputValues, __pyx_k_CodeWriterBase_GetInputValues, sizeof(__pyx_k_CodeWriterBase_GetInputValues), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetInputsStr, __pyx_k_CodeWriterBase_GetInputsStr, sizeof(__pyx_k_CodeWriterBase_GetInputsStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetJurComment, __pyx_k_CodeWriterBase_GetJurComment, sizeof(__pyx_k_CodeWriterBase_GetJurComment), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetLangMarkup, __pyx_k_CodeWriterBase_GetLangMarkup, sizeof(__pyx_k_CodeWriterBase_GetLangMarkup), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetLinearStr, __pyx_k_CodeWriterBase_GetLinearStr, sizeof(__pyx_k_CodeWriterBase_GetLinearStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetLongWeight, __pyx_k_CodeWriterBase_GetLongWeight, sizeof(__pyx_k_CodeWriterBase_GetLongWeight), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetMarkStr, __pyx_k_CodeWriterBase_GetMarkStr, sizeof(__pyx_k_CodeWriterBase_GetMarkStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetMarkdateStr, __pyx_k_CodeWriterBase_GetMarkdateStr, sizeof(__pyx_k_CodeWriterBase_GetMarkdateStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetMarkversionStr, __pyx_k_CodeWriterBase_GetMarkversionStr, sizeof(__pyx_k_CodeWriterBase_GetMarkversionStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetMatrixSource, __pyx_k_CodeWriterBase_GetMatrixSource, sizeof(__pyx_k_CodeWriterBase_GetMatrixSource), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetModelCount, __pyx_k_CodeWriterBase_GetModelCount, sizeof(__pyx_k_CodeWriterBase_GetModelCount), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetModelList, __pyx_k_CodeWriterBase_GetModelList, sizeof(__pyx_k_CodeWriterBase_GetModelList), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetMuStr, __pyx_k_CodeWriterBase_GetMuStr, sizeof(__pyx_k_CodeWriterBase_GetMuStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetNameStr, __pyx_k_CodeWriterBase_GetNameStr, sizeof(__pyx_k_CodeWriterBase_GetNameStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetNetworkKind, __pyx_k_CodeWriterBase_GetNetworkKind, sizeof(__pyx_k_CodeWriterBase_GetNetworkKind), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetNodeStr, __pyx_k_CodeWriterBase_GetNodeStr, sizeof(__pyx_k_CodeWriterBase_GetNodeStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetNumpyDir, __pyx_k_CodeWriterBase_GetNumpyDir, sizeof(__pyx_k_CodeWriterBase_GetNumpyDir), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetOrderStr, __pyx_k_CodeWriterBase_GetOrderStr, sizeof(__pyx_k_CodeWriterBase_GetOrderStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetOriginBaseStr, __pyx_k_CodeWriterBase_GetOriginBaseStr, sizeof(__pyx_k_CodeWriterBase_GetOriginBaseStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetOutputSynList, __pyx_k_CodeWriterBase_GetOutputSynList, sizeof(__pyx_k_CodeWriterBase_GetOutputSynList), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetOutputValues, __pyx_k_CodeWriterBase_GetOutputValues, sizeof(__pyx_k_CodeWriterBase_GetOutputValues), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetOutputsStr, __pyx_k_CodeWriterBase_GetOutputsStr, sizeof(__pyx_k_CodeWriterBase_GetOutputsStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetShortFileName, __pyx_k_CodeWriterBase_GetShortFileName, sizeof(__pyx_k_CodeWriterBase_GetShortFileName), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetStdDevStr, __pyx_k_CodeWriterBase_GetStdDevStr, sizeof(__pyx_k_CodeWriterBase_GetStdDevStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetStudentStr, __pyx_k_CodeWriterBase_GetStudentStr, sizeof(__pyx_k_CodeWriterBase_GetStudentStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetSynapsesStr, __pyx_k_CodeWriterBase_GetSynapsesStr, sizeof(__pyx_k_CodeWriterBase_GetSynapsesStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetTargetList, __pyx_k_CodeWriterBase_GetTargetList, sizeof(__pyx_k_CodeWriterBase_GetTargetList), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetTargetStr, __pyx_k_CodeWriterBase_GetTargetStr, sizeof(__pyx_k_CodeWriterBase_GetTargetStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetTextFromID, __pyx_k_CodeWriterBase_GetTextFromID, sizeof(__pyx_k_CodeWriterBase_GetTextFromID), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetTimeStr, __pyx_k_CodeWriterBase_GetTimeStr, sizeof(__pyx_k_CodeWriterBase_GetTimeStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetTrueModelList, __pyx_k_CodeWriterBase_GetTrueModelList, sizeof(__pyx_k_CodeWriterBase_GetTrueModelList), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetTrueNameStr, __pyx_k_CodeWriterBase_GetTrueNameStr, sizeof(__pyx_k_CodeWriterBase_GetTrueNameStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetUseCountStr, __pyx_k_CodeWriterBase_GetUseCountStr, sizeof(__pyx_k_CodeWriterBase_GetUseCountStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetUserStr, __pyx_k_CodeWriterBase_GetUserStr, sizeof(__pyx_k_CodeWriterBase_GetUserStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetWithMatrix, __pyx_k_CodeWriterBase_GetWithMatrix, sizeof(__pyx_k_CodeWriterBase_GetWithMatrix), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetXmlStr, __pyx_k_CodeWriterBase_GetXmlStr, sizeof(__pyx_k_CodeWriterBase_GetXmlStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_Getbiasbasedcount, __pyx_k_CodeWriterBase_Getbiasbasedcount, sizeof(__pyx_k_CodeWriterBase_Getbiasbasedcount), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_Getmodelname, __pyx_k_CodeWriterBase_Getmodelname, sizeof(__pyx_k_CodeWriterBase_Getmodelname), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_Getoutputsyncount, __pyx_k_CodeWriterBase_Getoutputsyncount, sizeof(__pyx_k_CodeWriterBase_Getoutputsyncount), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_Getparamfilename, __pyx_k_CodeWriterBase_Getparamfilename, sizeof(__pyx_k_CodeWriterBase_Getparamfilename), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_Getsmiles, __pyx_k_CodeWriterBase_Getsmiles, sizeof(__pyx_k_CodeWriterBase_Getsmiles), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_GetsmilesList, __pyx_k_CodeWriterBase_GetsmilesList, sizeof(__pyx_k_CodeWriterBase_GetsmilesList), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_InitialisationMat, __pyx_k_CodeWriterBase_InitialisationMat, sizeof(__pyx_k_CodeWriterBase_InitialisationMat), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_InitialisationVec, __pyx_k_CodeWriterBase_InitialisationVec, sizeof(__pyx_k_CodeWriterBase_InitialisationVec), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_IsComment, __pyx_k_CodeWriterBase_IsComment, sizeof(__pyx_k_CodeWriterBase_IsComment), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_LimitLine, __pyx_k_CodeWriterBase_LimitLine, sizeof(__pyx_k_CodeWriterBase_LimitLine), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_ModulePStr, __pyx_k_CodeWriterBase_ModulePStr, sizeof(__pyx_k_CodeWriterBase_ModulePStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_ModuleStr, __pyx_k_CodeWriterBase_ModuleStr, sizeof(__pyx_k_CodeWriterBase_ModuleStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_MoinsEgal, __pyx_k_CodeWriterBase_MoinsEgal, sizeof(__pyx_k_CodeWriterBase_MoinsEgal), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_MultiCondition1, __pyx_k_CodeWriterBase_MultiCondition1, sizeof(__pyx_k_CodeWriterBase_MultiCondition1), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_MultiEgal, __pyx_k_CodeWriterBase_MultiEgal, sizeof(__pyx_k_CodeWriterBase_MultiEgal), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_NetSource, __pyx_k_CodeWriterBase_NetSource, sizeof(__pyx_k_CodeWriterBase_NetSource), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_PlusEgal, __pyx_k_CodeWriterBase_PlusEgal, sizeof(__pyx_k_CodeWriterBase_PlusEgal), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_PptyLeverageStr, __pyx_k_CodeWriterBase_PptyLeverageStr, sizeof(__pyx_k_CodeWriterBase_PptyLeverageStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_PptyValueStr, __pyx_k_CodeWriterBase_PptyValueStr, sizeof(__pyx_k_CodeWriterBase_PptyValueStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_ReadCodeFromID, __pyx_k_CodeWriterBase_ReadCodeFromID, sizeof(__pyx_k_CodeWriterBase_ReadCodeFromID), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_SaveToFile, __pyx_k_CodeWriterBase_SaveToFile, sizeof(__pyx_k_CodeWriterBase_SaveToFile), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_SetDecimalSep, __pyx_k_CodeWriterBase_SetDecimalSep, sizeof(__pyx_k_CodeWriterBase_SetDecimalSep), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_SetDecimalSeparat, __pyx_k_CodeWriterBase_SetDecimalSeparat, sizeof(__pyx_k_CodeWriterBase_SetDecimalSeparat), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_SetNetSource, __pyx_k_CodeWriterBase_SetNetSource, sizeof(__pyx_k_CodeWriterBase_SetNetSource), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_SubstituteVariabl, __pyx_k_CodeWriterBase_SubstituteVariabl, sizeof(__pyx_k_CodeWriterBase_SubstituteVariabl), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_Suite, __pyx_k_CodeWriterBase_Suite, sizeof(__pyx_k_CodeWriterBase_Suite), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_TouslesNoms, __pyx_k_CodeWriterBase_TouslesNoms, sizeof(__pyx_k_CodeWriterBase_TouslesNoms), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_TransferStr, __pyx_k_CodeWriterBase_TransferStr, sizeof(__pyx_k_CodeWriterBase_TransferStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_ValToStr, __pyx_k_CodeWriterBase_ValToStr, sizeof(__pyx_k_CodeWriterBase_ValToStr), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase___init, __pyx_k_CodeWriterBase___init, sizeof(__pyx_k_CodeWriterBase___init), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase___init___locals_l, __pyx_k_CodeWriterBase___init___locals_l, sizeof(__pyx_k_CodeWriterBase___init___locals_l), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase__dosub, __pyx_k_CodeWriterBase__dosub, sizeof(__pyx_k_CodeWriterBase__dosub), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_baseCodeFileName, __pyx_k_CodeWriterBase_baseCodeFileName, sizeof(__pyx_k_CodeWriterBase_baseCodeFileName), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_getCodeVersion, __pyx_k_CodeWriterBase_getCodeVersion, sizeof(__pyx_k_CodeWriterBase_getCodeVersion), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_getDataRange, __pyx_k_CodeWriterBase_getDataRange, sizeof(__pyx_k_CodeWriterBase_getDataRange), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_getDynamicLinking, __pyx_k_CodeWriterBase_getDynamicLinking, sizeof(__pyx_k_CodeWriterBase_getDynamicLinking), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_getModuleType, __pyx_k_CodeWriterBase_getModuleType, sizeof(__pyx_k_CodeWriterBase_getModuleType), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_getTemplate, __pyx_k_CodeWriterBase_getTemplate, sizeof(__pyx_k_CodeWriterBase_getTemplate), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_getUseCodeVersion, __pyx_k_CodeWriterBase_getUseCodeVersion, sizeof(__pyx_k_CodeWriterBase_getUseCodeVersion), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_setCurrentFileTyp, __pyx_k_CodeWriterBase_setCurrentFileTyp, sizeof(__pyx_k_CodeWriterBase_setCurrentFileTyp), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_setReplaceDict, __pyx_k_CodeWriterBase_setReplaceDict, sizeof(__pyx_k_CodeWriterBase_setReplaceDict), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_setSource, __pyx_k_CodeWriterBase_setSource, sizeof(__pyx_k_CodeWriterBase_setSource), 0, 0, 1, 1},
  {&__pyx_n_s_CodeWriterBase_trainableStr, __pyx_k_CodeWriterBase_trainableStr, sizeof(__pyx_k_CodeWriterBase_trainableStr), 0, 0, 1, 1},
  {&__pyx_n_s_Comment, __pyx_k_Comment, sizeof(__pyx_k_Comment), 0, 0, 1, 1},
  {&__pyx_n_u_Comment, __pyx_k_Comment, sizeof(__pyx_k_Comment), 0, 1, 0, 1},
  {&__pyx_n_u_CommentCount, __pyx_k_CommentCount, sizeof(__pyx_k_CommentCount), 0, 1, 0, 1},
  {&__pyx_n_s_CommentLine, __pyx_k_CommentLine, sizeof(__pyx_k_CommentLine), 0, 0, 1, 1},
  {&__pyx_n_s_CommentTeteFichier, __pyx_k_CommentTeteFichier, sizeof(__pyx_k_CommentTeteFichier), 0, 0, 1, 1},
  {&__pyx_n_u_Comments, __pyx_k_Comments, sizeof(__pyx_k_Comments), 0, 1, 0, 1},
  {&__pyx_n_u_Common, __pyx_k_Common, sizeof(__pyx_k_Common), 0, 1, 0, 1},
  {&__pyx_n_s_Component, __pyx_k_Component, sizeof(__pyx_k_Component), 0, 0, 1, 1},
  {&__pyx_n_u_Computer, __pyx_k_Computer, sizeof(__pyx_k_Computer), 0, 1, 0, 1},
  {&__pyx_n_s_ComputerName, __pyx_k_ComputerName, sizeof(__pyx_k_ComputerName), 0, 0, 1, 1},
  {&__pyx_n_s_ComputerName_2, __pyx_k_ComputerName_2, sizeof(__pyx_k_ComputerName_2), 0, 0, 1, 1},
  {&__pyx_n_u_ComputerName_2, __pyx_k_ComputerName_2, sizeof(__pyx_k_ComputerName_2), 0, 1, 0, 1},
  {&__pyx_n_u_Configuration, __pyx_k_Configuration, sizeof(__pyx_k_Configuration), 0, 1, 0, 1},
  {&__pyx_n_s_ConfigurationStr, __pyx_k_ConfigurationStr, sizeof(__pyx_k_ConfigurationStr), 0, 0, 1, 1},
  {&__pyx_n_s_CorrectChar, __pyx_k_CorrectChar, sizeof(__pyx_k_CorrectChar), 0, 0, 1, 1},
  {&__pyx_n_u_Count, __pyx_k_Count, sizeof(__pyx_k_Count), 0, 1, 0, 1},
  {&__pyx_n_s_CurrentCodeFileName, __pyx_k_CurrentCodeFileName, sizeof(__pyx_k_CurrentCodeFileName), 0, 0, 1, 1},
  {&__pyx_n_s_CurrentFunctionType, __pyx_k_CurrentFunctionType, sizeof(__pyx_k_CurrentFunctionType), 0, 0, 1, 1},
  {&__pyx_n_s_CurrentFunctionType_2, __pyx_k_CurrentFunctionType_2, sizeof(__pyx_k_CurrentFunctionType_2), 0, 0, 1, 1},
  {&__pyx_n_u_CurrentFunctionType_2, __pyx_k_CurrentFunctionType_2, sizeof(__pyx_k_CurrentFunctionType_2), 0, 1, 0, 1},
  {&__pyx_n_s_CurrentHeader, __pyx_k_CurrentHeader, sizeof(__pyx_k_CurrentHeader), 0, 0, 1, 1},
  {&__pyx_n_s_CurrentHeader_2, __pyx_k_CurrentHeader_2, sizeof(__pyx_k_CurrentHeader_2), 0, 0, 1, 1},
  {&__pyx_n_u_CurrentHeader_2, __pyx_k_CurrentHeader_2, sizeof(__pyx_k_CurrentHeader_2), 0, 1, 0, 1},
  {&__pyx_n_u_Date, __pyx_k_Date, sizeof(__pyx_k_Date), 0, 1, 0, 1},
  {&__pyx_n_s_DebutLigne, __pyx_k_DebutLigne, sizeof(__pyx_k_DebutLigne), 0, 0, 1, 1},
  {&__pyx_n_s_DecalIni, __pyx_k_DecalIni, sizeof(__pyx_k_DecalIni), 0, 0, 1, 1},
  {&__pyx_n_u_DecalIni, __pyx_k_DecalIni, sizeof(__pyx_k_DecalIni), 0, 1, 0, 1},
  {&__pyx_n_s_DecimalSep, __pyx_k_DecimalSep, sizeof(__pyx_k_DecimalSep), 0, 0, 1, 1},
  {&__pyx_n_s_DecimalSep_2, __pyx_k_DecimalSep_2, sizeof(__pyx_k_DecimalSep_2), 0, 0, 1, 1},
  {&__pyx_n_u_DecimalSep_2, __pyx_k_DecimalSep_2, sizeof(__pyx_k_DecimalSep_2), 0, 1, 0, 1},
  {&__pyx_n_s_DeclarationMatrice, __pyx_k_DeclarationMatrice, sizeof(__pyx_k_DeclarationMatrice), 0, 0, 1, 1},
  {&__pyx_n_s_DeclarationVecteur, __pyx_k_DeclarationVecteur, sizeof(__pyx_k_DeclarationVecteur), 0, 0, 1, 1},
  {&__pyx_n_s_DefaultDecimalSeparator, __pyx_k_DefaultDecimalSeparator, sizeof(__pyx_k_DefaultDecimalSeparator), 0, 0, 1, 1},
  {&__pyx_n_s_DemiDispersionReduiteStr, __pyx_k_DemiDispersionReduiteStr, sizeof(__pyx_k_DemiDispersionReduiteStr), 0, 0, 1, 1},
  {&__pyx_n_s_DependStr, __pyx_k_DependStr, sizeof(__pyx_k_DependStr), 0, 0, 1, 1},
  {&__pyx_n_u_DimZtZ, __pyx_k_DimZtZ, sizeof(__pyx_k_DimZtZ), 0, 1, 0, 1},
  {&__pyx_n_u_Dimension, __pyx_k_Dimension, sizeof(__pyx_k_Dimension), 0, 1, 0, 1},
  {&__pyx_n_u_Director, __pyx_k_Director, sizeof(__pyx_k_Director), 0, 1, 0, 1},
  {&__pyx_n_u_Dispersion, __pyx_k_Dispersion, sizeof(__pyx_k_Dispersion), 0, 1, 0, 1},
  {&__pyx_n_u_DispersionR, __pyx_k_DispersionR, sizeof(__pyx_k_DispersionR), 0, 1, 0, 1},
  {&__pyx_n_s_DispersionReduiteStr, __pyx_k_DispersionReduiteStr, sizeof(__pyx_k_DispersionReduiteStr), 0, 0, 1, 1},
  {&__pyx_n_s_DispersionStr, __pyx_k_DispersionStr, sizeof(__pyx_k_DispersionStr), 0, 0, 1, 1},
  {&__pyx_n_s_DiviseEgal, __pyx_k_DiviseEgal, sizeof(__pyx_k_DiviseEgal), 0, 0, 1, 1},
  {&__pyx_n_s_DoAffect, __pyx_k_DoAffect, sizeof(__pyx_k_DoAffect), 0, 0, 1, 1},
  {&__pyx_n_s_DriverSource, __pyx_k_DriverSource, sizeof(__pyx_k_DriverSource), 0, 0, 1, 1},
  {&__pyx_n_s_DriverSource_2, __pyx_k_DriverSource_2, sizeof(__pyx_k_DriverSource_2), 0, 0, 1, 1},
  {&__pyx_n_s_EnQueue, __pyx_k_EnQueue, sizeof(__pyx_k_EnQueue), 0, 0, 1, 1},
  {&__pyx_n_s_EnTete, __pyx_k_EnTete, sizeof(__pyx_k_EnTete), 0, 0, 1, 1},
  {&__pyx_n_s_EndComment0extra, __pyx_k_EndComment0extra, sizeof(__pyx_k_EndComment0extra), 0, 0, 1, 1},
  {&__pyx_n_u_EndComment0extra, __pyx_k_EndComment0extra, sizeof(__pyx_k_EndComment0extra), 0, 1, 0, 1},
  {&__pyx_n_s_EndCommentOut, __pyx_k_EndCommentOut, sizeof(__pyx_k_EndCommentOut), 0, 0, 1, 1},
  {&__pyx_n_u_EndCommentOut, __pyx_k_EndCommentOut, sizeof(__pyx_k_EndCommentOut), 0, 1, 0, 1},
  {&__pyx_n_u_EndStr, __pyx_k_EndStr, sizeof(__pyx_k_EndStr), 0, 1, 0, 1},
  {&__pyx_n_s_Ext, __pyx_k_Ext, sizeof(__pyx_k_Ext), 0, 0, 1, 1},
  {&__pyx_n_s_ExternVectors, __pyx_k_ExternVectors, sizeof(__pyx_k_ExternVectors), 0, 0, 1, 1},
  {&__pyx_n_u_ExternVectors_2, __pyx_k_ExternVectors_2, sizeof(__pyx_k_ExternVectors_2), 0, 1, 0, 1},
  {&__pyx_n_u_ExtraParamsDecl, __pyx_k_ExtraParamsDecl, sizeof(__pyx_k_ExtraParamsDecl), 0, 1, 0, 1},
  {&__pyx_n_s_ExtraParamsDeclStr, __pyx_k_ExtraParamsDeclStr, sizeof(__pyx_k_ExtraParamsDeclStr), 0, 0, 1, 1},
  {&__pyx_n_u_ExtraParamsInit, __pyx_k_ExtraParamsInit, sizeof(__pyx_k_ExtraParamsInit), 0, 1, 0, 1},
  {&__pyx_n_u_ExtraWeightCount, __pyx_k_ExtraWeightCount, sizeof(__pyx_k_ExtraWeightCount), 0, 1, 0, 1},
  {&__pyx_n_s_ExtraWeightsCountStr, __pyx_k_ExtraWeightsCountStr, sizeof(__pyx_k_ExtraWeightsCountStr), 0, 0, 1, 1},
  {&__pyx_n_s_ExtractFileNameOnly, __pyx_k_ExtractFileNameOnly, sizeof(__pyx_k_ExtractFileNameOnly), 0, 0, 1, 1},
  {&__pyx_n_s_FType, __pyx_k_FType, sizeof(__pyx_k_FType), 0, 0, 1, 1},
  {&__pyx_n_s_FileExt, __pyx_k_FileExt, sizeof(__pyx_k_FileExt), 0, 0, 1, 1},
  {&__pyx_n_s_FileExtLang, __pyx_k_FileExtLang, sizeof(__pyx_k_FileExtLang), 0, 0, 1, 1},
  {&__pyx_n_s_FileName, __pyx_k_FileName, sizeof(__pyx_k_FileName), 0, 0, 1, 1},
  {&__pyx_n_s_FileName_2, __pyx_k_FileName_2, sizeof(__pyx_k_FileName_2), 0, 0, 1, 1},
  {&__pyx_n_u_FileName_2, __pyx_k_FileName_2, sizeof(__pyx_k_FileName_2), 0, 1, 0, 1},
  {&__pyx_n_s_ForAllOutputs, __pyx_k_ForAllOutputs, sizeof(__pyx_k_ForAllOutputs), 0, 0, 1, 1},
  {&__pyx_n_s_ForAllOutputs_2, __pyx_k_ForAllOutputs_2, sizeof(__pyx_k_ForAllOutputs_2), 0, 0, 1, 1},
  {&__pyx_n_u_ForAllOutputs_2, __pyx_k_ForAllOutputs_2, sizeof(__pyx_k_ForAllOutputs_2), 0, 1, 0, 1},
  {&__pyx_n_u_Freedom, __pyx_k_Freedom, sizeof(__pyx_k_Freedom), 0, 1, 0, 1},
  {&__pyx_n_s_FreedomStr, __pyx_k_FreedomStr, sizeof(__pyx_k_FreedomStr), 0, 0, 1, 1},
  {&__pyx_n_u_Get, __pyx_k_Get, sizeof(__pyx_k_Get), 0, 1, 0, 1},
  {&__pyx_n_s_Get0TargetList, __pyx_k_Get0TargetList, sizeof(__pyx_k_Get0TargetList), 0, 0, 1, 1},
  {&__pyx_n_s_GetAffect, __pyx_k_GetAffect, sizeof(__pyx_k_GetAffect), 0, 0, 1, 1},
  {&__pyx_n_s_GetAllSynapsesStr, __pyx_k_GetAllSynapsesStr, sizeof(__pyx_k_GetAllSynapsesStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetBeginStr, __pyx_k_GetBeginStr, sizeof(__pyx_k_GetBeginStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetBiasBasedList, __pyx_k_GetBiasBasedList, sizeof(__pyx_k_GetBiasBasedList), 0, 0, 1, 1},
  {&__pyx_n_s_GetCCStr, __pyx_k_GetCCStr, sizeof(__pyx_k_GetCCStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetCFiles, __pyx_k_GetCFiles, sizeof(__pyx_k_GetCFiles), 0, 0, 1, 1},
  {&__pyx_n_s_GetCodeStr, __pyx_k_GetCodeStr, sizeof(__pyx_k_GetCodeStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetCodeStrII, __pyx_k_GetCodeStrII, sizeof(__pyx_k_GetCodeStrII), 0, 0, 1, 1},
  {&__pyx_n_s_GetCodeStrJI, __pyx_k_GetCodeStrJI, sizeof(__pyx_k_GetCodeStrJI), 0, 0, 1, 1},
  {&__pyx_n_s_GetCodeType, __pyx_k_GetCodeType, sizeof(__pyx_k_GetCodeType), 0, 0, 1, 1},
  {&__pyx_n_s_GetCommentCountStr, __pyx_k_GetCommentCountStr, sizeof(__pyx_k_GetCommentCountStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetCommentsStr, __pyx_k_GetCommentsStr, sizeof(__pyx_k_GetCommentsStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetCommonStr, __pyx_k_GetCommonStr, sizeof(__pyx_k_GetCommonStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetComputerStr, __pyx_k_GetComputerStr, sizeof(__pyx_k_GetComputerStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetDataCount, __pyx_k_GetDataCount, sizeof(__pyx_k_GetDataCount), 0, 0, 1, 1},
  {&__pyx_n_s_GetDataRecStr, __pyx_k_GetDataRecStr, sizeof(__pyx_k_GetDataRecStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetDateStr, __pyx_k_GetDateStr, sizeof(__pyx_k_GetDateStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetDecalIni, __pyx_k_GetDecalIni, sizeof(__pyx_k_GetDecalIni), 0, 0, 1, 1},
  {&__pyx_n_s_GetDimZtZStr, __pyx_k_GetDimZtZStr, sizeof(__pyx_k_GetDimZtZStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetDimensionStr, __pyx_k_GetDimensionStr, sizeof(__pyx_k_GetDimensionStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetDitectorStr, __pyx_k_GetDitectorStr, sizeof(__pyx_k_GetDitectorStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetEndStr, __pyx_k_GetEndStr, sizeof(__pyx_k_GetEndStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetFileNameStr, __pyx_k_GetFileNameStr, sizeof(__pyx_k_GetFileNameStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetHiddenStr, __pyx_k_GetHiddenStr, sizeof(__pyx_k_GetHiddenStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetInOutStr, __pyx_k_GetInOutStr, sizeof(__pyx_k_GetInOutStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetInOutputsStr, __pyx_k_GetInOutputsStr, sizeof(__pyx_k_GetInOutputsStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetIncludeFiles, __pyx_k_GetIncludeFiles, sizeof(__pyx_k_GetIncludeFiles), 0, 0, 1, 1},
  {&__pyx_n_s_GetInputValues, __pyx_k_GetInputValues, sizeof(__pyx_k_GetInputValues), 0, 0, 1, 1},
  {&__pyx_n_s_GetInputsStr, __pyx_k_GetInputsStr, sizeof(__pyx_k_GetInputsStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetIntIndexOutput, __pyx_k_GetIntIndexOutput, sizeof(__pyx_k_GetIntIndexOutput), 0, 0, 1, 1},
  {&__pyx_n_s_GetIntdecl, __pyx_k_GetIntdecl, sizeof(__pyx_k_GetIntdecl), 0, 0, 1, 1},
  {&__pyx_n_s_GetJurComment, __pyx_k_GetJurComment, sizeof(__pyx_k_GetJurComment), 0, 0, 1, 1},
  {&__pyx_n_s_GetJurCommentStr, __pyx_k_GetJurCommentStr, sizeof(__pyx_k_GetJurCommentStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetLangMarkup, __pyx_k_GetLangMarkup, sizeof(__pyx_k_GetLangMarkup), 0, 0, 1, 1},
  {&__pyx_n_s_GetLibNameStr, __pyx_k_GetLibNameStr, sizeof(__pyx_k_GetLibNameStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetLinearStr, __pyx_k_GetLinearStr, sizeof(__pyx_k_GetLinearStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetLongWeight, __pyx_k_GetLongWeight, sizeof(__pyx_k_GetLongWeight), 0, 0, 1, 1},
  {&__pyx_n_s_GetMakeLinkLib, __pyx_k_GetMakeLinkLib, sizeof(__pyx_k_GetMakeLinkLib), 0, 0, 1, 1},
  {&__pyx_n_s_GetMakeParams, __pyx_k_GetMakeParams, sizeof(__pyx_k_GetMakeParams), 0, 0, 1, 1},
  {&__pyx_n_s_GetMarkStr, __pyx_k_GetMarkStr, sizeof(__pyx_k_GetMarkStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetMarkdateStr, __pyx_k_GetMarkdateStr, sizeof(__pyx_k_GetMarkdateStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetMarkversionStr, __pyx_k_GetMarkversionStr, sizeof(__pyx_k_GetMarkversionStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetMatrixSource, __pyx_k_GetMatrixSource, sizeof(__pyx_k_GetMatrixSource), 0, 0, 1, 1},
  {&__pyx_n_s_GetModelCount, __pyx_k_GetModelCount, sizeof(__pyx_k_GetModelCount), 0, 0, 1, 1},
  {&__pyx_n_s_GetModelFile, __pyx_k_GetModelFile, sizeof(__pyx_k_GetModelFile), 0, 0, 1, 1},
  {&__pyx_n_s_GetModelList, __pyx_k_GetModelList, sizeof(__pyx_k_GetModelList), 0, 0, 1, 1},
  {&__pyx_n_s_GetMuStr, __pyx_k_GetMuStr, sizeof(__pyx_k_GetMuStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetMultiTransfer, __pyx_k_GetMultiTransfer, sizeof(__pyx_k_GetMultiTransfer), 0, 0, 1, 1},
  {&__pyx_n_s_GetMultiTransferGradient, __pyx_k_GetMultiTransferGradient, sizeof(__pyx_k_GetMultiTransferGradient), 0, 0, 1, 1},
  {&__pyx_n_s_GetNameStr, __pyx_k_GetNameStr, sizeof(__pyx_k_GetNameStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetNetworkKind, __pyx_k_GetNetworkKind, sizeof(__pyx_k_GetNetworkKind), 0, 0, 1, 1},
  {&__pyx_n_s_GetNodeStr, __pyx_k_GetNodeStr, sizeof(__pyx_k_GetNodeStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetNumpyDir, __pyx_k_GetNumpyDir, sizeof(__pyx_k_GetNumpyDir), 0, 0, 1, 1},
  {&__pyx_n_s_GetOrderStr, __pyx_k_GetOrderStr, sizeof(__pyx_k_GetOrderStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetOriginBaseStr, __pyx_k_GetOriginBaseStr, sizeof(__pyx_k_GetOriginBaseStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetOutputSynList, __pyx_k_GetOutputSynList, sizeof(__pyx_k_GetOutputSynList), 0, 0, 1, 1},
  {&__pyx_n_s_GetOutputValues, __pyx_k_GetOutputValues, sizeof(__pyx_k_GetOutputValues), 0, 0, 1, 1},
  {&__pyx_n_s_GetOutputsStr, __pyx_k_GetOutputsStr, sizeof(__pyx_k_GetOutputsStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetRealptrInputs, __pyx_k_GetRealptrInputs, sizeof(__pyx_k_GetRealptrInputs), 0, 0, 1, 1},
  {&__pyx_n_s_GetRealptrdecl, __pyx_k_GetRealptrdecl, sizeof(__pyx_k_GetRealptrdecl), 0, 0, 1, 1},
  {&__pyx_n_s_GetShortFileName, __pyx_k_GetShortFileName, sizeof(__pyx_k_GetShortFileName), 0, 0, 1, 1},
  {&__pyx_n_s_GetStdDevStr, __pyx_k_GetStdDevStr, sizeof(__pyx_k_GetStdDevStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetString, __pyx_k_GetString, sizeof(__pyx_k_GetString), 0, 0, 1, 1},
  {&__pyx_n_u_GetString_2, __pyx_k_GetString_2, sizeof(__pyx_k_GetString_2), 0, 1, 0, 1},
  {&__pyx_n_s_GetStudentStr, __pyx_k_GetStudentStr, sizeof(__pyx_k_GetStudentStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetSynapseRangeStr, __pyx_k_GetSynapseRangeStr, sizeof(__pyx_k_GetSynapseRangeStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetSynapsesStr, __pyx_k_GetSynapsesStr, sizeof(__pyx_k_GetSynapsesStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetTargetList, __pyx_k_GetTargetList, sizeof(__pyx_k_GetTargetList), 0, 0, 1, 1},
  {&__pyx_n_s_GetTargetStr, __pyx_k_GetTargetStr, sizeof(__pyx_k_GetTargetStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetTextFromID, __pyx_k_GetTextFromID, sizeof(__pyx_k_GetTextFromID), 0, 0, 1, 1},
  {&__pyx_n_s_GetTimeStr, __pyx_k_GetTimeStr, sizeof(__pyx_k_GetTimeStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetTransferList, __pyx_k_GetTransferList, sizeof(__pyx_k_GetTransferList), 0, 0, 1, 1},
  {&__pyx_n_s_GetTransferPrimeList, __pyx_k_GetTransferPrimeList, sizeof(__pyx_k_GetTransferPrimeList), 0, 0, 1, 1},
  {&__pyx_n_s_GetTrueModelList, __pyx_k_GetTrueModelList, sizeof(__pyx_k_GetTrueModelList), 0, 0, 1, 1},
  {&__pyx_n_s_GetTrueNameStr, __pyx_k_GetTrueNameStr, sizeof(__pyx_k_GetTrueNameStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetUseCountStr, __pyx_k_GetUseCountStr, sizeof(__pyx_k_GetUseCountStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetUserStr, __pyx_k_GetUserStr, sizeof(__pyx_k_GetUserStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetWithMatrix, __pyx_k_GetWithMatrix, sizeof(__pyx_k_GetWithMatrix), 0, 0, 1, 1},
  {&__pyx_n_s_GetXmlStr, __pyx_k_GetXmlStr, sizeof(__pyx_k_GetXmlStr), 0, 0, 1, 1},
  {&__pyx_n_s_Get_IndexOutput, __pyx_k_Get_IndexOutput, sizeof(__pyx_k_Get_IndexOutput), 0, 0, 1, 1},
  {&__pyx_n_s_Get_Inputs, __pyx_k_Get_Inputs, sizeof(__pyx_k_Get_Inputs), 0, 0, 1, 1},
  {&__pyx_n_s_Getbiasbasedcount, __pyx_k_Getbiasbasedcount, sizeof(__pyx_k_Getbiasbasedcount), 0, 0, 1, 1},
  {&__pyx_n_s_GetdefineMODELNAMEStr, __pyx_k_GetdefineMODELNAMEStr, sizeof(__pyx_k_GetdefineMODELNAMEStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetdefineMODELStr, __pyx_k_GetdefineMODELStr, sizeof(__pyx_k_GetdefineMODELStr), 0, 0, 1, 1},
  {&__pyx_n_s_GetinputNamesFullDecl, __pyx_k_GetinputNamesFullDecl, sizeof(__pyx_k_GetinputNamesFullDecl), 0, 0, 1, 1},
  {&__pyx_n_s_Getmodelname, __pyx_k_Getmodelname, sizeof(__pyx_k_Getmodelname), 0, 0, 1, 1},
  {&__pyx_n_s_GetoutputNamesFullDecl, __pyx_k_GetoutputNamesFullDecl, sizeof(__pyx_k_GetoutputNamesFullDecl), 0, 0, 1, 1},
  {&__pyx_n_s_Getoutputsyncount, __pyx_k_Getoutputsyncount, sizeof(__pyx_k_Getoutputsyncount), 0, 0, 1, 1},
  {&__pyx_n_s_Getparamfilename, __pyx_k_Getparamfilename, sizeof(__pyx_k_Getparamfilename), 0, 0, 1, 1},
  {&__pyx_n_s_GetreturnInputName, __pyx_k_GetreturnInputName, sizeof(__pyx_k_GetreturnInputName), 0, 0, 1, 1},
  {&__pyx_n_s_GetreturnOutputName, __pyx_k_GetreturnOutputName, sizeof(__pyx_k_GetreturnOutputName), 0, 0, 1, 1},
  {&__pyx_n_s_Getsmiles, __pyx_k_Getsmiles, sizeof(__pyx_k_Getsmiles), 0, 0, 1, 1},
  {&__pyx_n_s_GetsmilesList, __pyx_k_GetsmilesList, sizeof(__pyx_k_GetsmilesList), 0, 0, 1, 1},
  {&__pyx_n_s_GradHessFDStr, __pyx_k_GradHessFDStr, sizeof(__pyx_k_GradHessFDStr), 0, 0, 1, 1},
  {&__pyx_n_s_GradHessStr, __pyx_k_GradHessStr, sizeof(__pyx_k_GradHessStr), 0, 0, 1, 1},
  {&__pyx_n_s_GradInputStr, __pyx_k_GradInputStr, sizeof(__pyx_k_GradInputStr), 0, 0, 1, 1},
  {&__pyx_n_s_GradStr, __pyx_k_GradStr, sizeof(__pyx_k_GradStr), 0, 0, 1, 1},
  {&__pyx_kp_u_H_M_S, __pyx_k_H_M_S, sizeof(__pyx_k_H_M_S), 0, 1, 0, 0},
  {&__pyx_n_u_HalfDispersionR, __pyx_k_HalfDispersionR, sizeof(__pyx_k_HalfDispersionR), 0, 1, 0, 1},
  {&__pyx_n_u_Hidden, __pyx_k_Hidden, sizeof(__pyx_k_Hidden), 0, 1, 0, 1},
  {&__pyx_n_s_IDName, __pyx_k_IDName, sizeof(__pyx_k_IDName), 0, 0, 1, 1},
  {&__pyx_kp_u_ISO_8859_1, __pyx_k_ISO_8859_1, sizeof(__pyx_k_ISO_8859_1), 0, 1, 0, 0},
  {&__pyx_kp_u_ISO_8859_15, __pyx_k_ISO_8859_15, sizeof(__pyx_k_ISO_8859_15), 0, 1, 0, 0},
  {&__pyx_n_u_InNorm, __pyx_k_InNorm, sizeof(__pyx_k_InNorm), 0, 1, 0, 1},
  {&__pyx_n_s_InNormStr, __pyx_k_InNormStr, sizeof(__pyx_k_InNormStr), 0, 0, 1, 1},
  {&__pyx_n_u_InOut, __pyx_k_InOut, sizeof(__pyx_k_InOut), 0, 1, 0, 1},
  {&__pyx_n_u_InOutputs, __pyx_k_InOutputs, sizeof(__pyx_k_InOutputs), 0, 1, 0, 1},
  {&__pyx_n_u_IncludeFiles, __pyx_k_IncludeFiles, sizeof(__pyx_k_IncludeFiles), 0, 1, 0, 1},
  {&__pyx_n_s_Indent, __pyx_k_Indent, sizeof(__pyx_k_Indent), 0, 0, 1, 1},
  {&__pyx_n_s_Indent0, __pyx_k_Indent0, sizeof(__pyx_k_Indent0), 0, 0, 1, 1},
  {&__pyx_n_s_IniStStr, __pyx_k_IniStStr, sizeof(__pyx_k_IniStStr), 0, 0, 1, 1},
  {&__pyx_n_u_IniState, __pyx_k_IniState, sizeof(__pyx_k_IniState), 0, 1, 0, 1},
  {&__pyx_n_s_IniWeightStr, __pyx_k_IniWeightStr, sizeof(__pyx_k_IniWeightStr), 0, 0, 1, 1},
  {&__pyx_n_u_IniWeights, __pyx_k_IniWeights, sizeof(__pyx_k_IniWeights), 0, 1, 0, 1},
  {&__pyx_n_s_InitialisationMatrice, __pyx_k_InitialisationMatrice, sizeof(__pyx_k_InitialisationMatrice), 0, 0, 1, 1},
  {&__pyx_n_s_InitialisationVecteur, __pyx_k_InitialisationVecteur, sizeof(__pyx_k_InitialisationVecteur), 0, 0, 1, 1},
  {&__pyx_n_s_InputNameDeclStr, __pyx_k_InputNameDeclStr, sizeof(__pyx_k_InputNameDeclStr), 0, 0, 1, 1},
  {&__pyx_n_s_InputNameLongStr, __pyx_k_InputNameLongStr, sizeof(__pyx_k_InputNameLongStr), 0, 0, 1, 1},
  {&__pyx_n_s_InputNameProtoStr, __pyx_k_InputNameProtoStr, sizeof(__pyx_k_InputNameProtoStr), 0, 0, 1, 1},
  {&__pyx_n_s_InputNameStr, __pyx_k_InputNameStr, sizeof(__pyx_k_InputNameStr), 0, 0, 1, 1},
  {&__pyx_n_u_InputNames, __pyx_k_InputNames, sizeof(__pyx_k_InputNames), 0, 1, 0, 1},
  {&__pyx_n_u_InputNamesDecl, __pyx_k_InputNamesDecl, sizeof(__pyx_k_InputNamesDecl), 0, 1, 0, 1},
  {&__pyx_n_u_InputNamesLong, __pyx_k_InputNamesLong, sizeof(__pyx_k_InputNamesLong), 0, 1, 0, 1},
  {&__pyx_n_u_InputNamesProto, __pyx_k_InputNamesProto, sizeof(__pyx_k_InputNamesProto), 0, 1, 0, 1},
  {&__pyx_n_s_InputRangeDeclStr, __pyx_k_InputRangeDeclStr, sizeof(__pyx_k_InputRangeDeclStr), 0, 0, 1, 1},
  {&__pyx_n_s_InputRangeLongStr, __pyx_k_InputRangeLongStr, sizeof(__pyx_k_InputRangeLongStr), 0, 0, 1, 1},
  {&__pyx_n_s_InputRangeProtoStr, __pyx_k_InputRangeProtoStr, sizeof(__pyx_k_InputRangeProtoStr), 0, 0, 1, 1},
  {&__pyx_n_s_InputRangeStr, __pyx_k_InputRangeStr, sizeof(__pyx_k_InputRangeStr), 0, 0, 1, 1},
  {&__pyx_n_u_InputRanges, __pyx_k_InputRanges, sizeof(__pyx_k_InputRanges), 0, 1, 0, 1},
  {&__pyx_n_u_InputRangesDecl, __pyx_k_InputRangesDecl, sizeof(__pyx_k_InputRangesDecl), 0, 1, 0, 1},
  {&__pyx_n_u_InputRangesLong, __pyx_k_InputRangesLong, sizeof(__pyx_k_InputRangesLong), 0, 1, 0, 1},
  {&__pyx_n_u_InputRangesProto, __pyx_k_InputRangesProto, sizeof(__pyx_k_InputRangesProto), 0, 1, 0, 1},
  {&__pyx_n_u_InputValues, __pyx_k_InputValues, sizeof(__pyx_k_InputValues), 0, 1, 0, 1},
  {&__pyx_n_u_Inputs, __pyx_k_Inputs, sizeof(__pyx_k_Inputs), 0, 1, 0, 1},
  {&__pyx_n_s_IsComment, __pyx_k_IsComment, sizeof(__pyx_k_IsComment), 0, 0, 1, 1},
  {&__pyx_n_s_JurComment, __pyx_k_JurComment, sizeof(__pyx_k_JurComment), 0, 0, 1, 1},
  {&__pyx_n_s_KeyError, __pyx_k_KeyError, sizeof(__pyx_k_KeyError), 0, 0, 1, 1},
  {&__pyx_kp_u_Key_unknown, __pyx_k_Key_unknown, sizeof(__pyx_k_Key_unknown), 0, 1, 0, 0},
  {&__pyx_n_u_LangMarkup, __pyx_k_LangMarkup, sizeof(__pyx_k_LangMarkup), 0, 1, 0, 1},
  {&__pyx_n_s_LimitLine, __pyx_k_LimitLine, sizeof(__pyx_k_LimitLine), 0, 0, 1, 1},
  {&__pyx_n_s_Line, __pyx_k_Line, sizeof(__pyx_k_Line), 0, 0, 1, 1},
  {&__pyx_n_u_LongWeight, __pyx_k_LongWeight, sizeof(__pyx_k_LongWeight), 0, 1, 0, 1},
  {&__pyx_n_u_MakeDLM, __pyx_k_MakeDLM, sizeof(__pyx_k_MakeDLM), 0, 1, 0, 1},
  {&__pyx_n_u_MakeLinkLib, __pyx_k_MakeLinkLib, sizeof(__pyx_k_MakeLinkLib), 0, 1, 0, 1},
  {&__pyx_n_u_MakeParams, __pyx_k_MakeParams, sizeof(__pyx_k_MakeParams), 0, 1, 0, 1},
  {&__pyx_n_u_Mark, __pyx_k_Mark, sizeof(__pyx_k_Mark), 0, 1, 0, 1},
  {&__pyx_n_u_Markdate, __pyx_k_Markdate, sizeof(__pyx_k_Markdate), 0, 1, 0, 1},
  {&__pyx_n_s_MarkupList, __pyx_k_MarkupList, sizeof(__pyx_k_MarkupList), 0, 0, 1, 1},
  {&__pyx_n_u_Markversion, __pyx_k_Markversion, sizeof(__pyx_k_Markversion), 0, 1, 0, 1},
  {&__pyx_n_s_Mat, __pyx_k_Mat, sizeof(__pyx_k_Mat), 0, 0, 1, 1},
  {&__pyx_n_s_MatDecl, __pyx_k_MatDecl, sizeof(__pyx_k_MatDecl), 0, 0, 1, 1},
  {&__pyx_n_s_MatDecl_2, __pyx_k_MatDecl_2, sizeof(__pyx_k_MatDecl_2), 0, 0, 1, 1},
  {&__pyx_n_u_MatDecl_2, __pyx_k_MatDecl_2, sizeof(__pyx_k_MatDecl_2), 0, 1, 0, 1},
  {&__pyx_n_s_MatStr, __pyx_k_MatStr, sizeof(__pyx_k_MatStr), 0, 0, 1, 1},
  {&__pyx_n_s_Matrix, __pyx_k_Matrix, sizeof(__pyx_k_Matrix), 0, 0, 1, 1},
  {&__pyx_n_s_MatrixSource, __pyx_k_MatrixSource, sizeof(__pyx_k_MatrixSource), 0, 0, 1, 1},
  {&__pyx_n_u_MatrixSource, __pyx_k_MatrixSource, sizeof(__pyx_k_MatrixSource), 0, 1, 0, 1},
  {&__pyx_n_s_Matrix_2, __pyx_k_Matrix_2, sizeof(__pyx_k_Matrix_2), 0, 0, 1, 1},
  {&__pyx_n_u_Matrix_2, __pyx_k_Matrix_2, sizeof(__pyx_k_Matrix_2), 0, 1, 0, 1},
  {&__pyx_n_u_Max, __pyx_k_Max, sizeof(__pyx_k_Max), 0, 1, 0, 1},
  {&__pyx_n_s_MaxDecl, __pyx_k_MaxDecl, sizeof(__pyx_k_MaxDecl), 0, 0, 1, 1},
  {&__pyx_n_s_MaxDecl_2, __pyx_k_MaxDecl_2, sizeof(__pyx_k_MaxDecl_2), 0, 0, 1, 1},
  {&__pyx_n_u_MaxDecl_2, __pyx_k_MaxDecl_2, sizeof(__pyx_k_MaxDecl_2), 0, 1, 0, 1},
  {&__pyx_n_s_MaxLineLength, __pyx_k_MaxLineLength, sizeof(__pyx_k_MaxLineLength), 0, 0, 1, 1},
  {&__pyx_n_u_MaxLineLength_2, __pyx_k_MaxLineLength_2, sizeof(__pyx_k_MaxLineLength_2), 0, 1, 0, 1},
  {&__pyx_n_s_MaxStr, __pyx_k_MaxStr, sizeof(__pyx_k_MaxStr), 0, 0, 1, 1},
  {&__pyx_n_s_Mess1, __pyx_k_Mess1, sizeof(__pyx_k_Mess1), 0, 0, 1, 1},
  {&__pyx_n_s_Mess2, __pyx_k_Mess2, sizeof(__pyx_k_Mess2), 0, 0, 1, 1},
  {&__pyx_n_u_Min, __pyx_k_Min, sizeof(__pyx_k_Min), 0, 1, 0, 1},
  {&__pyx_n_s_MinDecl, __pyx_k_MinDecl, sizeof(__pyx_k_MinDecl), 0, 0, 1, 1},
  {&__pyx_n_s_MinDecl_2, __pyx_k_MinDecl_2, sizeof(__pyx_k_MinDecl_2), 0, 0, 1, 1},
  {&__pyx_n_u_MinDecl_2, __pyx_k_MinDecl_2, sizeof(__pyx_k_MinDecl_2), 0, 1, 0, 1},
  {&__pyx_n_s_MinStr, __pyx_k_MinStr, sizeof(__pyx_k_MinStr), 0, 0, 1, 1},
  {&__pyx_n_s_Model, __pyx_k_Model, sizeof(__pyx_k_Model), 0, 0, 1, 1},
  {&__pyx_n_u_ModelFile, __pyx_k_ModelFile, sizeof(__pyx_k_ModelFile), 0, 1, 0, 1},
  {&__pyx_n_u_ModelName, __pyx_k_ModelName, sizeof(__pyx_k_ModelName), 0, 1, 0, 1},
  {&__pyx_n_u_Module, __pyx_k_Module, sizeof(__pyx_k_Module), 0, 1, 0, 1},
  {&__pyx_n_u_ModuleP, __pyx_k_ModuleP, sizeof(__pyx_k_ModuleP), 0, 1, 0, 1},
  {&__pyx_n_s_ModulePStr, __pyx_k_ModulePStr, sizeof(__pyx_k_ModulePStr), 0, 0, 1, 1},
  {&__pyx_n_s_ModuleStr, __pyx_k_ModuleStr, sizeof(__pyx_k_ModuleStr), 0, 0, 1, 1},
  {&__pyx_n_u_ModuleType, __pyx_k_ModuleType, sizeof(__pyx_k_ModuleType), 0, 1, 0, 1},
  {&__pyx_n_s_MoinsEgal, __pyx_k_MoinsEgal, sizeof(__pyx_k_MoinsEgal), 0, 0, 1, 1},
  {&__pyx_n_u_Monalversion, __pyx_k_Monalversion, sizeof(__pyx_k_Monalversion), 0, 1, 0, 1},
  {&__pyx_n_u_Mu, __pyx_k_Mu, sizeof(__pyx_k_Mu), 0, 1, 0, 1},
  {&__pyx_n_s_MultiCondition1, __pyx_k_MultiCondition1, sizeof(__pyx_k_MultiCondition1), 0, 0, 1, 1},
  {&__pyx_n_s_MultiEgal, __pyx_k_MultiEgal, sizeof(__pyx_k_MultiEgal), 0, 0, 1, 1},
  {&__pyx_n_u_MultiTransfer, __pyx_k_MultiTransfer, sizeof(__pyx_k_MultiTransfer), 0, 1, 0, 1},
  {&__pyx_n_u_MultiTransferGradient, __pyx_k_MultiTransferGradient, sizeof(__pyx_k_MultiTransferGradient), 0, 1, 0, 1},
  {&__pyx_n_s_N, __pyx_k_N, sizeof(__pyx_k_N), 0, 0, 1, 1},
  {&__pyx_n_s_NNode, __pyx_k_NNode, sizeof(__pyx_k_NNode), 0, 0, 1, 1},
  {&__pyx_n_u_NNode_2, __pyx_k_NNode_2, sizeof(__pyx_k_NNode_2), 0, 1, 0, 1},
  {&__pyx_n_u_NULL, __pyx_k_NULL, sizeof(__pyx_k_NULL), 0, 1, 0, 1},
  {&__pyx_n_u_Name, __pyx_k_Name, sizeof(__pyx_k_Name), 0, 1, 0, 1},
  {&__pyx_n_s_NetName, __pyx_k_NetName, sizeof(__pyx_k_NetName), 0, 0, 1, 1},
  {&__pyx_n_s_NetName_2, __pyx_k_NetName_2, sizeof(__pyx_k_NetName_2), 0, 0, 1, 1},
  {&__pyx_n_u_NetName_2, __pyx_k_NetName_2, sizeof(__pyx_k_NetName_2), 0, 1, 0, 1},
  {&__pyx_n_s_NetSource, __pyx_k_NetSource, sizeof(__pyx_k_NetSource), 0, 0, 1, 1},
  {&__pyx_n_s_NetSource_2, __pyx_k_NetSource_2, sizeof(__pyx_k_NetSource_2), 0, 0, 1, 1},
  {&__pyx_n_s_NetworkKind, __pyx_k_NetworkKind, sizeof(__pyx_k_NetworkKind), 0, 0, 1, 1},
  {&__pyx_n_u_NetworkKind, __pyx_k_NetworkKind, sizeof(__pyx_k_NetworkKind), 0, 1, 0, 1},
  {&__pyx_n_s_NlPlusStr, __pyx_k_NlPlusStr, sizeof(__pyx_k_NlPlusStr), 0, 0, 1, 1},
  {&__pyx_n_s_NoIndent, __pyx_k_NoIndent, sizeof(__pyx_k_NoIndent), 0, 0, 1, 1},
  {&__pyx_n_u_NoIndent_2, __pyx_k_NoIndent_2, sizeof(__pyx_k_NoIndent_2), 0, 1, 0, 1},
  {&__pyx_n_s_NoTemplate, __pyx_k_NoTemplate, sizeof(__pyx_k_NoTemplate), 0, 0, 1, 1},
  {&__pyx_n_u_NoTemplate_2, __pyx_k_NoTemplate_2, sizeof(__pyx_k_NoTemplate_2), 0, 1, 0, 1},
  {&__pyx_n_u_Nodes, __pyx_k_Nodes, sizeof(__pyx_k_Nodes), 0, 1, 0, 1},
  {&__pyx_n_s_NomFGradient, __pyx_k_NomFGradient, sizeof(__pyx_k_NomFGradient), 0, 0, 1, 1},
  {&__pyx_n_s_NomFGradientCall, __pyx_k_NomFGradientCall, sizeof(__pyx_k_NomFGradientCall), 0, 0, 1, 1},
  {&__pyx_n_s_NomFGradientCall_2, __pyx_k_NomFGradientCall_2, sizeof(__pyx_k_NomFGradientCall_2), 0, 0, 1, 1},
  {&__pyx_n_u_NomFGradientCall_2, __pyx_k_NomFGradientCall_2, sizeof(__pyx_k_NomFGradientCall_2), 0, 1, 0, 1},
  {&__pyx_n_s_NomFGradient_2, __pyx_k_NomFGradient_2, sizeof(__pyx_k_NomFGradient_2), 0, 0, 1, 1},
  {&__pyx_n_u_NomFGradient_2, __pyx_k_NomFGradient_2, sizeof(__pyx_k_NomFGradient_2), 0, 1, 0, 1},
  {&__pyx_n_s_NomFTransfer, __pyx_k_NomFTransfer, sizeof(__pyx_k_NomFTransfer), 0, 0, 1, 1},
  {&__pyx_n_s_NomFTransfer_2, __pyx_k_NomFTransfer_2, sizeof(__pyx_k_NomFTransfer_2), 0, 0, 1, 1},
  {&__pyx_n_u_NomFTransfer_2, __pyx_k_NomFTransfer_2, sizeof(__pyx_k_NomFTransfer_2), 0, 1, 0, 1},
  {&__pyx_n_s_NomFonction, __pyx_k_NomFonction, sizeof(__pyx_k_NomFonction), 0, 0, 1, 1},
  {&__pyx_n_s_NomFonction_2, __pyx_k_NomFonction_2, sizeof(__pyx_k_NomFonction_2), 0, 0, 1, 1},
  {&__pyx_n_u_NomFonction_2, __pyx_k_NomFonction_2, sizeof(__pyx_k_NomFonction_2), 0, 1, 0, 1},
  {&__pyx_n_s_NumpyDir, __pyx_k_NumpyDir, sizeof(__pyx_k_NumpyDir), 0, 0, 1, 1},
  {&__pyx_n_u_NumpyDir, __pyx_k_NumpyDir, sizeof(__pyx_k_NumpyDir), 0, 1, 0, 1},
  {&__pyx_n_u_Numpydir, __pyx_k_Numpydir, sizeof(__pyx_k_Numpydir), 0, 1, 0, 1},
  {&__pyx_n_s_OKMulti, __pyx_k_OKMulti, sizeof(__pyx_k_OKMulti), 0, 0, 1, 1},
  {&__pyx_n_u_OKMulti_2, __pyx_k_OKMulti_2, sizeof(__pyx_k_OKMulti_2), 0, 1, 0, 1},
  {&__pyx_kp_u_OUTPUTCOUNT, __pyx_k_OUTPUTCOUNT, sizeof(__pyx_k_OUTPUTCOUNT), 0, 1, 0, 0},
  {&__pyx_n_u_Order, __pyx_k_Order, sizeof(__pyx_k_Order), 0, 1, 0, 1},
  {&__pyx_n_u_Originbase, __pyx_k_Originbase, sizeof(__pyx_k_Originbase), 0, 1, 0, 1},
  {&__pyx_n_u_OutNorm, __pyx_k_OutNorm, sizeof(__pyx_k_OutNorm), 0, 1, 0, 1},
  {&__pyx_n_s_OutNormStr, __pyx_k_OutNormStr, sizeof(__pyx_k_OutNormStr), 0, 0, 1, 1},
  {&__pyx_n_u_OutputName0, __pyx_k_OutputName0, sizeof(__pyx_k_OutputName0), 0, 1, 0, 1},
  {&__pyx_n_s_OutputName0Str, __pyx_k_OutputName0Str, sizeof(__pyx_k_OutputName0Str), 0, 0, 1, 1},
  {&__pyx_n_s_OutputNameStr, __pyx_k_OutputNameStr, sizeof(__pyx_k_OutputNameStr), 0, 0, 1, 1},
  {&__pyx_n_u_OutputNames, __pyx_k_OutputNames, sizeof(__pyx_k_OutputNames), 0, 1, 0, 1},
  {&__pyx_n_s_OutputRangeStr, __pyx_k_OutputRangeStr, sizeof(__pyx_k_OutputRangeStr), 0, 0, 1, 1},
  {&__pyx_n_u_OutputRanges, __pyx_k_OutputRanges, sizeof(__pyx_k_OutputRanges), 0, 1, 0, 1},
  {&__pyx_n_u_OutputValues, __pyx_k_OutputValues, sizeof(__pyx_k_OutputValues), 0, 1, 0, 1},
  {&__pyx_n_u_Outputs, __pyx_k_Outputs, sizeof(__pyx_k_Outputs), 0, 1, 0, 1},
  {&__pyx_n_s_P, __pyx_k_P, sizeof(__pyx_k_P), 0, 0, 1, 1},
  {&__pyx_n_s_PY3, __pyx_k_PY3, sizeof(__pyx_k_PY3), 0, 0, 1, 1},
  {&__pyx_n_s_PlusEgal, __pyx_k_PlusEgal, sizeof(__pyx_k_PlusEgal), 0, 0, 1, 1},
  {&__pyx_n_s_PptyLeverageStr, __pyx_k_PptyLeverageStr, sizeof(__pyx_k_PptyLeverageStr), 0, 0, 1, 1},
  {&__pyx_n_s_PptyValueStr, __pyx_k_PptyValueStr, sizeof(__pyx_k_PptyValueStr), 0, 0, 1, 1},
  {&__pyx_n_s_Properties, __pyx_k_Properties, sizeof(__pyx_k_Properties), 0, 0, 1, 1},
  {&__pyx_n_s_Properties2, __pyx_k_Properties2, sizeof(__pyx_k_Properties2), 0, 0, 1, 1},
  {&__pyx_n_s_Property, __pyx_k_Property, sizeof(__pyx_k_Property), 0, 0, 1, 1},
  {&__pyx_n_u_PropertyLeverage, __pyx_k_PropertyLeverage, sizeof(__pyx_k_PropertyLeverage), 0, 1, 0, 1},
  {&__pyx_n_u_PropertyValue, __pyx_k_PropertyValue, sizeof(__pyx_k_PropertyValue), 0, 1, 0, 1},
  {&__pyx_n_s_Q, __pyx_k_Q, sizeof(__pyx_k_Q), 0, 0, 1, 1},
  {&__pyx_n_s_ReadCodeFromID, __pyx_k_ReadCodeFromID, sizeof(__pyx_k_ReadCodeFromID), 0, 0, 1, 1},
  {&__pyx_n_s_ReplaceDictionary, __pyx_k_ReplaceDictionary, sizeof(__pyx_k_ReplaceDictionary), 0, 0, 1, 1},
  {&__pyx_n_s_Result, __pyx_k_Result, sizeof(__pyx_k_Result), 0, 0, 1, 1},
  {&__pyx_n_s_SaveDir, __pyx_k_SaveDir, sizeof(__pyx_k_SaveDir), 0, 0, 1, 1},
  {&__pyx_n_s_SaveDir_2, __pyx_k_SaveDir_2, sizeof(__pyx_k_SaveDir_2), 0, 0, 1, 1},
  {&__pyx_n_u_SaveDir_2, __pyx_k_SaveDir_2, sizeof(__pyx_k_SaveDir_2), 0, 1, 0, 1},
  {&__pyx_n_s_SaveToFile, __pyx_k_SaveToFile, sizeof(__pyx_k_SaveToFile), 0, 0, 1, 1},
  {&__pyx_n_u_Set, __pyx_k_Set, sizeof(__pyx_k_Set), 0, 1, 0, 1},
  {&__pyx_n_s_SetDecimalSep, __pyx_k_SetDecimalSep, sizeof(__pyx_k_SetDecimalSep), 0, 0, 1, 1},
  {&__pyx_n_s_SetDecimalSeparator, __pyx_k_SetDecimalSeparator, sizeof(__pyx_k_SetDecimalSeparator), 0, 0, 1, 1},
  {&__pyx_n_s_SetNetSource, __pyx_k_SetNetSource, sizeof(__pyx_k_SetNetSource), 0, 0, 1, 1},
  {&__pyx_n_s_ShortFileName, __pyx_k_ShortFileName, sizeof(__pyx_k_ShortFileName), 0, 0, 1, 1},
  {&__pyx_n_u_ShortFileName, __pyx_k_ShortFileName, sizeof(__pyx_k_ShortFileName), 0, 1, 0, 1},
  {&__pyx_n_s_SingleGradient, __pyx_k_SingleGradient, sizeof(__pyx_k_SingleGradient), 0, 0, 1, 1},
  {&__pyx_n_u_SingleGradient_2, __pyx_k_SingleGradient_2, sizeof(__pyx_k_SingleGradient_2), 0, 1, 0, 1},
  {&__pyx_n_u_Smiles, __pyx_k_Smiles, sizeof(__pyx_k_Smiles), 0, 1, 0, 1},
  {&__pyx_n_s_Source, __pyx_k_Source, sizeof(__pyx_k_Source), 0, 0, 1, 1},
  {&__pyx_n_s_St, __pyx_k_St, sizeof(__pyx_k_St), 0, 0, 1, 1},
  {&__pyx_n_s_St0, __pyx_k_St0, sizeof(__pyx_k_St0), 0, 0, 1, 1},
  {&__pyx_n_s_St1, __pyx_k_St1, sizeof(__pyx_k_St1), 0, 0, 1, 1},
  {&__pyx_n_s_St2, __pyx_k_St2, sizeof(__pyx_k_St2), 0, 0, 1, 1},
  {&__pyx_n_s_StForAllOutputs, __pyx_k_StForAllOutputs, sizeof(__pyx_k_StForAllOutputs), 0, 0, 1, 1},
  {&__pyx_n_s_StMatIniS, __pyx_k_StMatIniS, sizeof(__pyx_k_StMatIniS), 0, 0, 1, 1},
  {&__pyx_n_s_StMatrixIni, __pyx_k_StMatrixIni, sizeof(__pyx_k_StMatrixIni), 0, 0, 1, 1},
  {&__pyx_n_s_StMaxIniS, __pyx_k_StMaxIniS, sizeof(__pyx_k_StMaxIniS), 0, 0, 1, 1},
  {&__pyx_n_s_StMinIniS, __pyx_k_StMinIniS, sizeof(__pyx_k_StMinIniS), 0, 0, 1, 1},
  {&__pyx_n_s_StSource, __pyx_k_StSource, sizeof(__pyx_k_StSource), 0, 0, 1, 1},
  {&__pyx_n_s_StStdDEvInis, __pyx_k_StStdDEvInis, sizeof(__pyx_k_StStdDEvInis), 0, 0, 1, 1},
  {&__pyx_n_s_StTarget, __pyx_k_StTarget, sizeof(__pyx_k_StTarget), 0, 0, 1, 1},
  {&__pyx_n_s_StTransGradDyn, __pyx_k_StTransGradDyn, sizeof(__pyx_k_StTransGradDyn), 0, 0, 1, 1},
  {&__pyx_n_s_StTransGradDynCall, __pyx_k_StTransGradDynCall, sizeof(__pyx_k_StTransGradDynCall), 0, 0, 1, 1},
  {&__pyx_n_s_StTransGradStat, __pyx_k_StTransGradStat, sizeof(__pyx_k_StTransGradStat), 0, 0, 1, 1},
  {&__pyx_n_s_StTransGradStatCall, __pyx_k_StTransGradStatCall, sizeof(__pyx_k_StTransGradStatCall), 0, 0, 1, 1},
  {&__pyx_n_s_StTransferDyn, __pyx_k_StTransferDyn, sizeof(__pyx_k_StTransferDyn), 0, 0, 1, 1},
  {&__pyx_n_s_StTransferDyn2, __pyx_k_StTransferDyn2, sizeof(__pyx_k_StTransferDyn2), 0, 0, 1, 1},
  {&__pyx_n_s_StTransferStat, __pyx_k_StTransferStat, sizeof(__pyx_k_StTransferStat), 0, 0, 1, 1},
  {&__pyx_n_s_StTransferStat2, __pyx_k_StTransferStat2, sizeof(__pyx_k_StTransferStat2), 0, 0, 1, 1},
  {&__pyx_n_s_StWeightIni, __pyx_k_StWeightIni, sizeof(__pyx_k_StWeightIni), 0, 0, 1, 1},
  {&__pyx_n_s_StWeightIniS, __pyx_k_StWeightIniS, sizeof(__pyx_k_StWeightIniS), 0, 0, 1, 1},
  {&__pyx_n_s_StWeightRedirIni, __pyx_k_StWeightRedirIni, sizeof(__pyx_k_StWeightRedirIni), 0, 0, 1, 1},
  {&__pyx_n_s_StartComment0extra, __pyx_k_StartComment0extra, sizeof(__pyx_k_StartComment0extra), 0, 0, 1, 1},
  {&__pyx_n_u_StartComment0extra, __pyx_k_StartComment0extra, sizeof(__pyx_k_StartComment0extra), 0, 1, 0, 1},
  {&__pyx_n_s_StartCommentOut, __pyx_k_StartCommentOut, sizeof(__pyx_k_StartCommentOut), 0, 0, 1, 1},
  {&__pyx_n_u_StartCommentOut, __pyx_k_StartCommentOut, sizeof(__pyx_k_StartCommentOut), 0, 1, 0, 1},
  {&__pyx_n_s_StateNameStr, __pyx_k_StateNameStr, sizeof(__pyx_k_StateNameStr), 0, 0, 1, 1},
  {&__pyx_n_u_StateNames, __pyx_k_StateNames, sizeof(__pyx_k_StateNames), 0, 1, 0, 1},
  {&__pyx_n_s_StateNode, __pyx_k_StateNode, sizeof(__pyx_k_StateNode), 0, 0, 1, 1},
  {&__pyx_n_u_StdDev, __pyx_k_StdDev, sizeof(__pyx_k_StdDev), 0, 1, 0, 1},
  {&__pyx_n_s_StdDevDecl, __pyx_k_StdDevDecl, sizeof(__pyx_k_StdDevDecl), 0, 0, 1, 1},
  {&__pyx_n_s_StdDevDecl_2, __pyx_k_StdDevDecl_2, sizeof(__pyx_k_StdDevDecl_2), 0, 0, 1, 1},
  {&__pyx_n_u_StdDevDecl_2, __pyx_k_StdDevDecl_2, sizeof(__pyx_k_StdDevDecl_2), 0, 1, 0, 1},
  {&__pyx_n_s_Step, __pyx_k_Step, sizeof(__pyx_k_Step), 0, 0, 1, 1},
  {&__pyx_n_s_Step_2, __pyx_k_Step_2, sizeof(__pyx_k_Step_2), 0, 0, 1, 1},
  {&__pyx_n_u_Step_2, __pyx_k_Step_2, sizeof(__pyx_k_Step_2), 0, 1, 0, 1},
  {&__pyx_n_u_Student, __pyx_k_Student, sizeof(__pyx_k_Student), 0, 1, 0, 1},
  {&__pyx_n_s_SubstituteVariables, __pyx_k_SubstituteVariables, sizeof(__pyx_k_SubstituteVariables), 0, 0, 1, 1},
  {&__pyx_n_s_Suite, __pyx_k_Suite, sizeof(__pyx_k_Suite), 0, 0, 1, 1},
  {&__pyx_n_u_SynapseRange, __pyx_k_SynapseRange, sizeof(__pyx_k_SynapseRange), 0, 1, 0, 1},
  {&__pyx_n_u_Synapses, __pyx_k_Synapses, sizeof(__pyx_k_Synapses), 0, 1, 0, 1},
  {&__pyx_n_u_Target, __pyx_k_Target, sizeof(__pyx_k_Target), 0, 1, 0, 1},
  {&__pyx_n_s_TargetName, __pyx_k_TargetName, sizeof(__pyx_k_TargetName), 0, 0, 1, 1},
  {&__pyx_n_s_TargetName_2, __pyx_k_TargetName_2, sizeof(__pyx_k_TargetName_2), 0, 0, 1, 1},
  {&__pyx_n_u_TargetName_2, __pyx_k_TargetName_2, sizeof(__pyx_k_TargetName_2), 0, 1, 0, 1},
  {&__pyx_n_u_Targetlist, __pyx_k_Targetlist, sizeof(__pyx_k_Targetlist), 0, 1, 0, 1},
  {&__pyx_n_s_TemplateDict, __pyx_k_TemplateDict, sizeof(__pyx_k_TemplateDict), 0, 0, 1, 1},
  {&__pyx_n_s_TemplatePath, __pyx_k_TemplatePath, sizeof(__pyx_k_TemplatePath), 0, 0, 1, 1},
  {&__pyx_n_s_TemplatePath_2, __pyx_k_TemplatePath_2, sizeof(__pyx_k_TemplatePath_2), 0, 0, 1, 1},
  {&__pyx_n_u_TemplatePath_2, __pyx_k_TemplatePath_2, sizeof(__pyx_k_TemplatePath_2), 0, 1, 0, 1},
  {&__pyx_n_s_Text, __pyx_k_Text, sizeof(__pyx_k_Text), 0, 0, 1, 1},
  {&__pyx_n_s_TextID, __pyx_k_TextID, sizeof(__pyx_k_TextID), 0, 0, 1, 1},
  {&__pyx_n_u_Time, __pyx_k_Time, sizeof(__pyx_k_Time), 0, 1, 0, 1},
  {&__pyx_n_s_TouslesNoms, __pyx_k_TouslesNoms, sizeof(__pyx_k_TouslesNoms), 0, 0, 1, 1},
  {&__pyx_n_s_TrainStdDev, __pyx_k_TrainStdDev, sizeof(__pyx_k_TrainStdDev), 0, 0, 1, 1},
  {&__pyx_n_u_Transfer, __pyx_k_Transfer, sizeof(__pyx_k_Transfer), 0, 1, 0, 1},
  {&__pyx_n_u_TransferGrad, __pyx_k_TransferGrad, sizeof(__pyx_k_TransferGrad), 0, 1, 0, 1},
  {&__pyx_n_u_TransferGradHess, __pyx_k_TransferGradHess, sizeof(__pyx_k_TransferGradHess), 0, 1, 0, 1},
  {&__pyx_n_u_TransferGradHessFD, __pyx_k_TransferGradHessFD, sizeof(__pyx_k_TransferGradHessFD), 0, 1, 0, 1},
  {&__pyx_n_u_TransferGradInput, __pyx_k_TransferGradInput, sizeof(__pyx_k_TransferGradInput), 0, 1, 0, 1},
  {&__pyx_n_s_TransferStr, __pyx_k_TransferStr, sizeof(__pyx_k_TransferStr), 0, 0, 1, 1},
  {&__pyx_n_u_TrueName, __pyx_k_TrueName, sizeof(__pyx_k_TrueName), 0, 1, 0, 1},
  {&__pyx_n_s_TypeError, __pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 0, 1, 1},
  {&__pyx_n_u_U, __pyx_k_U, sizeof(__pyx_k_U), 0, 1, 0, 1},
  {&__pyx_n_s_UseCount, __pyx_k_UseCount, sizeof(__pyx_k_UseCount), 0, 0, 1, 1},
  {&__pyx_n_s_UseCount_2, __pyx_k_UseCount_2, sizeof(__pyx_k_UseCount_2), 0, 0, 1, 1},
  {&__pyx_n_u_UseCount_2, __pyx_k_UseCount_2, sizeof(__pyx_k_UseCount_2), 0, 1, 0, 1},
  {&__pyx_n_s_UsedWeightStr, __pyx_k_UsedWeightStr, sizeof(__pyx_k_UsedWeightStr), 0, 0, 1, 1},
  {&__pyx_n_u_UsedWeights, __pyx_k_UsedWeights, sizeof(__pyx_k_UsedWeights), 0, 1, 0, 1},
  {&__pyx_n_u_User, __pyx_k_User, sizeof(__pyx_k_User), 0, 1, 0, 1},
  {&__pyx_n_s_UserName, __pyx_k_UserName, sizeof(__pyx_k_UserName), 0, 0, 1, 1},
  {&__pyx_n_s_UserName_2, __pyx_k_UserName_2, sizeof(__pyx_k_UserName_2), 0, 0, 1, 1},
  {&__pyx_n_u_UserName_2, __pyx_k_UserName_2, sizeof(__pyx_k_UserName_2), 0, 1, 0, 1},
  {&__pyx_n_s_ValToStr, __pyx_k_ValToStr, sizeof(__pyx_k_ValToStr), 0, 0, 1, 1},
  {&__pyx_n_s_Value, __pyx_k_Value, sizeof(__pyx_k_Value), 0, 0, 1, 1},
  {&__pyx_n_s_WStr, __pyx_k_WStr, sizeof(__pyx_k_WStr), 0, 0, 1, 1},
  {&__pyx_n_s_Weight, __pyx_k_Weight, sizeof(__pyx_k_Weight), 0, 0, 1, 1},
  {&__pyx_n_s_WeightDecl, __pyx_k_WeightDecl, sizeof(__pyx_k_WeightDecl), 0, 0, 1, 1},
  {&__pyx_n_s_WeightDecl_2, __pyx_k_WeightDecl_2, sizeof(__pyx_k_WeightDecl_2), 0, 0, 1, 1},
  {&__pyx_n_u_WeightDecl_2, __pyx_k_WeightDecl_2, sizeof(__pyx_k_WeightDecl_2), 0, 1, 0, 1},
  {&__pyx_n_s_WeightNameShortStr, __pyx_k_WeightNameShortStr, sizeof(__pyx_k_WeightNameShortStr), 0, 0, 1, 1},
  {&__pyx_n_s_WeightNameStr, __pyx_k_WeightNameStr, sizeof(__pyx_k_WeightNameStr), 0, 0, 1, 1},
  {&__pyx_n_u_WeightNames, __pyx_k_WeightNames, sizeof(__pyx_k_WeightNames), 0, 1, 0, 1},
  {&__pyx_n_u_WeightNamesShort, __pyx_k_WeightNamesShort, sizeof(__pyx_k_WeightNamesShort), 0, 1, 0, 1},
  {&__pyx_n_s_WeightRangeStr, __pyx_k_WeightRangeStr, sizeof(__pyx_k_WeightRangeStr), 0, 0, 1, 1},
  {&__pyx_n_u_WeightRanges, __pyx_k_WeightRanges, sizeof(__pyx_k_WeightRanges), 0, 1, 0, 1},
  {&__pyx_n_s_WeightRedir, __pyx_k_WeightRedir, sizeof(__pyx_k_WeightRedir), 0, 0, 1, 1},
  {&__pyx_n_u_WeightRedir_2, __pyx_k_WeightRedir_2, sizeof(__pyx_k_WeightRedir_2), 0, 1, 0, 1},
  {&__pyx_n_u_Weight_2, __pyx_k_Weight_2, sizeof(__pyx_k_Weight_2), 0, 1, 0, 1},
  {&__pyx_n_u_Weights, __pyx_k_Weights, sizeof(__pyx_k_Weights), 0, 1, 0, 1},
  {&__pyx_n_s_WithMatrix, __pyx_k_WithMatrix, sizeof(__pyx_k_WithMatrix), 0, 0, 1, 1},
  {&__pyx_n_u_WithMatrix, __pyx_k_WithMatrix, sizeof(__pyx_k_WithMatrix), 0, 1, 0, 1},
  {&__pyx_n_u_Xml, __pyx_k_Xml, sizeof(__pyx_k_Xml), 0, 1, 0, 1},
  {&__pyx_n_u_ZtZ, __pyx_k_ZtZ, sizeof(__pyx_k_ZtZ), 0, 1, 0, 1},
  {&__pyx_kp_u__10, __pyx_k__10, sizeof(__pyx_k__10), 0, 1, 0, 0},
  {&__pyx_kp_u__14, __pyx_k__14, sizeof(__pyx_k__14), 0, 1, 0, 0},
  {&__pyx_n_s__15, __pyx_k__15, sizeof(__pyx_k__15), 0, 0, 1, 1},
  {&__pyx_n_u__15, __pyx_k__15, sizeof(__pyx_k__15), 0, 1, 0, 1},
  {&__pyx_kp_u__2, __pyx_k__2, sizeof(__pyx_k__2), 0, 1, 0, 0},
  {&__pyx_kp_u__20, __pyx_k__20, sizeof(__pyx_k__20), 0, 1, 0, 0},
  {&__pyx_kp_u__21, __pyx_k__21, sizeof(__pyx_k__21), 0, 1, 0, 0},
  {&__pyx_kp_u__22, __pyx_k__22, sizeof(__pyx_k__22), 0, 1, 0, 0},
  {&__pyx_kp_u__23, __pyx_k__23, sizeof(__pyx_k__23), 0, 1, 0, 0},
  {&__pyx_kp_u__26, __pyx_k__26, sizeof(__pyx_k__26), 0, 1, 0, 0},
  {&__pyx_kp_u__27, __pyx_k__27, sizeof(__pyx_k__27), 0, 1, 0, 0},
  {&__pyx_kp_u__28, __pyx_k__28, sizeof(__pyx_k__28), 0, 1, 0, 0},
  {&__pyx_kp_u__30, __pyx_k__30, sizeof(__pyx_k__30), 0, 1, 0, 0},
  {&__pyx_kp_u__35, __pyx_k__35, sizeof(__pyx_k__35), 0, 1, 0, 0},
  {&__pyx_kp_u__36, __pyx_k__36, sizeof(__pyx_k__36), 0, 1, 0, 0},
  {&__pyx_kp_u__39, __pyx_k__39, sizeof(__pyx_k__39), 0, 1, 0, 0},
  {&__pyx_kp_u__40, __pyx_k__40, sizeof(__pyx_k__40), 0, 1, 0, 0},
  {&__pyx_n_s_addbra, __pyx_k_addbra, sizeof(__pyx_k_addbra), 0, 0, 1, 1},
  {&__pyx_n_s_addendofline, __pyx_k_addendofline, sizeof(__pyx_k_addendofline), 0, 0, 1, 1},
  {&__pyx_n_s_aincluded, __pyx_k_aincluded, sizeof(__pyx_k_aincluded), 0, 0, 1, 1},
  {&__pyx_n_s_atype, __pyx_k_atype, sizeof(__pyx_k_atype), 0, 0, 1, 1},
  {&__pyx_n_s_back, __pyx_k_back, sizeof(__pyx_k_back), 0, 0, 1, 1},
  {&__pyx_n_s_base, __pyx_k_base, sizeof(__pyx_k_base), 0, 0, 1, 1},
  {&__pyx_n_s_baseCodeFileName, __pyx_k_baseCodeFileName, sizeof(__pyx_k_baseCodeFileName), 0, 0, 1, 1},
  {&__pyx_n_s_basename, __pyx_k_basename, sizeof(__pyx_k_basename), 0, 0, 1, 1},
  {&__pyx_n_s_biasBaseId, __pyx_k_biasBaseId, sizeof(__pyx_k_biasBaseId), 0, 0, 1, 1},
  {&__pyx_n_u_biasBaseId, __pyx_k_biasBaseId, sizeof(__pyx_k_biasBaseId), 0, 1, 0, 1},
  {&__pyx_n_u_biasbasedcount, __pyx_k_biasbasedcount, sizeof(__pyx_k_biasbasedcount), 0, 1, 0, 1},
  {&__pyx_n_u_biasbasedlist, __pyx_k_biasbasedlist, sizeof(__pyx_k_biasbasedlist), 0, 1, 0, 1},
  {&__pyx_n_u_c, __pyx_k_c, sizeof(__pyx_k_c), 0, 1, 0, 1},
  {&__pyx_n_s_capitalize, __pyx_k_capitalize, sizeof(__pyx_k_capitalize), 0, 0, 1, 1},
  {&__pyx_kp_s_classdocs, __pyx_k_classdocs, sizeof(__pyx_k_classdocs), 0, 0, 1, 0},
  {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1},
  {&__pyx_kp_u_codeWriter, __pyx_k_codeWriter, sizeof(__pyx_k_codeWriter), 0, 1, 0, 0},
  {&__pyx_n_s_code_common_mini, __pyx_k_code_common_mini, sizeof(__pyx_k_code_common_mini), 0, 0, 1, 1},
  {&__pyx_n_u_code_templates, __pyx_k_code_templates, sizeof(__pyx_k_code_templates), 0, 1, 0, 1},
  {&__pyx_n_s_codeconst, __pyx_k_codeconst, sizeof(__pyx_k_codeconst), 0, 0, 1, 1},
  {&__pyx_n_s_codequote, __pyx_k_codequote, sizeof(__pyx_k_codequote), 0, 0, 1, 1},
  {&__pyx_n_u_codeversion, __pyx_k_codeversion, sizeof(__pyx_k_codeversion), 0, 1, 0, 1},
  {&__pyx_n_u_codewriter, __pyx_k_codewriter, sizeof(__pyx_k_codewriter), 0, 1, 0, 1},
  {&__pyx_n_s_collections, __pyx_k_collections, sizeof(__pyx_k_collections), 0, 0, 1, 1},
  {&__pyx_n_s_commentCount, __pyx_k_commentCount, sizeof(__pyx_k_commentCount), 0, 0, 1, 1},
  {&__pyx_n_s_commondict, __pyx_k_commondict, sizeof(__pyx_k_commondict), 0, 0, 1, 1},
  {&__pyx_n_s_compile, __pyx_k_compile, sizeof(__pyx_k_compile), 0, 0, 1, 1},
  {&__pyx_n_s_computedNodes, __pyx_k_computedNodes, sizeof(__pyx_k_computedNodes), 0, 0, 1, 1},
  {&__pyx_n_s_configuration, __pyx_k_configuration, sizeof(__pyx_k_configuration), 0, 0, 1, 1},
  {&__pyx_n_s_created, __pyx_k_created, sizeof(__pyx_k_created), 0, 0, 1, 1},
  {&__pyx_n_u_created, __pyx_k_created, sizeof(__pyx_k_created), 0, 1, 0, 1},
  {&__pyx_n_s_ctUnknown, __pyx_k_ctUnknown, sizeof(__pyx_k_ctUnknown), 0, 0, 1, 1},
  {&__pyx_kp_u_d, __pyx_k_d, sizeof(__pyx_k_d), 0, 1, 0, 0},
  {&__pyx_kp_u_d_m_Y, __pyx_k_d_m_Y, sizeof(__pyx_k_d_m_Y), 0, 1, 0, 0},
  {&__pyx_kp_u_d_m_Y_H_M_S, __pyx_k_d_m_Y_H_M_S, sizeof(__pyx_k_d_m_Y_H_M_S), 0, 1, 0, 0},
  {&__pyx_n_s_dataCount, __pyx_k_dataCount, sizeof(__pyx_k_dataCount), 0, 0, 1, 1},
  {&__pyx_n_u_datacount, __pyx_k_datacount, sizeof(__pyx_k_datacount), 0, 1, 0, 1},
  {&__pyx_n_s_datarange, __pyx_k_datarange, sizeof(__pyx_k_datarange), 0, 0, 1, 1},
  {&__pyx_n_u_datarange, __pyx_k_datarange, sizeof(__pyx_k_datarange), 0, 1, 0, 1},
  {&__pyx_n_u_datarecord, __pyx_k_datarecord, sizeof(__pyx_k_datarecord), 0, 1, 0, 1},
  {&__pyx_n_s_date, __pyx_k_date, sizeof(__pyx_k_date), 0, 0, 1, 1},
  {&__pyx_n_u_date, __pyx_k_date, sizeof(__pyx_k_date), 0, 1, 0, 1},
  {&__pyx_n_s_datetime, __pyx_k_datetime, sizeof(__pyx_k_datetime), 0, 0, 1, 1},
  {&__pyx_n_s_decode, __pyx_k_decode, sizeof(__pyx_k_decode), 0, 0, 1, 1},
  {&__pyx_n_s_defaultdict, __pyx_k_defaultdict, sizeof(__pyx_k_defaultdict), 0, 0, 1, 1},
  {&__pyx_n_u_defineMODEL, __pyx_k_defineMODEL, sizeof(__pyx_k_defineMODEL), 0, 1, 0, 1},
  {&__pyx_n_u_defineMODELNAME, __pyx_k_defineMODELNAME, sizeof(__pyx_k_defineMODELNAME), 0, 1, 0, 1},
  {&__pyx_n_u_depends, __pyx_k_depends, sizeof(__pyx_k_depends), 0, 1, 0, 1},
  {&__pyx_n_s_dimension, __pyx_k_dimension, sizeof(__pyx_k_dimension), 0, 0, 1, 1},
  {&__pyx_n_s_dirname, __pyx_k_dirname, sizeof(__pyx_k_dirname), 0, 0, 1, 1},
  {&__pyx_n_s_dispersionMatrix, __pyx_k_dispersionMatrix, sizeof(__pyx_k_dispersionMatrix), 0, 0, 1, 1},
  {&__pyx_n_u_dll, __pyx_k_dll, sizeof(__pyx_k_dll), 0, 1, 0, 1},
  {&__pyx_n_u_dlm, __pyx_k_dlm, sizeof(__pyx_k_dlm), 0, 1, 0, 1},
  {&__pyx_n_s_doc, __pyx_k_doc, sizeof(__pyx_k_doc), 0, 0, 1, 1},
  {&__pyx_n_s_dosave, __pyx_k_dosave, sizeof(__pyx_k_dosave), 0, 0, 1, 1},
  {&__pyx_n_s_dosub, __pyx_k_dosub, sizeof(__pyx_k_dosub), 0, 0, 1, 1},
  {&__pyx_n_s_dynamiclinking, __pyx_k_dynamiclinking, sizeof(__pyx_k_dynamiclinking), 0, 0, 1, 1},
  {&__pyx_n_s_dynamiclinking_2, __pyx_k_dynamiclinking_2, sizeof(__pyx_k_dynamiclinking_2), 0, 0, 1, 1},
  {&__pyx_n_u_dynamiclinking_2, __pyx_k_dynamiclinking_2, sizeof(__pyx_k_dynamiclinking_2), 0, 1, 0, 1},
  {&__pyx_n_s_enter, __pyx_k_enter, sizeof(__pyx_k_enter), 0, 0, 1, 1},
  {&__pyx_n_s_err, __pyx_k_err, sizeof(__pyx_k_err), 0, 0, 1, 1},
  {&__pyx_kp_u_error_on_s_replacement, __pyx_k_error_on_s_replacement, sizeof(__pyx_k_error_on_s_replacement), 0, 1, 0, 0},
  {&__pyx_n_s_exit, __pyx_k_exit, sizeof(__pyx_k_exit), 0, 0, 1, 1},
  {&__pyx_n_s_ext, __pyx_k_ext, sizeof(__pyx_k_ext), 0, 0, 1, 1},
  {&__pyx_n_s_extranorm, __pyx_k_extranorm, sizeof(__pyx_k_extranorm), 0, 0, 1, 1},
  {&__pyx_n_s_fType, __pyx_k_fType, sizeof(__pyx_k_fType), 0, 0, 1, 1},
  {&__pyx_n_s_fct, __pyx_k_fct, sizeof(__pyx_k_fct), 0, 0, 1, 1},
  {&__pyx_n_s_ff, __pyx_k_ff, sizeof(__pyx_k_ff), 0, 0, 1, 1},
  {&__pyx_kp_u_fg_ua, __pyx_k_fg_ua, sizeof(__pyx_k_fg_ua), 0, 1, 0, 0},
  {&__pyx_n_s_file, __pyx_k_file, sizeof(__pyx_k_file), 0, 0, 1, 1},
  {&__pyx_n_s_filename, __pyx_k_filename, sizeof(__pyx_k_filename), 0, 0, 1, 1},
  {&__pyx_n_s_fillstr, __pyx_k_fillstr, sizeof(__pyx_k_fillstr), 0, 0, 1, 1},
  {&__pyx_n_s_fname, __pyx_k_fname, sizeof(__pyx_k_fname), 0, 0, 1, 1},
  {&__pyx_n_s_format, __pyx_k_format, sizeof(__pyx_k_format), 0, 0, 1, 1},
  {&__pyx_n_s_ftBase, __pyx_k_ftBase, sizeof(__pyx_k_ftBase), 0, 0, 1, 1},
  {&__pyx_n_s_ftDLM, __pyx_k_ftDLM, sizeof(__pyx_k_ftDLM), 0, 0, 1, 1},
  {&__pyx_n_s_ftDesc, __pyx_k_ftDesc, sizeof(__pyx_k_ftDesc), 0, 0, 1, 1},
  {&__pyx_n_s_ftGradient, __pyx_k_ftGradient, sizeof(__pyx_k_ftGradient), 0, 0, 1, 1},
  {&__pyx_n_s_ftMakeDLM, __pyx_k_ftMakeDLM, sizeof(__pyx_k_ftMakeDLM), 0, 0, 1, 1},
  {&__pyx_n_s_ftOnlyHeader, __pyx_k_ftOnlyHeader, sizeof(__pyx_k_ftOnlyHeader), 0, 0, 1, 1},
  {&__pyx_n_s_ftSetupMulti, __pyx_k_ftSetupMulti, sizeof(__pyx_k_ftSetupMulti), 0, 0, 1, 1},
  {&__pyx_n_s_ftSetupPy, __pyx_k_ftSetupPy, sizeof(__pyx_k_ftSetupPy), 0, 0, 1, 1},
  {&__pyx_n_s_ftSpecialSub, __pyx_k_ftSpecialSub, sizeof(__pyx_k_ftSpecialSub), 0, 0, 1, 1},
  {&__pyx_n_s_ftTransfert, __pyx_k_ftTransfert, sizeof(__pyx_k_ftTransfert), 0, 0, 1, 1},
  {&__pyx_n_s_ftTransfertLeverage, __pyx_k_ftTransfertLeverage, sizeof(__pyx_k_ftTransfertLeverage), 0, 0, 1, 1},
  {&__pyx_n_s_ftWithHeader, __pyx_k_ftWithHeader, sizeof(__pyx_k_ftWithHeader), 0, 0, 1, 1},
  {&__pyx_n_s_ftbasetrain, __pyx_k_ftbasetrain, sizeof(__pyx_k_ftbasetrain), 0, 0, 1, 1},
  {&__pyx_n_s_ftbaseuse, __pyx_k_ftbaseuse, sizeof(__pyx_k_ftbaseuse), 0, 0, 1, 1},
  {&__pyx_n_s_ftmodeltrain, __pyx_k_ftmodeltrain, sizeof(__pyx_k_ftmodeltrain), 0, 0, 1, 1},
  {&__pyx_n_s_ftsetupcfg, __pyx_k_ftsetupcfg, sizeof(__pyx_k_ftsetupcfg), 0, 0, 1, 1},
  {&__pyx_n_s_ftsinglebasetrain, __pyx_k_ftsinglebasetrain, sizeof(__pyx_k_ftsinglebasetrain), 0, 0, 1, 1},
  {&__pyx_n_s_ftsingletraindll, __pyx_k_ftsingletraindll, sizeof(__pyx_k_ftsingletraindll), 0, 0, 1, 1},
  {&__pyx_n_s_fttrain, __pyx_k_fttrain, sizeof(__pyx_k_fttrain), 0, 0, 1, 1},
  {&__pyx_n_s_fttraindll, __pyx_k_fttraindll, sizeof(__pyx_k_fttraindll), 0, 0, 1, 1},
  {&__pyx_n_s_ftusedll, __pyx_k_ftusedll, sizeof(__pyx_k_ftusedll), 0, 0, 1, 1},
  {&__pyx_n_s_ftwithCext, __pyx_k_ftwithCext, sizeof(__pyx_k_ftwithCext), 0, 0, 1, 1},
  {&__pyx_n_s_ftype, __pyx_k_ftype, sizeof(__pyx_k_ftype), 0, 0, 1, 1},
  {&__pyx_n_s_functools, __pyx_k_functools, sizeof(__pyx_k_functools), 0, 0, 1, 1},
  {&__pyx_n_s_garb, __pyx_k_garb, sizeof(__pyx_k_garb), 0, 0, 1, 1},
  {&__pyx_n_s_getBiasBased, __pyx_k_getBiasBased, sizeof(__pyx_k_getBiasBased), 0, 0, 1, 1},
  {&__pyx_n_u_getBiasBased, __pyx_k_getBiasBased, sizeof(__pyx_k_getBiasBased), 0, 1, 0, 1},
  {&__pyx_n_s_getCodeVersion, __pyx_k_getCodeVersion, sizeof(__pyx_k_getCodeVersion), 0, 0, 1, 1},
  {&__pyx_n_s_getDataRange, __pyx_k_getDataRange, sizeof(__pyx_k_getDataRange), 0, 0, 1, 1},
  {&__pyx_n_s_getDynamicLinking, __pyx_k_getDynamicLinking, sizeof(__pyx_k_getDynamicLinking), 0, 0, 1, 1},
  {&__pyx_n_s_getModuleType, __pyx_k_getModuleType, sizeof(__pyx_k_getModuleType), 0, 0, 1, 1},
  {&__pyx_n_s_getOutputLinks, __pyx_k_getOutputLinks, sizeof(__pyx_k_getOutputLinks), 0, 0, 1, 1},
  {&__pyx_n_u_getOutputLinks, __pyx_k_getOutputLinks, sizeof(__pyx_k_getOutputLinks), 0, 1, 0, 1},
  {&__pyx_n_s_getTemplate, __pyx_k_getTemplate, sizeof(__pyx_k_getTemplate), 0, 0, 1, 1},
  {&__pyx_n_s_getUseCodeVersion, __pyx_k_getUseCodeVersion, sizeof(__pyx_k_getUseCodeVersion), 0, 0, 1, 1},
  {&__pyx_n_s_gethostname, __pyx_k_gethostname, sizeof(__pyx_k_gethostname), 0, 0, 1, 1},
  {&__pyx_n_s_getpass, __pyx_k_getpass, sizeof(__pyx_k_getpass), 0, 0, 1, 1},
  {&__pyx_n_s_getuser, __pyx_k_getuser, sizeof(__pyx_k_getuser), 0, 0, 1, 1},
  {&__pyx_n_u_grd, __pyx_k_grd, sizeof(__pyx_k_grd), 0, 1, 0, 1},
  {&__pyx_n_s_group, __pyx_k_group, sizeof(__pyx_k_group), 0, 0, 1, 1},
  {&__pyx_n_s_hasMinMax, __pyx_k_hasMinMax, sizeof(__pyx_k_hasMinMax), 0, 0, 1, 1},
  {&__pyx_n_s_header, __pyx_k_header, sizeof(__pyx_k_header), 0, 0, 1, 1},
  {&__pyx_n_s_hidden, __pyx_k_hidden, sizeof(__pyx_k_hidden), 0, 0, 1, 1},
  {&__pyx_n_u_hidden, __pyx_k_hidden, sizeof(__pyx_k_hidden), 0, 1, 0, 1},
  {&__pyx_n_s_hiddenCount, __pyx_k_hiddenCount, sizeof(__pyx_k_hiddenCount), 0, 0, 1, 1},
  {&__pyx_n_u_hiddenCount, __pyx_k_hiddenCount, sizeof(__pyx_k_hiddenCount), 0, 1, 0, 1},
  {&__pyx_n_s_i, __pyx_k_i, sizeof(__pyx_k_i), 0, 0, 1, 1},
  {&__pyx_kp_u_ia_ib, __pyx_k_ia_ib, sizeof(__pyx_k_ia_ib), 0, 1, 0, 0},
  {&__pyx_kp_u_if_ig, __pyx_k_if_ig, sizeof(__pyx_k_if_ig), 0, 1, 0, 0},
  {&__pyx_kp_u_if_jf, __pyx_k_if_jf, sizeof(__pyx_k_if_jf), 0, 1, 0, 0},
  {&__pyx_kp_u_ig_ih, __pyx_k_ig_ih, sizeof(__pyx_k_ig_ih), 0, 1, 0, 0},
  {&__pyx_kp_u_ig_jg, __pyx_k_ig_jg, sizeof(__pyx_k_ig_jg), 0, 1, 0, 0},
  {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1},
  {&__pyx_n_s_included, __pyx_k_included, sizeof(__pyx_k_included), 0, 0, 1, 1},
  {&__pyx_n_s_ind, __pyx_k_ind, sizeof(__pyx_k_ind), 0, 0, 1, 1},
  {&__pyx_n_s_indent, __pyx_k_indent, sizeof(__pyx_k_indent), 0, 0, 1, 1},
  {&__pyx_n_s_index, __pyx_k_index, sizeof(__pyx_k_index), 0, 0, 1, 1},
  {&__pyx_n_u_indexoutput, __pyx_k_indexoutput, sizeof(__pyx_k_indexoutput), 0, 1, 0, 1},
  {&__pyx_n_s_init, __pyx_k_init, sizeof(__pyx_k_init), 0, 0, 1, 1},
  {&__pyx_n_s_inputCount, __pyx_k_inputCount, sizeof(__pyx_k_inputCount), 0, 0, 1, 1},
  {&__pyx_n_u_inputNamesFullDecl, __pyx_k_inputNamesFullDecl, sizeof(__pyx_k_inputNamesFullDecl), 0, 1, 0, 1},
  {&__pyx_n_s_inputNodes, __pyx_k_inputNodes, sizeof(__pyx_k_inputNodes), 0, 0, 1, 1},
  {&__pyx_n_u_inputs, __pyx_k_inputs, sizeof(__pyx_k_inputs), 0, 1, 0, 1},
  {&__pyx_n_u_int_indexoutput, __pyx_k_int_indexoutput, sizeof(__pyx_k_int_indexoutput), 0, 1, 0, 1},
  {&__pyx_n_u_intdecl, __pyx_k_intdecl, sizeof(__pyx_k_intdecl), 0, 1, 0, 1},
  {&__pyx_n_s_isLinear, __pyx_k_isLinear, sizeof(__pyx_k_isLinear), 0, 0, 1, 1},
  {&__pyx_n_s_isinf, __pyx_k_isinf, sizeof(__pyx_k_isinf), 0, 0, 1, 1},
  {&__pyx_kp_u_iu_ju, __pyx_k_iu_ju, sizeof(__pyx_k_iu_ju), 0, 1, 0, 0},
  {&__pyx_n_s_join, __pyx_k_join, sizeof(__pyx_k_join), 0, 0, 1, 1},
  {&__pyx_n_s_keys, __pyx_k_keys, sizeof(__pyx_k_keys), 0, 0, 1, 1},
  {&__pyx_n_u_l, __pyx_k_l, sizeof(__pyx_k_l), 0, 1, 0, 1},
  {&__pyx_n_u_larten7732, __pyx_k_larten7732, sizeof(__pyx_k_larten7732), 0, 1, 0, 1},
  {&__pyx_n_u_lev, __pyx_k_lev, sizeof(__pyx_k_lev), 0, 1, 0, 1},
  {&__pyx_n_u_libname, __pyx_k_libname, sizeof(__pyx_k_libname), 0, 1, 0, 1},
  {&__pyx_n_u_linear, __pyx_k_linear, sizeof(__pyx_k_linear), 0, 1, 0, 1},
  {&__pyx_n_s_lower, __pyx_k_lower, sizeof(__pyx_k_lower), 0, 0, 1, 1},
  {&__pyx_n_s_lst, __pyx_k_lst, sizeof(__pyx_k_lst), 0, 0, 1, 1},
  {&__pyx_n_s_lst2, __pyx_k_lst2, sizeof(__pyx_k_lst2), 0, 0, 1, 1},
  {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1},
  {&__pyx_n_s_mainModel, __pyx_k_mainModel, sizeof(__pyx_k_mainModel), 0, 0, 1, 1},
  {&__pyx_n_s_mark, __pyx_k_mark, sizeof(__pyx_k_mark), 0, 0, 1, 1},
  {&__pyx_n_u_mark, __pyx_k_mark, sizeof(__pyx_k_mark), 0, 1, 0, 1},
  {&__pyx_n_s_markdate, __pyx_k_markdate, sizeof(__pyx_k_markdate), 0, 0, 1, 1},
  {&__pyx_n_u_markdate, __pyx_k_markdate, sizeof(__pyx_k_markdate), 0, 1, 0, 1},
  {&__pyx_n_s_markversion, __pyx_k_markversion, sizeof(__pyx_k_markversion), 0, 0, 1, 1},
  {&__pyx_n_u_markversion, __pyx_k_markversion, sizeof(__pyx_k_markversion), 0, 1, 0, 1},
  {&__pyx_n_s_memsep, __pyx_k_memsep, sizeof(__pyx_k_memsep), 0, 0, 1, 1},
  {&__pyx_n_s_metaclass, __pyx_k_metaclass, sizeof(__pyx_k_metaclass), 0, 0, 1, 1},
  {&__pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_k_metaphor_monal_lcode_codewriter, sizeof(__pyx_k_metaphor_monal_lcode_codewriter), 0, 0, 1, 1},
  {&__pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_k_metaphor_monal_lcode_codewriter_2, sizeof(__pyx_k_metaphor_monal_lcode_codewriter_2), 0, 0, 1, 0},
  {&__pyx_n_s_metaphor_nntoolbox_utils, __pyx_k_metaphor_nntoolbox_utils, sizeof(__pyx_k_metaphor_nntoolbox_utils), 0, 0, 1, 1},
  {&__pyx_n_s_mkdtemp, __pyx_k_mkdtemp, sizeof(__pyx_k_mkdtemp), 0, 0, 1, 1},
  {&__pyx_n_s_model, __pyx_k_model, sizeof(__pyx_k_model), 0, 0, 1, 1},
  {&__pyx_n_u_model, __pyx_k_model, sizeof(__pyx_k_model), 0, 1, 0, 1},
  {&__pyx_n_s_modelCount, __pyx_k_modelCount, sizeof(__pyx_k_modelCount), 0, 0, 1, 1},
  {&__pyx_n_u_modelNameList, __pyx_k_modelNameList, sizeof(__pyx_k_modelNameList), 0, 1, 0, 1},
  {&__pyx_n_u_modelTrueNameList, __pyx_k_modelTrueNameList, sizeof(__pyx_k_modelTrueNameList), 0, 1, 0, 1},
  {&__pyx_n_s_modelType, __pyx_k_modelType, sizeof(__pyx_k_modelType), 0, 0, 1, 1},
  {&__pyx_n_u_modelcount, __pyx_k_modelcount, sizeof(__pyx_k_modelcount), 0, 1, 0, 1},
  {&__pyx_n_s_models, __pyx_k_models, sizeof(__pyx_k_models), 0, 0, 1, 1},
  {&__pyx_n_u_models, __pyx_k_models, sizeof(__pyx_k_models), 0, 1, 0, 1},
  {&__pyx_n_s_module, __pyx_k_module, sizeof(__pyx_k_module), 0, 0, 1, 1},
  {&__pyx_n_s_moduleName, __pyx_k_moduleName, sizeof(__pyx_k_moduleName), 0, 0, 1, 1},
  {&__pyx_n_s_moduleName_2, __pyx_k_moduleName_2, sizeof(__pyx_k_moduleName_2), 0, 0, 1, 1},
  {&__pyx_n_u_moduleName_2, __pyx_k_moduleName_2, sizeof(__pyx_k_moduleName_2), 0, 1, 0, 1},
  {&__pyx_n_s_modulo, __pyx_k_modulo, sizeof(__pyx_k_modulo), 0, 0, 1, 1},
  {&__pyx_n_s_monalversion, __pyx_k_monalversion, sizeof(__pyx_k_monalversion), 0, 0, 1, 1},
  {&__pyx_n_s_mu, __pyx_k_mu, sizeof(__pyx_k_mu), 0, 0, 1, 1},
  {&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1},
  {&__pyx_kp_u_ndesc_txt, __pyx_k_ndesc_txt, sizeof(__pyx_k_ndesc_txt), 0, 1, 0, 0},
  {&__pyx_n_s_ndim, __pyx_k_ndim, sizeof(__pyx_k_ndim), 0, 0, 1, 1},
  {&__pyx_n_s_needPotential, __pyx_k_needPotential, sizeof(__pyx_k_needPotential), 0, 0, 1, 1},
  {&__pyx_n_s_needpot, __pyx_k_needpot, sizeof(__pyx_k_needpot), 0, 0, 1, 1},
  {&__pyx_n_s_netSource, __pyx_k_netSource, sizeof(__pyx_k_netSource), 0, 0, 1, 1},
  {&__pyx_n_s_nkDyn, __pyx_k_nkDyn, sizeof(__pyx_k_nkDyn), 0, 0, 1, 1},
  {&__pyx_n_s_nkStat, __pyx_k_nkStat, sizeof(__pyx_k_nkStat), 0, 0, 1, 1},
  {&__pyx_n_s_nl, __pyx_k_nl, sizeof(__pyx_k_nl), 0, 0, 1, 1},
  {&__pyx_n_s_nlf, __pyx_k_nlf, sizeof(__pyx_k_nlf), 0, 0, 1, 1},
  {&__pyx_n_s_nmodel, __pyx_k_nmodel, sizeof(__pyx_k_nmodel), 0, 0, 1, 1},
  {&__pyx_n_s_node, __pyx_k_node, sizeof(__pyx_k_node), 0, 0, 1, 1},
  {&__pyx_n_s_nodeCount, __pyx_k_nodeCount, sizeof(__pyx_k_nodeCount), 0, 0, 1, 1},
  {&__pyx_n_u_nodeCount, __pyx_k_nodeCount, sizeof(__pyx_k_nodeCount), 0, 1, 0, 1},
  {&__pyx_n_s_nonASCIICharsConvert, __pyx_k_nonASCIICharsConvert, sizeof(__pyx_k_nonASCIICharsConvert), 0, 0, 1, 1},
  {&__pyx_n_s_nostartint, __pyx_k_nostartint, sizeof(__pyx_k_nostartint), 0, 0, 1, 1},
  {&__pyx_n_s_now, __pyx_k_now, sizeof(__pyx_k_now), 0, 0, 1, 1},
  {&__pyx_n_s_np, __pyx_k_np, sizeof(__pyx_k_np), 0, 0, 1, 1},
  {&__pyx_n_s_numpy, __pyx_k_numpy, sizeof(__pyx_k_numpy), 0, 0, 1, 1},
  {&__pyx_n_s_open, __pyx_k_open, sizeof(__pyx_k_open), 0, 0, 1, 1},
  {&__pyx_n_s_order, __pyx_k_order, sizeof(__pyx_k_order), 0, 0, 1, 1},
  {&__pyx_n_s_original, __pyx_k_original, sizeof(__pyx_k_original), 0, 0, 1, 1},
  {&__pyx_n_s_originallink, __pyx_k_originallink, sizeof(__pyx_k_originallink), 0, 0, 1, 1},
  {&__pyx_n_s_originallink_2, __pyx_k_originallink_2, sizeof(__pyx_k_originallink_2), 0, 0, 1, 1},
  {&__pyx_n_u_originallink_2, __pyx_k_originallink_2, sizeof(__pyx_k_originallink_2), 0, 1, 0, 1},
  {&__pyx_n_s_originbase, __pyx_k_originbase, sizeof(__pyx_k_originbase), 0, 0, 1, 1},
  {&__pyx_n_u_originbase, __pyx_k_originbase, sizeof(__pyx_k_originbase), 0, 1, 0, 1},
  {&__pyx_n_s_os, __pyx_k_os, sizeof(__pyx_k_os), 0, 0, 1, 1},
  {&__pyx_n_s_outputCount, __pyx_k_outputCount, sizeof(__pyx_k_outputCount), 0, 0, 1, 1},
  {&__pyx_n_u_outputCount, __pyx_k_outputCount, sizeof(__pyx_k_outputCount), 0, 1, 0, 1},
  {&__pyx_n_s_outputLinkId, __pyx_k_outputLinkId, sizeof(__pyx_k_outputLinkId), 0, 0, 1, 1},
  {&__pyx_n_u_outputLinkId, __pyx_k_outputLinkId, sizeof(__pyx_k_outputLinkId), 0, 1, 0, 1},
  {&__pyx_n_u_outputNamesFullDecl, __pyx_k_outputNamesFullDecl, sizeof(__pyx_k_outputNamesFullDecl), 0, 1, 0, 1},
  {&__pyx_n_s_outputNodes, __pyx_k_outputNodes, sizeof(__pyx_k_outputNodes), 0, 0, 1, 1},
  {&__pyx_n_u_outputsynCount, __pyx_k_outputsynCount, sizeof(__pyx_k_outputsynCount), 0, 1, 0, 1},
  {&__pyx_n_u_outputsynlist, __pyx_k_outputsynlist, sizeof(__pyx_k_outputsynlist), 0, 1, 0, 1},
  {&__pyx_n_s_owner, __pyx_k_owner, sizeof(__pyx_k_owner), 0, 0, 1, 1},
  {&__pyx_n_s_p, __pyx_k_p, sizeof(__pyx_k_p), 0, 0, 1, 1},
  {&__pyx_n_s_param, __pyx_k_param, sizeof(__pyx_k_param), 0, 0, 1, 1},
  {&__pyx_n_s_paramCount, __pyx_k_paramCount, sizeof(__pyx_k_paramCount), 0, 0, 1, 1},
  {&__pyx_n_s_paramfilename, __pyx_k_paramfilename, sizeof(__pyx_k_paramfilename), 0, 0, 1, 1},
  {&__pyx_n_u_paramfilename, __pyx_k_paramfilename, sizeof(__pyx_k_paramfilename), 0, 1, 0, 1},
  {&__pyx_n_s_partial, __pyx_k_partial, sizeof(__pyx_k_partial), 0, 0, 1, 1},
  {&__pyx_n_s_partialExtraParamsInitStr, __pyx_k_partialExtraParamsInitStr, sizeof(__pyx_k_partialExtraParamsInitStr), 0, 0, 1, 1},
  {&__pyx_n_s_path, __pyx_k_path, sizeof(__pyx_k_path), 0, 0, 1, 1},
  {&__pyx_n_s_pptyleverage, __pyx_k_pptyleverage, sizeof(__pyx_k_pptyleverage), 0, 0, 1, 1},
  {&__pyx_n_s_pptyvalue, __pyx_k_pptyvalue, sizeof(__pyx_k_pptyvalue), 0, 0, 1, 1},
  {&__pyx_n_s_prepare, __pyx_k_prepare, sizeof(__pyx_k_prepare), 0, 0, 1, 1},
  {&__pyx_n_s_print, __pyx_k_print, sizeof(__pyx_k_print), 0, 0, 1, 1},
  {&__pyx_n_s_property, __pyx_k_property, sizeof(__pyx_k_property), 0, 0, 1, 1},
  {&__pyx_n_s_proprietaryname, __pyx_k_proprietaryname, sizeof(__pyx_k_proprietaryname), 0, 0, 1, 1},
  {&__pyx_kp_u_py, __pyx_k_py, sizeof(__pyx_k_py), 0, 1, 0, 0},
  {&__pyx_n_s_qualname, __pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 0, 1, 1},
  {&__pyx_n_s_range, __pyx_k_range, sizeof(__pyx_k_range), 0, 0, 1, 1},
  {&__pyx_n_u_rb, __pyx_k_rb, sizeof(__pyx_k_rb), 0, 1, 0, 1},
  {&__pyx_n_s_re, __pyx_k_re, sizeof(__pyx_k_re), 0, 0, 1, 1},
  {&__pyx_n_s_read, __pyx_k_read, sizeof(__pyx_k_read), 0, 0, 1, 1},
  {&__pyx_kp_u_real_potential, __pyx_k_real_potential, sizeof(__pyx_k_real_potential), 0, 1, 0, 0},
  {&__pyx_n_u_real_ptrinputs, __pyx_k_real_ptrinputs, sizeof(__pyx_k_real_ptrinputs), 0, 1, 0, 1},
  {&__pyx_n_u_realptrdecl, __pyx_k_realptrdecl, sizeof(__pyx_k_realptrdecl), 0, 1, 0, 1},
  {&__pyx_n_s_replace, __pyx_k_replace, sizeof(__pyx_k_replace), 0, 0, 1, 1},
  {&__pyx_n_s_replfct, __pyx_k_replfct, sizeof(__pyx_k_replfct), 0, 0, 1, 1},
  {&__pyx_n_s_res, __pyx_k_res, sizeof(__pyx_k_res), 0, 0, 1, 1},
  {&__pyx_n_s_result, __pyx_k_result, sizeof(__pyx_k_result), 0, 0, 1, 1},
  {&__pyx_n_u_returnInputName, __pyx_k_returnInputName, sizeof(__pyx_k_returnInputName), 0, 1, 0, 1},
  {&__pyx_n_u_returnOutputName, __pyx_k_returnOutputName, sizeof(__pyx_k_returnOutputName), 0, 1, 0, 1},
  {&__pyx_kp_u_s, __pyx_k_s, sizeof(__pyx_k_s), 0, 1, 0, 0},
  {&__pyx_kp_u_s_2, __pyx_k_s_2, sizeof(__pyx_k_s_2), 0, 1, 0, 0},
  {&__pyx_kp_u_s_3, __pyx_k_s_3, sizeof(__pyx_k_s_3), 0, 1, 0, 0},
  {&__pyx_kp_u_s_4, __pyx_k_s_4, sizeof(__pyx_k_s_4), 0, 1, 0, 0},
  {&__pyx_n_s_safemakedirs, __pyx_k_safemakedirs, sizeof(__pyx_k_safemakedirs), 0, 0, 1, 1},
  {&__pyx_n_s_sdir, __pyx_k_sdir, sizeof(__pyx_k_sdir), 0, 0, 1, 1},
  {&__pyx_n_s_self, __pyx_k_self, sizeof(__pyx_k_self), 0, 0, 1, 1},
  {&__pyx_n_s_setCurrentFileTypes, __pyx_k_setCurrentFileTypes, sizeof(__pyx_k_setCurrentFileTypes), 0, 0, 1, 1},
  {&__pyx_n_s_setReplaceDict, __pyx_k_setReplaceDict, sizeof(__pyx_k_setReplaceDict), 0, 0, 1, 1},
  {&__pyx_n_s_setSource, __pyx_k_setSource, sizeof(__pyx_k_setSource), 0, 0, 1, 1},
  {&__pyx_n_s_setter, __pyx_k_setter, sizeof(__pyx_k_setter), 0, 0, 1, 1},
  {&__pyx_kp_u_setup_cfg, __pyx_k_setup_cfg, sizeof(__pyx_k_setup_cfg), 0, 1, 0, 0},
  {&__pyx_kp_u_setup_py, __pyx_k_setup_py, sizeof(__pyx_k_setup_py), 0, 1, 0, 0},
  {&__pyx_n_s_shape, __pyx_k_shape, sizeof(__pyx_k_shape), 0, 0, 1, 1},
  {&__pyx_n_s_singleGradient, __pyx_k_singleGradient, sizeof(__pyx_k_singleGradient), 0, 0, 1, 1},
  {&__pyx_n_u_singleGradient, __pyx_k_singleGradient, sizeof(__pyx_k_singleGradient), 0, 1, 0, 1},
  {&__pyx_n_s_six, __pyx_k_six, sizeof(__pyx_k_six), 0, 0, 1, 1},
  {&__pyx_n_s_smiles, __pyx_k_smiles, sizeof(__pyx_k_smiles), 0, 0, 1, 1},
  {&__pyx_n_u_smiles, __pyx_k_smiles, sizeof(__pyx_k_smiles), 0, 1, 0, 1},
  {&__pyx_n_u_smilesList, __pyx_k_smilesList, sizeof(__pyx_k_smilesList), 0, 1, 0, 1},
  {&__pyx_n_s_socket, __pyx_k_socket, sizeof(__pyx_k_socket), 0, 0, 1, 1},
  {&__pyx_n_s_source, __pyx_k_source, sizeof(__pyx_k_source), 0, 0, 1, 1},
  {&__pyx_n_s_specialsub, __pyx_k_specialsub, sizeof(__pyx_k_specialsub), 0, 0, 1, 1},
  {&__pyx_n_s_split, __pyx_k_split, sizeof(__pyx_k_split), 0, 0, 1, 1},
  {&__pyx_n_s_splitext, __pyx_k_splitext, sizeof(__pyx_k_splitext), 0, 0, 1, 1},
  {&__pyx_n_s_squeeze, __pyx_k_squeeze, sizeof(__pyx_k_squeeze), 0, 0, 1, 1},
  {&__pyx_n_s_st, __pyx_k_st, sizeof(__pyx_k_st), 0, 0, 1, 1},
  {&__pyx_n_s_st0, __pyx_k_st0, sizeof(__pyx_k_st0), 0, 0, 1, 1},
  {&__pyx_n_s_st1, __pyx_k_st1, sizeof(__pyx_k_st1), 0, 0, 1, 1},
  {&__pyx_n_s_st_InDev, __pyx_k_st_InDev, sizeof(__pyx_k_st_InDev), 0, 0, 1, 1},
  {&__pyx_n_s_st_Juridic, __pyx_k_st_Juridic, sizeof(__pyx_k_st_Juridic), 0, 0, 1, 1},
  {&__pyx_n_s_start, __pyx_k_start, sizeof(__pyx_k_start), 0, 0, 1, 1},
  {&__pyx_n_s_stb, __pyx_k_stb, sizeof(__pyx_k_stb), 0, 0, 1, 1},
  {&__pyx_n_s_stdtrain, __pyx_k_stdtrain, sizeof(__pyx_k_stdtrain), 0, 0, 1, 1},
  {&__pyx_n_s_strftime, __pyx_k_strftime, sizeof(__pyx_k_strftime), 0, 0, 1, 1},
  {&__pyx_n_s_stt, __pyx_k_stt, sizeof(__pyx_k_stt), 0, 0, 1, 1},
  {&__pyx_n_s_studentvariable, __pyx_k_studentvariable, sizeof(__pyx_k_studentvariable), 0, 0, 1, 1},
  {&__pyx_n_s_style, __pyx_k_style, sizeof(__pyx_k_style), 0, 0, 1, 1},
  {&__pyx_n_s_sub, __pyx_k_sub, sizeof(__pyx_k_sub), 0, 0, 1, 1},
  {&__pyx_n_s_substitute, __pyx_k_substitute, sizeof(__pyx_k_substitute), 0, 0, 1, 1},
  {&__pyx_n_s_sum, __pyx_k_sum, sizeof(__pyx_k_sum), 0, 0, 1, 1},
  {&__pyx_n_s_super, __pyx_k_super, sizeof(__pyx_k_super), 0, 0, 1, 1},
  {&__pyx_n_s_synapseCount, __pyx_k_synapseCount, sizeof(__pyx_k_synapseCount), 0, 0, 1, 1},
  {&__pyx_n_s_targets, __pyx_k_targets, sizeof(__pyx_k_targets), 0, 0, 1, 1},
  {&__pyx_n_u_targets, __pyx_k_targets, sizeof(__pyx_k_targets), 0, 1, 0, 1},
  {&__pyx_n_u_temp_ii, __pyx_k_temp_ii, sizeof(__pyx_k_temp_ii), 0, 1, 0, 1},
  {&__pyx_n_u_temp_ji, __pyx_k_temp_ji, sizeof(__pyx_k_temp_ji), 0, 1, 0, 1},
  {&__pyx_n_s_tempfile, __pyx_k_tempfile, sizeof(__pyx_k_tempfile), 0, 0, 1, 1},
  {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1},
  {&__pyx_n_u_tfr, __pyx_k_tfr, sizeof(__pyx_k_tfr), 0, 1, 0, 1},
  {&__pyx_n_s_time, __pyx_k_time, sizeof(__pyx_k_time), 0, 0, 1, 1},
  {&__pyx_n_s_today, __pyx_k_today, sizeof(__pyx_k_today), 0, 0, 1, 1},
  {&__pyx_n_u_train, __pyx_k_train, sizeof(__pyx_k_train), 0, 1, 0, 1},
  {&__pyx_n_s_trainable, __pyx_k_trainable, sizeof(__pyx_k_trainable), 0, 0, 1, 1},
  {&__pyx_n_u_trainable, __pyx_k_trainable, sizeof(__pyx_k_trainable), 0, 1, 0, 1},
  {&__pyx_n_s_trainableStr, __pyx_k_trainableStr, sizeof(__pyx_k_trainableStr), 0, 0, 1, 1},
  {&__pyx_n_u_trainbase, __pyx_k_trainbase, sizeof(__pyx_k_trainbase), 0, 1, 0, 1},
  {&__pyx_n_u_transfer, __pyx_k_transfer, sizeof(__pyx_k_transfer), 0, 1, 0, 1},
  {&__pyx_n_u_transferlist, __pyx_k_transferlist, sizeof(__pyx_k_transferlist), 0, 1, 0, 1},
  {&__pyx_n_u_transferprimelist, __pyx_k_transferprimelist, sizeof(__pyx_k_transferprimelist), 0, 1, 0, 1},
  {&__pyx_n_s_trueName, __pyx_k_trueName, sizeof(__pyx_k_trueName), 0, 0, 1, 1},
  {&__pyx_n_s_txt, __pyx_k_txt, sizeof(__pyx_k_txt), 0, 0, 1, 1},
  {&__pyx_kp_u_uf_fa, __pyx_k_uf_fa, sizeof(__pyx_k_uf_fa), 0, 1, 0, 0},
  {&__pyx_kp_u_ug_uh, __pyx_k_ug_uh, sizeof(__pyx_k_ug_uh), 0, 1, 0, 0},
  {&__pyx_kp_u_ui_uj, __pyx_k_ui_uj, sizeof(__pyx_k_ui_uj), 0, 1, 0, 0},
  {&__pyx_n_s_upper, __pyx_k_upper, sizeof(__pyx_k_upper), 0, 0, 1, 1},
  {&__pyx_n_u_usebase, __pyx_k_usebase, sizeof(__pyx_k_usebase), 0, 1, 0, 1},
  {&__pyx_n_u_usecodeversion, __pyx_k_usecodeversion, sizeof(__pyx_k_usecodeversion), 0, 1, 0, 1},
  {&__pyx_n_u_usedll, __pyx_k_usedll, sizeof(__pyx_k_usedll), 0, 1, 0, 1},
  {&__pyx_n_s_useversion, __pyx_k_useversion, sizeof(__pyx_k_useversion), 0, 0, 1, 1},
  {&__pyx_kp_u_utf_8, __pyx_k_utf_8, sizeof(__pyx_k_utf_8), 0, 1, 0, 0},
  {&__pyx_n_s_util_monalbase, __pyx_k_util_monalbase, sizeof(__pyx_k_util_monalbase), 0, 0, 1, 1},
  {&__pyx_n_s_util_utils, __pyx_k_util_utils, sizeof(__pyx_k_util_utils), 0, 0, 1, 1},
  {&__pyx_n_s_val, __pyx_k_val, sizeof(__pyx_k_val), 0, 0, 1, 1},
  {&__pyx_n_s_value, __pyx_k_value, sizeof(__pyx_k_value), 0, 0, 1, 1},
  {&__pyx_n_s_version, __pyx_k_version, sizeof(__pyx_k_version), 0, 0, 1, 1},
  {&__pyx_n_s_version_2, __pyx_k_version_2, sizeof(__pyx_k_version_2), 0, 0, 1, 1},
  {&__pyx_n_s_vtMax, __pyx_k_vtMax, sizeof(__pyx_k_vtMax), 0, 0, 1, 1},
  {&__pyx_n_s_vtMin, __pyx_k_vtMin, sizeof(__pyx_k_vtMin), 0, 0, 1, 1},
  {&__pyx_n_s_vtStdDev, __pyx_k_vtStdDev, sizeof(__pyx_k_vtStdDev), 0, 0, 1, 1},
  {&__pyx_n_s_vtWeight, __pyx_k_vtWeight, sizeof(__pyx_k_vtWeight), 0, 0, 1, 1},
  {&__pyx_kp_u_w, __pyx_k_w, sizeof(__pyx_k_w), 0, 1, 0, 0},
  {&__pyx_n_u_w_2, __pyx_k_w_2, sizeof(__pyx_k_w_2), 0, 1, 0, 1},
  {&__pyx_n_u_wb, __pyx_k_wb, sizeof(__pyx_k_wb), 0, 1, 0, 1},
  {&__pyx_n_s_withneedpot, __pyx_k_withneedpot, sizeof(__pyx_k_withneedpot), 0, 0, 1, 1},
  {&__pyx_n_s_write, __pyx_k_write, sizeof(__pyx_k_write), 0, 0, 1, 1},
  {&__pyx_n_s_xml, __pyx_k_xml, sizeof(__pyx_k_xml), 0, 0, 1, 1},
  {&__pyx_n_u_xml, __pyx_k_xml, sizeof(__pyx_k_xml), 0, 1, 0, 1},
  {&__pyx_n_s_xore, __pyx_k_xore, sizeof(__pyx_k_xore), 0, 0, 1, 1},
  {0, 0, 0, 0, 0, 0, 0}
};
static int __Pyx_InitCachedBuiltins(void) {
  __pyx_builtin_property = __Pyx_GetBuiltinName(__pyx_n_s_property); if (!__pyx_builtin_property) __PYX_ERR(0, 628, __pyx_L1_error)
  __pyx_builtin_super = __Pyx_GetBuiltinName(__pyx_n_s_super); if (!__pyx_builtin_super) __PYX_ERR(0, 64, __pyx_L1_error)
  __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(0, 405, __pyx_L1_error)
  __pyx_builtin_print = __Pyx_GetBuiltinName(__pyx_n_s_print); if (!__pyx_builtin_print) __PYX_ERR(0, 409, __pyx_L1_error)
  __pyx_builtin_KeyError = __Pyx_GetBuiltinName(__pyx_n_s_KeyError); if (!__pyx_builtin_KeyError) __PYX_ERR(0, 411, __pyx_L1_error)
  __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(0, 594, __pyx_L1_error)
  __pyx_builtin_open = __Pyx_GetBuiltinName(__pyx_n_s_open); if (!__pyx_builtin_open) __PYX_ERR(0, 755, __pyx_L1_error)
  __pyx_builtin_sum = __Pyx_GetBuiltinName(__pyx_n_s_sum); if (!__pyx_builtin_sum) __PYX_ERR(0, 850, __pyx_L1_error)
  __pyx_builtin_AttributeError = __Pyx_GetBuiltinName(__pyx_n_s_AttributeError); if (!__pyx_builtin_AttributeError) __PYX_ERR(0, 904, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}

static int __Pyx_InitCachedConstants(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0);

  /* "metaphor/monal/lcode/codewriter.py":327
 *     def GetMarkdateStr(self, Indent=0):
 *         if hasattr(self.NetSource, 'date'):
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "markdate"):
 *             return str(self.NetSource.markdate)
 */
  __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_u_d_m_Y_H_M_S); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(0, 327, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__3);
  __Pyx_GIVEREF(__pyx_tuple__3);

  /* "metaphor/monal/lcode/codewriter.py":387
 * 
 *     def _dosub(self, group, Indent0=0):
 *         st0 = group.group(0)             # <<<<<<<<<<<<<<
 *         if len(st0) <= 2:
 *             return ""
 */
  __pyx_tuple__4 = PyTuple_Pack(1, __pyx_int_0); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(0, 387, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__4);
  __Pyx_GIVEREF(__pyx_tuple__4);

  /* "metaphor/monal/lcode/codewriter.py":390
 *         if len(st0) <= 2:
 *             return ""
 *         st1 = st0[1:-1]             # <<<<<<<<<<<<<<
 *         if (st1[0]=='l') and (st1[-1]=='l'):
 *             style = -1
 */
  __pyx_slice__5 = PySlice_New(__pyx_int_1, __pyx_int_neg_1, Py_None); if (unlikely(!__pyx_slice__5)) __PYX_ERR(0, 390, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__5);
  __Pyx_GIVEREF(__pyx_slice__5);

  /* "metaphor/monal/lcode/codewriter.py":393
 *         if (st1[0]=='l') and (st1[-1]=='l'):
 *             style = -1
 *             st1 = st1[1:-1]             # <<<<<<<<<<<<<<
 *         elif (st1[0]=='U') and (st1[-1]=='U'):
 *             style = 1
 */
  __pyx_slice__6 = PySlice_New(__pyx_int_1, __pyx_int_neg_1, Py_None); if (unlikely(!__pyx_slice__6)) __PYX_ERR(0, 393, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__6);
  __Pyx_GIVEREF(__pyx_slice__6);

  /* "metaphor/monal/lcode/codewriter.py":396
 *         elif (st1[0]=='U') and (st1[-1]=='U'):
 *             style = 1
 *             st1 = st1[1:-1]             # <<<<<<<<<<<<<<
 *         elif (st1[0]=='C') and (st1[-1]=='C'):
 *             style = 2
 */
  __pyx_slice__7 = PySlice_New(__pyx_int_1, __pyx_int_neg_1, Py_None); if (unlikely(!__pyx_slice__7)) __PYX_ERR(0, 396, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__7);
  __Pyx_GIVEREF(__pyx_slice__7);

  /* "metaphor/monal/lcode/codewriter.py":399
 *         elif (st1[0]=='C') and (st1[-1]=='C'):
 *             style = 2
 *             st1 = st1[1:-1]             # <<<<<<<<<<<<<<
 *         else:
 *             style = 0
 */
  __pyx_slice__8 = PySlice_New(__pyx_int_1, __pyx_int_neg_1, Py_None); if (unlikely(!__pyx_slice__8)) __PYX_ERR(0, 399, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__8);
  __Pyx_GIVEREF(__pyx_slice__8);

  /* "metaphor/monal/lcode/codewriter.py":426
 *     def SubstituteVariables(self, Source, Indent0=2):
 *         replfct = partial(self._dosub, Indent0=Indent0)
 *         p = re.compile(r'%\w*%')             # <<<<<<<<<<<<<<
 *         st = p.sub(replfct, Source)
 *         return st
 */
  __pyx_tuple__9 = PyTuple_Pack(1, __pyx_kp_u_w); if (unlikely(!__pyx_tuple__9)) __PYX_ERR(0, 426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__9);
  __Pyx_GIVEREF(__pyx_tuple__9);

  /* "metaphor/monal/lcode/codewriter.py":464
 *         result = self.CommentTeteFichier()
 *         if not included:
 *             self.SetDecimalSeparator('.')             # <<<<<<<<<<<<<<
 *             # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())
 */
  __pyx_tuple__11 = PyTuple_Pack(1, __pyx_kp_u__10); if (unlikely(!__pyx_tuple__11)) __PYX_ERR(0, 464, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__11);
  __Pyx_GIVEREF(__pyx_tuple__11);

  /* "metaphor/monal/lcode/codewriter.py":507
 *         result = self.CommentTeteFichier()
 *         if not included:
 *             self.SetDecimalSeparator('.')             # <<<<<<<<<<<<<<
 *             # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())
 */
  __pyx_tuple__12 = PyTuple_Pack(1, __pyx_kp_u__10); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(0, 507, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__12);
  __Pyx_GIVEREF(__pyx_tuple__12);

  /* "metaphor/monal/lcode/codewriter.py":545
 *         result = self.CommentTeteFichier()
 *         if not included:
 *             self.SetDecimalSeparator('.')             # <<<<<<<<<<<<<<
 *                 # Dbut du texte
 *             result += self.NlPlusStr(self.EnTete())
 */
  __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_u__10); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(0, 545, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__13);
  __Pyx_GIVEREF(__pyx_tuple__13);

  /* "metaphor/monal/lcode/codewriter.py":752
 * 
 *     def getTemplate(self, TextID):
 *         lst = TextID.split('_')             # <<<<<<<<<<<<<<
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 *         if PY3:
 */
  __pyx_tuple__16 = PyTuple_Pack(1, __pyx_n_u__15); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(0, 752, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__16);
  __Pyx_GIVEREF(__pyx_tuple__16);

  /* "metaphor/monal/lcode/codewriter.py":757
 *             with open(filename, 'rb') as ff:
 *                 st = ff.read()
 *                 st = st.decode("ISO-8859-15")             # <<<<<<<<<<<<<<
 *         else:
 *             with open(filename, 'rb') as ff:
 */
  __pyx_tuple__17 = PyTuple_Pack(1, __pyx_kp_u_ISO_8859_15); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(0, 757, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__17);
  __Pyx_GIVEREF(__pyx_tuple__17);

  /* "metaphor/monal/lcode/codewriter.py":755
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 *         if PY3:
 *             with open(filename, 'rb') as ff:             # <<<<<<<<<<<<<<
 *                 st = ff.read()
 *                 st = st.decode("ISO-8859-15")
 */
  __pyx_tuple__18 = PyTuple_Pack(3, Py_None, Py_None, Py_None); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(0, 755, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__18);
  __Pyx_GIVEREF(__pyx_tuple__18);

  /* "metaphor/monal/lcode/codewriter.py":759
 *                 st = st.decode("ISO-8859-15")
 *         else:
 *             with open(filename, 'rb') as ff:             # <<<<<<<<<<<<<<
 *                 st = ff.read()
 *         return st
 */
  __pyx_tuple__19 = PyTuple_Pack(3, Py_None, Py_None, Py_None); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 759, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__19);
  __Pyx_GIVEREF(__pyx_tuple__19);

  /* "metaphor/monal/lcode/codewriter.py":809
 *         if np.isinf(value):
 *             if value > 0:
 *                 return self.ValToStr(1E308)             # <<<<<<<<<<<<<<
 *             return self.ValToStr(-1E308)
 *         return "%18.15g" % value
 */
  __pyx_tuple__24 = PyTuple_Pack(1, __pyx_float_1E308); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(0, 809, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__24);
  __Pyx_GIVEREF(__pyx_tuple__24);

  /* "metaphor/monal/lcode/codewriter.py":810
 *             if value > 0:
 *                 return self.ValToStr(1E308)
 *             return self.ValToStr(-1E308)             # <<<<<<<<<<<<<<
 *         return "%18.15g" % value
 * 
 */
  __pyx_tuple__25 = PyTuple_Pack(1, __pyx_float_neg_1E308); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(0, 810, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__25);
  __Pyx_GIVEREF(__pyx_tuple__25);

  /* "metaphor/monal/lcode/codewriter.py":823
 * 
 *     def MultiCondition1(self, val):
 *         if val == self.ValToStr(1):             # <<<<<<<<<<<<<<
 *             return ""
 *         return "* %s"% val
 */
  __pyx_tuple__29 = PyTuple_Pack(1, __pyx_int_1); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(0, 823, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__29);
  __Pyx_GIVEREF(__pyx_tuple__29);

  /* "metaphor/monal/lcode/codewriter.py":863
 *     def GetJurComment(self):
 *         St = CC.st_Juridic.lower()
 *         St.replace('.', '_')             # <<<<<<<<<<<<<<
 *         Result = self.GetTextFromID(St)
 *         if Result == '':
 */
  __pyx_tuple__31 = PyTuple_Pack(2, __pyx_kp_u__10, __pyx_n_u__15); if (unlikely(!__pyx_tuple__31)) __PYX_ERR(0, 863, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__31);
  __Pyx_GIVEREF(__pyx_tuple__31);

  /* "metaphor/monal/lcode/codewriter.py":882
 *         if (0 <= index < 2) and (self.ClientNum >= 0):
 *             St = CStr[self.ClientNum]
 *             P = St.index(',')             # <<<<<<<<<<<<<<
 *             if index == 0:
 *                 Result = St[:P-1]
 */
  __pyx_tuple__32 = PyTuple_Pack(1, __pyx_kp_u__2); if (unlikely(!__pyx_tuple__32)) __PYX_ERR(0, 882, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__32);
  __Pyx_GIVEREF(__pyx_tuple__32);

  /* "metaphor/monal/lcode/codewriter.py":945
 *     def GetDateStr(self, garb=0):
 *         today = date.today()
 *         return today.strftime("%d/%m/%Y")             # <<<<<<<<<<<<<<
 * 
 *     def GetTimeStr(self, garb=0):
 */
  __pyx_tuple__33 = PyTuple_Pack(1, __pyx_kp_u_d_m_Y); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(0, 945, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__33);
  __Pyx_GIVEREF(__pyx_tuple__33);

  /* "metaphor/monal/lcode/codewriter.py":949
 *     def GetTimeStr(self, garb=0):
 *         time = datetime.now()
 *         return time.strftime("%H:%M:%S")             # <<<<<<<<<<<<<<
 * 
 *     def GetUserStr(self, garb=0):
 */
  __pyx_tuple__34 = PyTuple_Pack(1, __pyx_kp_u_H_M_S); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(0, 949, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__34);
  __Pyx_GIVEREF(__pyx_tuple__34);

  /* "metaphor/monal/lcode/codewriter.py":1077
 *             safemakedirs(path)
 *         if PY3:
 *             with open(fname, "wb") as ff:             # <<<<<<<<<<<<<<
 *                 ff.write(bytes(St, "utf-8"))
 *                 Result = True
 */
  __pyx_tuple__37 = PyTuple_Pack(3, Py_None, Py_None, Py_None); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 1077, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__37);
  __Pyx_GIVEREF(__pyx_tuple__37);

  /* "metaphor/monal/lcode/codewriter.py":1081
 *                 Result = True
 *         else:
 *             with open(fname, "wb") as ff:             # <<<<<<<<<<<<<<
 *                 ff.write(St)
 *                 Result = True
 */
  __pyx_tuple__38 = PyTuple_Pack(3, Py_None, Py_None, Py_None); if (unlikely(!__pyx_tuple__38)) __PYX_ERR(0, 1081, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__38);
  __Pyx_GIVEREF(__pyx_tuple__38);

  /* "metaphor/monal/lcode/codewriter.py":60
 *     classdocs
 *     '''
 *     def __init__(self, owner, Source, name="codewriter"):             # <<<<<<<<<<<<<<
 *         '''
 *         Constructor
 */
  __pyx_tuple__41 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_owner, __pyx_n_s_Source, __pyx_n_s_name); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(0, 60, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__41);
  __Pyx_GIVEREF(__pyx_tuple__41);
  __pyx_codeobj__42 = (PyObject*)__Pyx_PyCode_New(4, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__41, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_init, 60, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__42)) __PYX_ERR(0, 60, __pyx_L1_error)
  __pyx_tuple__43 = PyTuple_Pack(1, ((PyObject*)__pyx_n_u_codewriter)); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(0, 60, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__43);
  __Pyx_GIVEREF(__pyx_tuple__43);

  /* "metaphor/monal/lcode/codewriter.py":124
 * 
 * 
 *     def setReplaceDict(self):             # <<<<<<<<<<<<<<
 *         self.ReplaceDictionary = {
 *             "PropertyValue": self.PptyValueStr,
 */
  __pyx_tuple__44 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__44)) __PYX_ERR(0, 124, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__44);
  __Pyx_GIVEREF(__pyx_tuple__44);
  __pyx_codeobj__45 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_setReplaceDict, 124, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__45)) __PYX_ERR(0, 124, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":274
 *             "trainable": self.trainableStr }
 * 
 *     def setSource(self, source):             # <<<<<<<<<<<<<<
 *         if source is not None:
 *             self._DriverSource = source
 */
  __pyx_tuple__46 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_source); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(0, 274, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__46);
  __Pyx_GIVEREF(__pyx_tuple__46);
  __pyx_codeobj__47 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__46, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_setSource, 274, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__47)) __PYX_ERR(0, 274, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":283
 *         self.setReplaceDict()
 * 
 *     def trainableStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'trainable'):
 *             return str(int(self.NetSource.trainable))
 */
  __pyx_tuple__48 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__48)) __PYX_ERR(0, 283, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__48);
  __Pyx_GIVEREF(__pyx_tuple__48);
  __pyx_codeobj__49 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__48, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_trainableStr, 283, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__49)) __PYX_ERR(0, 283, __pyx_L1_error)
  __pyx_tuple__50 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__50)) __PYX_ERR(0, 283, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__50);
  __Pyx_GIVEREF(__pyx_tuple__50);

  /* "metaphor/monal/lcode/codewriter.py":289
 *             return "0"
 * 
 *     def getDynamicLinking(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(int(self.dynamiclinking))
 * 
 */
  __pyx_tuple__51 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__51)) __PYX_ERR(0, 289, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__51);
  __Pyx_GIVEREF(__pyx_tuple__51);
  __pyx_codeobj__52 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__51, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_getDynamicLinking, 289, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__52)) __PYX_ERR(0, 289, __pyx_L1_error)
  __pyx_tuple__53 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__53)) __PYX_ERR(0, 289, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__53);
  __Pyx_GIVEREF(__pyx_tuple__53);

  /* "metaphor/monal/lcode/codewriter.py":292
 *         return str(int(self.dynamiclinking))
 * 
 *     def getCodeVersion(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(CC.__version__)
 * 
 */
  __pyx_tuple__54 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__54)) __PYX_ERR(0, 292, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__54);
  __Pyx_GIVEREF(__pyx_tuple__54);
  __pyx_codeobj__55 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__54, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_getCodeVersion, 292, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__55)) __PYX_ERR(0, 292, __pyx_L1_error)
  __pyx_tuple__56 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__56)) __PYX_ERR(0, 292, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__56);
  __Pyx_GIVEREF(__pyx_tuple__56);

  /* "metaphor/monal/lcode/codewriter.py":295
 *         return str(CC.__version__)
 * 
 *     def getDataRange(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "datarange"):
 *             return str(self.NetSource.datarange)
 */
  __pyx_tuple__57 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__57)) __PYX_ERR(0, 295, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__57);
  __Pyx_GIVEREF(__pyx_tuple__57);
  __pyx_codeobj__58 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__57, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_getDataRange, 295, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__58)) __PYX_ERR(0, 295, __pyx_L1_error)
  __pyx_tuple__59 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__59)) __PYX_ERR(0, 295, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__59);
  __Pyx_GIVEREF(__pyx_tuple__59);

  /* "metaphor/monal/lcode/codewriter.py":300
 *         return ""
 * 
 *     def getUseCodeVersion(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(CC.__useversion__)
 * 
 */
  __pyx_tuple__60 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__60)) __PYX_ERR(0, 300, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__60);
  __Pyx_GIVEREF(__pyx_tuple__60);
  __pyx_codeobj__61 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__60, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_getUseCodeVersion, 300, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__61)) __PYX_ERR(0, 300, __pyx_L1_error)
  __pyx_tuple__62 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__62)) __PYX_ERR(0, 300, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__62);
  __Pyx_GIVEREF(__pyx_tuple__62);

  /* "metaphor/monal/lcode/codewriter.py":303
 *         return str(CC.__useversion__)
 * 
 *     def GetOriginBaseStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "originbase"):
 *             return str(self.NetSource.originbase)
 */
  __pyx_tuple__63 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__63)) __PYX_ERR(0, 303, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__63);
  __Pyx_GIVEREF(__pyx_tuple__63);
  __pyx_codeobj__64 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__63, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetOriginBaseStr, 303, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__64)) __PYX_ERR(0, 303, __pyx_L1_error)
  __pyx_tuple__65 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__65)) __PYX_ERR(0, 303, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__65);
  __Pyx_GIVEREF(__pyx_tuple__65);

  /* "metaphor/monal/lcode/codewriter.py":308
 *         return ""
 * 
 *     def GetXmlStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'xml'):
 *             st = codequote(self.NetSource.xml())
 */
  __pyx_tuple__66 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_Indent, __pyx_n_s_st); if (unlikely(!__pyx_tuple__66)) __PYX_ERR(0, 308, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__66);
  __Pyx_GIVEREF(__pyx_tuple__66);
  __pyx_codeobj__67 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__66, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetXmlStr, 308, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__67)) __PYX_ERR(0, 308, __pyx_L1_error)
  __pyx_tuple__68 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__68)) __PYX_ERR(0, 308, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__68);
  __Pyx_GIVEREF(__pyx_tuple__68);

  /* "metaphor/monal/lcode/codewriter.py":315
 *         return ""
 * 
 *     def GetMarkStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "mark"):
 *             return str(self.NetSource.mark)
 */
  __pyx_tuple__69 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__69)) __PYX_ERR(0, 315, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__69);
  __Pyx_GIVEREF(__pyx_tuple__69);
  __pyx_codeobj__70 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__69, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetMarkStr, 315, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__70)) __PYX_ERR(0, 315, __pyx_L1_error)
  __pyx_tuple__71 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__71)) __PYX_ERR(0, 315, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__71);
  __Pyx_GIVEREF(__pyx_tuple__71);

  /* "metaphor/monal/lcode/codewriter.py":320
 *         return ""
 * 
 *     def GetMarkversionStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "markversion"):
 *             return str(self.NetSource.markversion)
 */
  __pyx_tuple__72 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__72)) __PYX_ERR(0, 320, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__72);
  __Pyx_GIVEREF(__pyx_tuple__72);
  __pyx_codeobj__73 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__72, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetMarkversionStr, 320, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__73)) __PYX_ERR(0, 320, __pyx_L1_error)
  __pyx_tuple__74 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__74)) __PYX_ERR(0, 320, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__74);
  __Pyx_GIVEREF(__pyx_tuple__74);

  /* "metaphor/monal/lcode/codewriter.py":325
 *         return ""
 * 
 *     def GetMarkdateStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'date'):
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")
 */
  __pyx_tuple__75 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__75)) __PYX_ERR(0, 325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__75);
  __Pyx_GIVEREF(__pyx_tuple__75);
  __pyx_codeobj__76 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__75, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetMarkdateStr, 325, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__76)) __PYX_ERR(0, 325, __pyx_L1_error)
  __pyx_tuple__77 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__77)) __PYX_ERR(0, 325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__77);
  __Pyx_GIVEREF(__pyx_tuple__77);

  /* "metaphor/monal/lcode/codewriter.py":334
 *         return ""
 * 
 *     def GetHiddenStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "hidden"):
 *             return str(self.NetSource.hidden)
 */
  __pyx_tuple__78 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__78)) __PYX_ERR(0, 334, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__78);
  __Pyx_GIVEREF(__pyx_tuple__78);
  __pyx_codeobj__79 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__78, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetHiddenStr, 334, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__79)) __PYX_ERR(0, 334, __pyx_L1_error)
  __pyx_tuple__80 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__80)) __PYX_ERR(0, 334, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__80);
  __Pyx_GIVEREF(__pyx_tuple__80);

  /* "metaphor/monal/lcode/codewriter.py":341
 *         return ""
 * 
 *     def setCurrentFileTypes(self, atype=-1, aincluded=-1):             # <<<<<<<<<<<<<<
 *         if atype >= 0:
 *             self.CurrentFunctionType = atype
 */
  __pyx_tuple__81 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_atype, __pyx_n_s_aincluded); if (unlikely(!__pyx_tuple__81)) __PYX_ERR(0, 341, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__81);
  __Pyx_GIVEREF(__pyx_tuple__81);
  __pyx_codeobj__82 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__81, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_setCurrentFileTypes, 341, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__82)) __PYX_ERR(0, 341, __pyx_L1_error)
  __pyx_tuple__83 = PyTuple_Pack(2, ((PyObject *)__pyx_int_neg_1), ((PyObject *)__pyx_int_neg_1)); if (unlikely(!__pyx_tuple__83)) __PYX_ERR(0, 341, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__83);
  __Pyx_GIVEREF(__pyx_tuple__83);

  /* "metaphor/monal/lcode/codewriter.py":348
 *         self.FileName = self.CurrentCodeFileName()
 * 
 *     def  TouslesNoms(self):             # <<<<<<<<<<<<<<
 *         self._NomFonction = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFGradient = CC.st_InDev + ' codeWriter' #+ Classname
 */
  __pyx_tuple__84 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__84)) __PYX_ERR(0, 348, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__84);
  __Pyx_GIVEREF(__pyx_tuple__84);
  __pyx_codeobj__85 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__84, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_TouslesNoms, 348, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__85)) __PYX_ERR(0, 348, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":386
 *         #    self.NomFonction = CC.StTransferKoh %(self.NetName)
 * 
 *     def _dosub(self, group, Indent0=0):             # <<<<<<<<<<<<<<
 *         st0 = group.group(0)
 *         if len(st0) <= 2:
 */
  __pyx_tuple__86 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_group, __pyx_n_s_Indent0, __pyx_n_s_st0, __pyx_n_s_st1, __pyx_n_s_style, __pyx_n_s_fct, __pyx_n_s_st); if (unlikely(!__pyx_tuple__86)) __PYX_ERR(0, 386, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__86);
  __Pyx_GIVEREF(__pyx_tuple__86);
  __pyx_codeobj__87 = (PyObject*)__Pyx_PyCode_New(3, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__86, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_dosub, 386, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__87)) __PYX_ERR(0, 386, __pyx_L1_error)
  __pyx_tuple__88 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__88)) __PYX_ERR(0, 386, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__88);
  __Pyx_GIVEREF(__pyx_tuple__88);

  /* "metaphor/monal/lcode/codewriter.py":424
 *         return st
 * 
 *     def SubstituteVariables(self, Source, Indent0=2):             # <<<<<<<<<<<<<<
 *         replfct = partial(self._dosub, Indent0=Indent0)
 *         p = re.compile(r'%\w*%')
 */
  __pyx_tuple__89 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_Source, __pyx_n_s_Indent0, __pyx_n_s_replfct, __pyx_n_s_p, __pyx_n_s_st); if (unlikely(!__pyx_tuple__89)) __PYX_ERR(0, 424, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__89);
  __Pyx_GIVEREF(__pyx_tuple__89);
  __pyx_codeobj__90 = (PyObject*)__Pyx_PyCode_New(3, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__89, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_SubstituteVariables, 424, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__90)) __PYX_ERR(0, 424, __pyx_L1_error)
  __pyx_tuple__91 = PyTuple_Pack(1, ((PyObject *)__pyx_int_2)); if (unlikely(!__pyx_tuple__91)) __PYX_ERR(0, 424, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__91);
  __Pyx_GIVEREF(__pyx_tuple__91);

  /* "metaphor/monal/lcode/codewriter.py":430
 *         return st
 * 
 *     def CodeFichierAvecTemplate(self, ftype, included):             # <<<<<<<<<<<<<<
 *         # creation gener, ique d'un code depuis un template
 *         self.setCurrentFileTypes(ftype, included)
 */
  __pyx_tuple__92 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_ftype, __pyx_n_s_included, __pyx_n_s_memsep, __pyx_n_s_source, __pyx_n_s_specialsub, __pyx_n_s_Result); if (unlikely(!__pyx_tuple__92)) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__92);
  __Pyx_GIVEREF(__pyx_tuple__92);
  __pyx_codeobj__93 = (PyObject*)__Pyx_PyCode_New(3, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__92, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_CodeFichierAvecTemplate, 430, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__93)) __PYX_ERR(0, 430, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":443
 *         return Result
 * 
 *     def CodeFichier(self, index, included=0, dosave=False, back=False):             # <<<<<<<<<<<<<<
 *         result = self.CodeFichierAvecTemplate(index, included)
 *         # cas sans template
 */
  __pyx_tuple__94 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_index, __pyx_n_s_included, __pyx_n_s_dosave, __pyx_n_s_back, __pyx_n_s_result); if (unlikely(!__pyx_tuple__94)) __PYX_ERR(0, 443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__94);
  __Pyx_GIVEREF(__pyx_tuple__94);
  __pyx_codeobj__95 = (PyObject*)__Pyx_PyCode_New(5, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__94, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_CodeFichier, 443, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__95)) __PYX_ERR(0, 443, __pyx_L1_error)
  __pyx_tuple__96 = PyTuple_Pack(3, ((PyObject *)__pyx_int_0), ((PyObject *)Py_False), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__96)) __PYX_ERR(0, 443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__96);
  __Pyx_GIVEREF(__pyx_tuple__96);

  /* "metaphor/monal/lcode/codewriter.py":460
 * #------ code interne sans template --------------------------------------------
 * 
 *     def CodeFichierTransfertInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftTransfert, included)
 *         result = self.CommentTeteFichier()
 */
  __pyx_tuple__97 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_included, __pyx_n_s_result); if (unlikely(!__pyx_tuple__97)) __PYX_ERR(0, 460, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__97);
  __Pyx_GIVEREF(__pyx_tuple__97);
  __pyx_codeobj__98 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__97, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_CodeFichierTransfertInterne, 460, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__98)) __PYX_ERR(0, 460, __pyx_L1_error)
  __pyx_tuple__99 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__99)) __PYX_ERR(0, 460, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__99);
  __Pyx_GIVEREF(__pyx_tuple__99);

  /* "metaphor/monal/lcode/codewriter.py":503
 *     #===========================================================================
 * 
 *     def CodeFichierGradientInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftGradient, included)
 *         result = self.CommentTeteFichier()
 */
  __pyx_tuple__100 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_included, __pyx_n_s_result); if (unlikely(!__pyx_tuple__100)) __PYX_ERR(0, 503, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__100);
  __Pyx_GIVEREF(__pyx_tuple__100);
  __pyx_codeobj__101 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__100, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_CodeFichierGradientInterne, 503, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__101)) __PYX_ERR(0, 503, __pyx_L1_error)
  __pyx_tuple__102 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__102)) __PYX_ERR(0, 503, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__102);
  __Pyx_GIVEREF(__pyx_tuple__102);

  /* "metaphor/monal/lcode/codewriter.py":541
 *     #===========================================================================
 * 
 *     def CodeFichierTransfertLeverageInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftTransfertLeverage, 0)
 *         result = self.CommentTeteFichier()
 */
  __pyx_tuple__103 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_included, __pyx_n_s_result); if (unlikely(!__pyx_tuple__103)) __PYX_ERR(0, 541, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__103);
  __Pyx_GIVEREF(__pyx_tuple__103);
  __pyx_codeobj__104 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__103, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_CodeFichierTransfertLeverageInte, 541, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__104)) __PYX_ERR(0, 541, __pyx_L1_error)
  __pyx_tuple__105 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__105)) __PYX_ERR(0, 541, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__105);
  __Pyx_GIVEREF(__pyx_tuple__105);

  /* "metaphor/monal/lcode/codewriter.py":572
 * #         return self.TransferStr(Indent0, original=self.NetSource.originallink)
 * 
 *     def TransferStr(self, Indent0=1):  #, original=True):             # <<<<<<<<<<<<<<
 *         original = self.originallink
 *         try:
 */
  __pyx_tuple__106 = PyTuple_Pack(12, __pyx_n_s_self, __pyx_n_s_Indent0, __pyx_n_s_original, __pyx_n_s_nmodel, __pyx_n_s_needPotential, __pyx_n_s_lst, __pyx_n_s_node, __pyx_n_s_st, __pyx_n_s_needpot, __pyx_n_s_Result, __pyx_n_s_St0, __pyx_n_s_i); if (unlikely(!__pyx_tuple__106)) __PYX_ERR(0, 572, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__106);
  __Pyx_GIVEREF(__pyx_tuple__106);
  __pyx_codeobj__107 = (PyObject*)__Pyx_PyCode_New(2, 0, 12, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__106, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_TransferStr, 572, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__107)) __PYX_ERR(0, 572, __pyx_L1_error)
  __pyx_tuple__108 = PyTuple_Pack(1, ((PyObject *)__pyx_int_1)); if (unlikely(!__pyx_tuple__108)) __PYX_ERR(0, 572, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__108);
  __Pyx_GIVEREF(__pyx_tuple__108);

  /* "metaphor/monal/lcode/codewriter.py":602
 * 
 * #--- fin de blocs de code -----------------------------------------------------
 *     def GetTextFromID(self, TextID, MarkupList=None):             # <<<<<<<<<<<<<<
 *         try:
 *             if self._GetString:
 */
  __pyx_tuple__109 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_TextID, __pyx_n_s_MarkupList, __pyx_n_s_Result, __pyx_n_s_stt, __pyx_n_s_st, __pyx_n_s_stb, __pyx_n_s_err); if (unlikely(!__pyx_tuple__109)) __PYX_ERR(0, 602, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__109);
  __Pyx_GIVEREF(__pyx_tuple__109);
  __pyx_codeobj__110 = (PyObject*)__Pyx_PyCode_New(3, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__109, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetTextFromID, 602, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__110)) __PYX_ERR(0, 602, __pyx_L1_error)
  __pyx_tuple__111 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__111)) __PYX_ERR(0, 602, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__111);
  __Pyx_GIVEREF(__pyx_tuple__111);

  /* "metaphor/monal/lcode/codewriter.py":622
 *             return ""
 * 
 *     def ReadCodeFromID(self, IDName, specialsub=False):             # <<<<<<<<<<<<<<
 *         txt = self.GetTextFromID(IDName)
 *         if self.CurrentFunctionType < CC.code_common_mini:
 */
  __pyx_tuple__112 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_IDName, __pyx_n_s_specialsub, __pyx_n_s_txt); if (unlikely(!__pyx_tuple__112)) __PYX_ERR(0, 622, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__112);
  __Pyx_GIVEREF(__pyx_tuple__112);
  __pyx_codeobj__113 = (PyObject*)__Pyx_PyCode_New(3, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__112, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_ReadCodeFromID, 622, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__113)) __PYX_ERR(0, 622, __pyx_L1_error)
  __pyx_tuple__114 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__114)) __PYX_ERR(0, 622, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__114);
  __Pyx_GIVEREF(__pyx_tuple__114);

  /* "metaphor/monal/lcode/codewriter.py":629
 * 
 *     @property
 *     def DriverSource(self):             # <<<<<<<<<<<<<<
 *         return self._DriverSource
 * 
 */
  __pyx_tuple__115 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__115)) __PYX_ERR(0, 629, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__115);
  __Pyx_GIVEREF(__pyx_tuple__115);
  __pyx_codeobj__116 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__115, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_DriverSource_2, 629, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__116)) __PYX_ERR(0, 629, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":633
 * 
 *     @property
 *     def NetSource(self):             # <<<<<<<<<<<<<<
 *         return self._NetSource
 *     @NetSource.setter
 */
  __pyx_tuple__117 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__117)) __PYX_ERR(0, 633, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__117);
  __Pyx_GIVEREF(__pyx_tuple__117);
  __pyx_codeobj__118 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__117, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_NetSource, 633, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__118)) __PYX_ERR(0, 633, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":636
 *         return self._NetSource
 *     @NetSource.setter
 *     def NetSource(self, value):             # <<<<<<<<<<<<<<
 *         self.SetNetSource(value)
 * 
 */
  __pyx_tuple__119 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__119)) __PYX_ERR(0, 636, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__119);
  __Pyx_GIVEREF(__pyx_tuple__119);
  __pyx_codeobj__120 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__119, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_NetSource, 636, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__120)) __PYX_ERR(0, 636, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":639
 *         self.SetNetSource(value)
 * 
 *     def SetNetSource(self, Source):             # <<<<<<<<<<<<<<
 *         self._NetSource = Source
 *         if Source:
 */
  __pyx_tuple__121 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_Source, __pyx_n_s__15); if (unlikely(!__pyx_tuple__121)) __PYX_ERR(0, 639, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__121);
  __Pyx_GIVEREF(__pyx_tuple__121);
  __pyx_codeobj__122 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__121, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_SetNetSource, 639, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__122)) __PYX_ERR(0, 639, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":660
 *         self._TargetName = self._NetName
 * 
 *     def baseCodeFileName(self, base, substitute, param=0, Ext=''):             # <<<<<<<<<<<<<<
 *         if not base:
 *             if  not substitute:
 */
  __pyx_tuple__123 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_base, __pyx_n_s_substitute, __pyx_n_s_param, __pyx_n_s_Ext, __pyx_n_s_Result); if (unlikely(!__pyx_tuple__123)) __PYX_ERR(0, 660, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__123);
  __Pyx_GIVEREF(__pyx_tuple__123);
  __pyx_codeobj__124 = (PyObject*)__Pyx_PyCode_New(5, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__123, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_baseCodeFileName, 660, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__124)) __PYX_ERR(0, 660, __pyx_L1_error)
  __pyx_tuple__125 = PyTuple_Pack(2, ((PyObject *)__pyx_int_0), ((PyObject*)__pyx_kp_u_)); if (unlikely(!__pyx_tuple__125)) __PYX_ERR(0, 660, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__125);
  __Pyx_GIVEREF(__pyx_tuple__125);

  /* "metaphor/monal/lcode/codewriter.py":717
 *         return Result
 * 
 *     def CodeFileName(self, FType, Ext=""):             # <<<<<<<<<<<<<<
 *         return self.baseCodeFileName(self.NetSource.name, self.ShortFileName, FType, Ext)
 * 
 */
  __pyx_tuple__126 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_FType, __pyx_n_s_Ext); if (unlikely(!__pyx_tuple__126)) __PYX_ERR(0, 717, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__126);
  __Pyx_GIVEREF(__pyx_tuple__126);
  __pyx_codeobj__127 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__126, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_CodeFileName, 717, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__127)) __PYX_ERR(0, 717, __pyx_L1_error)
  __pyx_tuple__128 = PyTuple_Pack(1, ((PyObject*)__pyx_kp_u_)); if (unlikely(!__pyx_tuple__128)) __PYX_ERR(0, 717, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__128);
  __Pyx_GIVEREF(__pyx_tuple__128);

  /* "metaphor/monal/lcode/codewriter.py":720
 *         return self.baseCodeFileName(self.NetSource.name, self.ShortFileName, FType, Ext)
 * 
 *     def CurrentCodeFileName(self, sdir=None):             # <<<<<<<<<<<<<<
 *         result = ""
 *         if ((self.CurrentFunctionType in CC.ftOnlyHeader) and not self.CurrentHeader):
 */
  __pyx_tuple__129 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_sdir, __pyx_n_s_result, __pyx_n_s_ext); if (unlikely(!__pyx_tuple__129)) __PYX_ERR(0, 720, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__129);
  __Pyx_GIVEREF(__pyx_tuple__129);
  __pyx_codeobj__130 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__129, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_CurrentCodeFileName, 720, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__130)) __PYX_ERR(0, 720, __pyx_L1_error)
  __pyx_tuple__131 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__131)) __PYX_ERR(0, 720, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__131);
  __Pyx_GIVEREF(__pyx_tuple__131);

  /* "metaphor/monal/lcode/codewriter.py":733
 *         return result
 * 
 *     def FileExt(self, header=-1, ftype=-1):  #             # <<<<<<<<<<<<<<
 *         if header == -1:
 *             header = self.CurrentHeader
 */
  __pyx_tuple__132 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_header, __pyx_n_s_ftype, __pyx_n_s_fType); if (unlikely(!__pyx_tuple__132)) __PYX_ERR(0, 733, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__132);
  __Pyx_GIVEREF(__pyx_tuple__132);
  __pyx_codeobj__133 = (PyObject*)__Pyx_PyCode_New(3, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__132, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_FileExt, 733, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__133)) __PYX_ERR(0, 733, __pyx_L1_error)
  __pyx_tuple__134 = PyTuple_Pack(2, ((PyObject *)__pyx_int_neg_1), ((PyObject *)__pyx_int_neg_1)); if (unlikely(!__pyx_tuple__134)) __PYX_ERR(0, 733, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__134);
  __Pyx_GIVEREF(__pyx_tuple__134);

  /* "metaphor/monal/lcode/codewriter.py":745
 *         return ''
 * 
 *     def GetDecalIni(self):             # <<<<<<<<<<<<<<
 *         return 0
 * 
 */
  __pyx_tuple__135 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__135)) __PYX_ERR(0, 745, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__135);
  __Pyx_GIVEREF(__pyx_tuple__135);
  __pyx_codeobj__136 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__135, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetDecalIni, 745, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__136)) __PYX_ERR(0, 745, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":748
 *         return 0
 * 
 *     def Suite(self):             # <<<<<<<<<<<<<<
 *         return fillstr(self.DecalIni)
 * 
 */
  __pyx_tuple__137 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__137)) __PYX_ERR(0, 748, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__137);
  __Pyx_GIVEREF(__pyx_tuple__137);
  __pyx_codeobj__138 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__137, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_Suite, 748, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__138)) __PYX_ERR(0, 748, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":751
 *         return fillstr(self.DecalIni)
 * 
 *     def getTemplate(self, TextID):             # <<<<<<<<<<<<<<
 *         lst = TextID.split('_')
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 */
  __pyx_tuple__139 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_TextID, __pyx_n_s_lst, __pyx_n_s_filename, __pyx_n_s_ff, __pyx_n_s_st); if (unlikely(!__pyx_tuple__139)) __PYX_ERR(0, 751, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__139);
  __Pyx_GIVEREF(__pyx_tuple__139);
  __pyx_codeobj__140 = (PyObject*)__Pyx_PyCode_New(2, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__139, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_getTemplate, 751, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__140)) __PYX_ERR(0, 751, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":763
 *         return st
 * 
 *     def SetDecimalSep(self, Value):             # <<<<<<<<<<<<<<
 *         self._DecimalSep = Value
 *         self.SetDecimalSeparator(Value)
 */
  __pyx_tuple__141 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Value); if (unlikely(!__pyx_tuple__141)) __PYX_ERR(0, 763, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__141);
  __Pyx_GIVEREF(__pyx_tuple__141);
  __pyx_codeobj__142 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__141, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_SetDecimalSep, 763, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__142)) __PYX_ERR(0, 763, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":767
 *         self.SetDecimalSeparator(Value)
 * 
 *     def SetDecimalSeparator(self, value):             # <<<<<<<<<<<<<<
 *         self._DecimalSep = value
 * 
 */
  __pyx_tuple__143 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__143)) __PYX_ERR(0, 767, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__143);
  __Pyx_GIVEREF(__pyx_tuple__143);
  __pyx_codeobj__144 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__143, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_SetDecimalSeparator, 767, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__144)) __PYX_ERR(0, 767, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":770
 *         self._DecimalSep = value
 * 
 *     def GetNetworkKind(self):             # <<<<<<<<<<<<<<
 *         if (self.NetSource.order > 0):
 *             return CC.nkDyn
 */
  __pyx_tuple__145 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__145)) __PYX_ERR(0, 770, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__145);
  __Pyx_GIVEREF(__pyx_tuple__145);
  __pyx_codeobj__146 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__145, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetNetworkKind, 770, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__146)) __PYX_ERR(0, 770, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":775
 *         return CC.nkStat
 * 
 *     def GetAffect(self):             # <<<<<<<<<<<<<<
 *         return ' = '
 * 
 */
  __pyx_tuple__147 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__147)) __PYX_ERR(0, 775, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__147);
  __Pyx_GIVEREF(__pyx_tuple__147);
  __pyx_codeobj__148 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__147, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetAffect, 775, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__148)) __PYX_ERR(0, 775, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":778
 *         return ' = '
 * 
 *     def InitialisationVecteur(self, Indent0=1):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_tuple__149 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent0); if (unlikely(!__pyx_tuple__149)) __PYX_ERR(0, 778, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__149);
  __Pyx_GIVEREF(__pyx_tuple__149);
  __pyx_codeobj__150 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__149, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_InitialisationVecteur, 778, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__150)) __PYX_ERR(0, 778, __pyx_L1_error)
  __pyx_tuple__151 = PyTuple_Pack(1, ((PyObject *)__pyx_int_1)); if (unlikely(!__pyx_tuple__151)) __PYX_ERR(0, 778, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__151);
  __Pyx_GIVEREF(__pyx_tuple__151);

  /* "metaphor/monal/lcode/codewriter.py":781
 *         return ''
 * 
 *     def InitialisationMatrice(self, Indent0=1):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_tuple__152 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent0); if (unlikely(!__pyx_tuple__152)) __PYX_ERR(0, 781, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__152);
  __Pyx_GIVEREF(__pyx_tuple__152);
  __pyx_codeobj__153 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__152, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_InitialisationMatrice, 781, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__153)) __PYX_ERR(0, 781, __pyx_L1_error)
  __pyx_tuple__154 = PyTuple_Pack(1, ((PyObject *)__pyx_int_1)); if (unlikely(!__pyx_tuple__154)) __PYX_ERR(0, 781, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__154);
  __Pyx_GIVEREF(__pyx_tuple__154);

  /* "metaphor/monal/lcode/codewriter.py":784
 *         return ''
 * 
 *     def ValToStr(self, value, squeeze=False, addbra=False):             # <<<<<<<<<<<<<<
 *         if isinstance(value, list):
 *             if not len(value):
 */
  __pyx_tuple__155 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_value, __pyx_n_s_squeeze, __pyx_n_s_addbra, __pyx_n_s_lst, __pyx_n_s_val); if (unlikely(!__pyx_tuple__155)) __PYX_ERR(0, 784, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__155);
  __Pyx_GIVEREF(__pyx_tuple__155);
  __pyx_codeobj__156 = (PyObject*)__Pyx_PyCode_New(4, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__155, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_ValToStr, 784, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__156)) __PYX_ERR(0, 784, __pyx_L1_error)
  __pyx_tuple__157 = PyTuple_Pack(2, ((PyObject *)Py_False), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__157)) __PYX_ERR(0, 784, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__157);
  __Pyx_GIVEREF(__pyx_tuple__157);

  /* "metaphor/monal/lcode/codewriter.py":813
 *         return "%18.15g" % value
 * 
 *     def PlusEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' += ' + StSource
 * 
 */
  __pyx_tuple__158 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_StTarget, __pyx_n_s_StSource); if (unlikely(!__pyx_tuple__158)) __PYX_ERR(0, 813, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__158);
  __Pyx_GIVEREF(__pyx_tuple__158);
  __pyx_codeobj__159 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__158, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_PlusEgal, 813, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__159)) __PYX_ERR(0, 813, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":816
 *         return StTarget + ' += ' + StSource
 * 
 *     def MoinsEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' -= ' + StSource
 * 
 */
  __pyx_tuple__160 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_StTarget, __pyx_n_s_StSource); if (unlikely(!__pyx_tuple__160)) __PYX_ERR(0, 816, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__160);
  __Pyx_GIVEREF(__pyx_tuple__160);
  __pyx_codeobj__161 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__160, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_MoinsEgal, 816, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__161)) __PYX_ERR(0, 816, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":819
 *         return StTarget + ' -= ' + StSource
 * 
 *     def MultiEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' *= ' + StSource
 * 
 */
  __pyx_tuple__162 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_StTarget, __pyx_n_s_StSource); if (unlikely(!__pyx_tuple__162)) __PYX_ERR(0, 819, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__162);
  __Pyx_GIVEREF(__pyx_tuple__162);
  __pyx_codeobj__163 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__162, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_MultiEgal, 819, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__163)) __PYX_ERR(0, 819, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":822
 *         return StTarget + ' *= ' + StSource
 * 
 *     def MultiCondition1(self, val):             # <<<<<<<<<<<<<<
 *         if val == self.ValToStr(1):
 *             return ""
 */
  __pyx_tuple__164 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_val); if (unlikely(!__pyx_tuple__164)) __PYX_ERR(0, 822, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__164);
  __Pyx_GIVEREF(__pyx_tuple__164);
  __pyx_codeobj__165 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__164, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_MultiCondition1, 822, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__165)) __PYX_ERR(0, 822, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":827
 *         return "* %s"% val
 * 
 *     def DiviseEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' /= ' + StSource
 * 
 */
  __pyx_tuple__166 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_StTarget, __pyx_n_s_StSource); if (unlikely(!__pyx_tuple__166)) __PYX_ERR(0, 827, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__166);
  __Pyx_GIVEREF(__pyx_tuple__166);
  __pyx_codeobj__167 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__166, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_DiviseEgal, 827, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__167)) __PYX_ERR(0, 827, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":830
 *         return StTarget + ' /= ' + StSource
 * 
 *     def GetBeginStr(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_tuple__168 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__168)) __PYX_ERR(0, 830, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__168);
  __Pyx_GIVEREF(__pyx_tuple__168);
  __pyx_codeobj__169 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__168, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetBeginStr, 830, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__169)) __PYX_ERR(0, 830, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":833
 *         return ''
 * 
 *     def GetEndStr(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_tuple__170 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__170)) __PYX_ERR(0, 833, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__170);
  __Pyx_GIVEREF(__pyx_tuple__170);
  __pyx_codeobj__171 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__170, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetEndStr, 833, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__171)) __PYX_ERR(0, 833, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":836
 *         return ''
 * 
 *     def GetMatrixSource(self):             # <<<<<<<<<<<<<<
 *         try:
 *             if self.DriverSource.dispersionMatrix.ndim == 3:
 */
  __pyx_tuple__172 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__172)) __PYX_ERR(0, 836, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__172);
  __Pyx_GIVEREF(__pyx_tuple__172);
  __pyx_codeobj__173 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__172, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetMatrixSource, 836, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__173)) __PYX_ERR(0, 836, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":845
 *             return None
 * 
 *     def GetLangMarkup(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_tuple__174 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__174)) __PYX_ERR(0, 845, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__174);
  __Pyx_GIVEREF(__pyx_tuple__174);
  __pyx_codeobj__175 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__174, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetLangMarkup, 845, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__175)) __PYX_ERR(0, 845, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":848
 *         return ''
 * 
 *     def GetWithMatrix(self):             # <<<<<<<<<<<<<<
 *         Mat = self.MatrixSource
 *         return (Mat is not None) and (sum(Mat.shape) > 0)
 */
  __pyx_tuple__176 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Mat); if (unlikely(!__pyx_tuple__176)) __PYX_ERR(0, 848, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__176);
  __Pyx_GIVEREF(__pyx_tuple__176);
  __pyx_codeobj__177 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__176, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetWithMatrix, 848, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__177)) __PYX_ERR(0, 848, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":852
 *         return (Mat is not None) and (sum(Mat.shape) > 0)
 * 
 *     def GetShortFileName(self):             # <<<<<<<<<<<<<<
 *         return CCharOnlys(os.path.basename(self._FileName))
 * 
 */
  __pyx_tuple__178 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__178)) __PYX_ERR(0, 852, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__178);
  __Pyx_GIVEREF(__pyx_tuple__178);
  __pyx_codeobj__179 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__178, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetShortFileName, 852, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__179)) __PYX_ERR(0, 852, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":855
 *         return CCharOnlys(os.path.basename(self._FileName))
 * 
 *     def GetLongWeight(self):             # <<<<<<<<<<<<<<
 *         return self._Weight
 * 
 */
  __pyx_tuple__180 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__180)) __PYX_ERR(0, 855, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__180);
  __Pyx_GIVEREF(__pyx_tuple__180);
  __pyx_codeobj__181 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__180, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetLongWeight, 855, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__181)) __PYX_ERR(0, 855, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":858
 *         return self._Weight
 * 
 *     def GetCodeType(self):             # <<<<<<<<<<<<<<
 *         return CC.ctUnknown
 * 
 */
  __pyx_tuple__182 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__182)) __PYX_ERR(0, 858, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__182);
  __Pyx_GIVEREF(__pyx_tuple__182);
  __pyx_codeobj__183 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__182, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetCodeType, 858, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__183)) __PYX_ERR(0, 858, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":861
 *         return CC.ctUnknown
 * 
 *     def GetJurComment(self):             # <<<<<<<<<<<<<<
 *         St = CC.st_Juridic.lower()
 *         St.replace('.', '_')
 */
  __pyx_tuple__184 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_St, __pyx_n_s_Result); if (unlikely(!__pyx_tuple__184)) __PYX_ERR(0, 861, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__184);
  __Pyx_GIVEREF(__pyx_tuple__184);
  __pyx_codeobj__185 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__184, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetJurComment, 861, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__185)) __PYX_ERR(0, 861, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":869
 *         return Result
 * 
 *     def DoAffect(self, St1, St2):             # <<<<<<<<<<<<<<
 *         return self.ValToStr(St1) + self.Affect + self.ValToStr(St2)
 * 
 */
  __pyx_tuple__186 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_St1, __pyx_n_s_St2); if (unlikely(!__pyx_tuple__186)) __PYX_ERR(0, 869, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__186);
  __Pyx_GIVEREF(__pyx_tuple__186);
  __pyx_codeobj__187 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__186, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_DoAffect, 869, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__187)) __PYX_ERR(0, 869, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":872
 *         return self.ValToStr(St1) + self.Affect + self.ValToStr(St2)
 * 
 *     def CommentLine(self, Mess1, Mess2=None):             # <<<<<<<<<<<<<<
 *         if not Mess2:
 *             return self.Comment(str(Mess1))
 */
  __pyx_tuple__188 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_Mess1, __pyx_n_s_Mess2); if (unlikely(!__pyx_tuple__188)) __PYX_ERR(0, 872, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__188);
  __Pyx_GIVEREF(__pyx_tuple__188);
  __pyx_codeobj__189 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__188, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_CommentLine, 872, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__189)) __PYX_ERR(0, 872, __pyx_L1_error)
  __pyx_tuple__190 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__190)) __PYX_ERR(0, 872, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__190);
  __Pyx_GIVEREF(__pyx_tuple__190);

  /* "metaphor/monal/lcode/codewriter.py":878
 *             return self.Comment(str(Mess1) + ',' + str(Mess2))
 * 
 *     def GetCodeStr(self, index):             # <<<<<<<<<<<<<<
 *         Result = ''
 *         if (0 <= index < 2) and (self.ClientNum >= 0):
 */
  __pyx_tuple__191 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_index, __pyx_n_s_Result, __pyx_n_s_St, __pyx_n_s_P); if (unlikely(!__pyx_tuple__191)) __PYX_ERR(0, 878, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__191);
  __Pyx_GIVEREF(__pyx_tuple__191);
  __pyx_codeobj__192 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__191, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetCodeStr, 878, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__192)) __PYX_ERR(0, 878, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":889
 *         return Result
 * 
 *     def GetCodeStrII(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.CodeStr[0]
 * 
 */
  __pyx_tuple__193 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__193)) __PYX_ERR(0, 889, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__193);
  __Pyx_GIVEREF(__pyx_tuple__193);
  __pyx_codeobj__194 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__193, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetCodeStrII, 889, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__194)) __PYX_ERR(0, 889, __pyx_L1_error)
  __pyx_tuple__195 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__195)) __PYX_ERR(0, 889, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__195);
  __Pyx_GIVEREF(__pyx_tuple__195);

  /* "metaphor/monal/lcode/codewriter.py":892
 *         return self.CodeStr[0]
 * 
 *     def GetCodeStrJI(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.CodeStr[0]  # ??? 1 ???
 * 
 */
  __pyx_tuple__196 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__196)) __PYX_ERR(0, 892, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__196);
  __Pyx_GIVEREF(__pyx_tuple__196);
  __pyx_codeobj__197 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__196, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetCodeStrJI, 892, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__197)) __PYX_ERR(0, 892, __pyx_L1_error)
  __pyx_tuple__198 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__198)) __PYX_ERR(0, 892, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__198);
  __Pyx_GIVEREF(__pyx_tuple__198);

  /* "metaphor/monal/lcode/codewriter.py":895
 *         return self.CodeStr[0]  # ??? 1 ???
 * 
 *     def GetNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NetName
 * 
 */
  __pyx_tuple__199 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__199)) __PYX_ERR(0, 895, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__199);
  __Pyx_GIVEREF(__pyx_tuple__199);
  __pyx_codeobj__200 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__199, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetNameStr, 895, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__200)) __PYX_ERR(0, 895, __pyx_L1_error)
  __pyx_tuple__201 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__201)) __PYX_ERR(0, 895, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__201);
  __Pyx_GIVEREF(__pyx_tuple__201);

  /* "metaphor/monal/lcode/codewriter.py":898
 *         return self.NetName
 * 
 *     def GetTrueNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NetSource.trueName
 * 
 */
  __pyx_tuple__202 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__202)) __PYX_ERR(0, 898, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__202);
  __Pyx_GIVEREF(__pyx_tuple__202);
  __pyx_codeobj__203 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__202, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetTrueNameStr, 898, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__203)) __PYX_ERR(0, 898, __pyx_L1_error)
  __pyx_tuple__204 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__204)) __PYX_ERR(0, 898, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__204);
  __Pyx_GIVEREF(__pyx_tuple__204);

  /* "metaphor/monal/lcode/codewriter.py":901
 *         return self.NetSource.trueName
 * 
 *     def Getparamfilename(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.NetSource.paramfilename
 */
  __pyx_tuple__205 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__205)) __PYX_ERR(0, 901, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__205);
  __Pyx_GIVEREF(__pyx_tuple__205);
  __pyx_codeobj__206 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__205, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_Getparamfilename, 901, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__206)) __PYX_ERR(0, 901, __pyx_L1_error)
  __pyx_tuple__207 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__207)) __PYX_ERR(0, 901, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__207);
  __Pyx_GIVEREF(__pyx_tuple__207);

  /* "metaphor/monal/lcode/codewriter.py":907
 *             return ""
 * 
 *     def ConfigurationStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             self.NetSource.configuration
 */
  __pyx_tuple__208 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__208)) __PYX_ERR(0, 907, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__208);
  __Pyx_GIVEREF(__pyx_tuple__208);
  __pyx_codeobj__209 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__208, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_ConfigurationStr, 907, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__209)) __PYX_ERR(0, 907, __pyx_L1_error)
  __pyx_tuple__210 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__210)) __PYX_ERR(0, 907, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__210);
  __Pyx_GIVEREF(__pyx_tuple__210);

  /* "metaphor/monal/lcode/codewriter.py":914
 *             return ""
 * 
 *     def PptyValueStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.NetSource.pptyvalue
 */
  __pyx_tuple__211 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_val); if (unlikely(!__pyx_tuple__211)) __PYX_ERR(0, 914, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__211);
  __Pyx_GIVEREF(__pyx_tuple__211);
  __pyx_codeobj__212 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__211, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_PptyValueStr, 914, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__212)) __PYX_ERR(0, 914, __pyx_L1_error)
  __pyx_tuple__213 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__213)) __PYX_ERR(0, 914, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__213);
  __Pyx_GIVEREF(__pyx_tuple__213);

  /* "metaphor/monal/lcode/codewriter.py":921
 *             return ""
 * 
 *     def PptyLeverageStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.NetSource.pptyleverage
 */
  __pyx_tuple__214 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_val); if (unlikely(!__pyx_tuple__214)) __PYX_ERR(0, 921, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__214);
  __Pyx_GIVEREF(__pyx_tuple__214);
  __pyx_codeobj__215 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__214, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_PptyLeverageStr, 921, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__215)) __PYX_ERR(0, 921, __pyx_L1_error)
  __pyx_tuple__216 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__216)) __PYX_ERR(0, 921, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__216);
  __Pyx_GIVEREF(__pyx_tuple__216);

  /* "metaphor/monal/lcode/codewriter.py":928
 *             return ""
 * 
 *     def ModuleStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.moduleName
 * 
 */
  __pyx_tuple__217 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__217)) __PYX_ERR(0, 928, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__217);
  __Pyx_GIVEREF(__pyx_tuple__217);
  __pyx_codeobj__218 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__217, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_ModuleStr, 928, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__218)) __PYX_ERR(0, 928, __pyx_L1_error)
  __pyx_tuple__219 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__219)) __PYX_ERR(0, 928, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__219);
  __Pyx_GIVEREF(__pyx_tuple__219);

  /* "metaphor/monal/lcode/codewriter.py":931
 *         return self.moduleName
 * 
 *     def getModuleType(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.DriverSource.modelType
 */
  __pyx_tuple__220 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__220)) __PYX_ERR(0, 931, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__220);
  __Pyx_GIVEREF(__pyx_tuple__220);
  __pyx_codeobj__221 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__220, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_getModuleType, 931, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__221)) __PYX_ERR(0, 931, __pyx_L1_error)
  __pyx_tuple__222 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__222)) __PYX_ERR(0, 931, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__222);
  __Pyx_GIVEREF(__pyx_tuple__222);

  /* "metaphor/monal/lcode/codewriter.py":937
 *             return self.NetSource.modelType
 * 
 *     def ModulePStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return (self.moduleName + '.') if self.moduleName else ""
 * 
 */
  __pyx_tuple__223 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__223)) __PYX_ERR(0, 937, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__223);
  __Pyx_GIVEREF(__pyx_tuple__223);
  __pyx_codeobj__224 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__223, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_ModulePStr, 937, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__224)) __PYX_ERR(0, 937, __pyx_L1_error)
  __pyx_tuple__225 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__225)) __PYX_ERR(0, 937, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__225);
  __Pyx_GIVEREF(__pyx_tuple__225);

  /* "metaphor/monal/lcode/codewriter.py":940
 *         return (self.moduleName + '.') if self.moduleName else ""
 * 
 *     def GetTargetStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.TargetName
 * 
 */
  __pyx_tuple__226 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__226)) __PYX_ERR(0, 940, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__226);
  __Pyx_GIVEREF(__pyx_tuple__226);
  __pyx_codeobj__227 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__226, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetTargetStr, 940, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__227)) __PYX_ERR(0, 940, __pyx_L1_error)
  __pyx_tuple__228 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__228)) __PYX_ERR(0, 940, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__228);
  __Pyx_GIVEREF(__pyx_tuple__228);

  /* "metaphor/monal/lcode/codewriter.py":943
 *         return self.TargetName
 * 
 *     def GetDateStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         today = date.today()
 *         return today.strftime("%d/%m/%Y")
 */
  __pyx_tuple__229 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_today); if (unlikely(!__pyx_tuple__229)) __PYX_ERR(0, 943, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__229);
  __Pyx_GIVEREF(__pyx_tuple__229);
  __pyx_codeobj__230 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__229, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetDateStr, 943, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__230)) __PYX_ERR(0, 943, __pyx_L1_error)
  __pyx_tuple__231 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__231)) __PYX_ERR(0, 943, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__231);
  __Pyx_GIVEREF(__pyx_tuple__231);

  /* "metaphor/monal/lcode/codewriter.py":947
 *         return today.strftime("%d/%m/%Y")
 * 
 *     def GetTimeStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         time = datetime.now()
 *         return time.strftime("%H:%M:%S")
 */
  __pyx_tuple__232 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_time); if (unlikely(!__pyx_tuple__232)) __PYX_ERR(0, 947, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__232);
  __Pyx_GIVEREF(__pyx_tuple__232);
  __pyx_codeobj__233 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__232, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetTimeStr, 947, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__233)) __PYX_ERR(0, 947, __pyx_L1_error)
  __pyx_tuple__234 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__234)) __PYX_ERR(0, 947, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__234);
  __Pyx_GIVEREF(__pyx_tuple__234);

  /* "metaphor/monal/lcode/codewriter.py":951
 *         return time.strftime("%H:%M:%S")
 * 
 *     def GetUserStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.UserName
 * 
 */
  __pyx_tuple__235 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__235)) __PYX_ERR(0, 951, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__235);
  __Pyx_GIVEREF(__pyx_tuple__235);
  __pyx_codeobj__236 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__235, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetUserStr, 951, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__236)) __PYX_ERR(0, 951, __pyx_L1_error)
  __pyx_tuple__237 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__237)) __PYX_ERR(0, 951, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__237);
  __Pyx_GIVEREF(__pyx_tuple__237);

  /* "metaphor/monal/lcode/codewriter.py":954
 *         return self.UserName
 * 
 *     def GetComputerStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.ComputerName
 * 
 */
  __pyx_tuple__238 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__238)) __PYX_ERR(0, 954, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__238);
  __Pyx_GIVEREF(__pyx_tuple__238);
  __pyx_codeobj__239 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__238, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetComputerStr, 954, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__239)) __PYX_ERR(0, 954, __pyx_L1_error)
  __pyx_tuple__240 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__240)) __PYX_ERR(0, 954, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__240);
  __Pyx_GIVEREF(__pyx_tuple__240);

  /* "metaphor/monal/lcode/codewriter.py":957
 *         return self.ComputerName
 * 
 *     def GetFileNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.FileName
 * 
 */
  __pyx_tuple__241 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__241)) __PYX_ERR(0, 957, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__241);
  __Pyx_GIVEREF(__pyx_tuple__241);
  __pyx_codeobj__242 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__241, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetFileNameStr, 957, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__242)) __PYX_ERR(0, 957, __pyx_L1_error)
  __pyx_tuple__243 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__243)) __PYX_ERR(0, 957, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__243);
  __Pyx_GIVEREF(__pyx_tuple__243);

  /* "metaphor/monal/lcode/codewriter.py":960
 *         return self.FileName
 * 
 *     def GetNumpyDir(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NumpyDir
 * 
 */
  __pyx_tuple__244 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__244)) __PYX_ERR(0, 960, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__244);
  __Pyx_GIVEREF(__pyx_tuple__244);
  __pyx_codeobj__245 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__244, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetNumpyDir, 960, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__245)) __PYX_ERR(0, 960, __pyx_L1_error)
  __pyx_tuple__246 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__246)) __PYX_ERR(0, 960, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__246);
  __Pyx_GIVEREF(__pyx_tuple__246);

  /* "metaphor/monal/lcode/codewriter.py":963
 *         return self.NumpyDir
 * 
 *     def GetInOutStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.inputCount + self.NetSource.outputCount)
 *     GetInOutputsStr = GetInOutStr
 */
  __pyx_tuple__247 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__247)) __PYX_ERR(0, 963, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__247);
  __Pyx_GIVEREF(__pyx_tuple__247);
  __pyx_codeobj__248 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__247, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetInOutStr, 963, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__248)) __PYX_ERR(0, 963, __pyx_L1_error)
  __pyx_tuple__249 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__249)) __PYX_ERR(0, 963, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__249);
  __Pyx_GIVEREF(__pyx_tuple__249);

  /* "metaphor/monal/lcode/codewriter.py":967
 *     GetInOutputsStr = GetInOutStr
 * 
 *     def GetInputValues(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]
 */
  __pyx_tuple__250 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_lst, __pyx_n_s_res, __pyx_n_s_node); if (unlikely(!__pyx_tuple__250)) __PYX_ERR(0, 967, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__250);
  __Pyx_GIVEREF(__pyx_tuple__250);
  __pyx_codeobj__251 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__250, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetInputValues, 967, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__251)) __PYX_ERR(0, 967, __pyx_L1_error)
  __pyx_tuple__252 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__252)) __PYX_ERR(0, 967, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__252);
  __Pyx_GIVEREF(__pyx_tuple__252);

  /* "metaphor/monal/lcode/codewriter.py":975
 *         return res
 * 
 *     def GetOutputValues(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]
 */
  __pyx_tuple__253 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_lst, __pyx_n_s_res, __pyx_n_s_node); if (unlikely(!__pyx_tuple__253)) __PYX_ERR(0, 975, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__253);
  __Pyx_GIVEREF(__pyx_tuple__253);
  __pyx_codeobj__254 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__253, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetOutputValues, 975, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__254)) __PYX_ERR(0, 975, __pyx_L1_error)
  __pyx_tuple__255 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__255)) __PYX_ERR(0, 975, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__255);
  __Pyx_GIVEREF(__pyx_tuple__255);

  /* "metaphor/monal/lcode/codewriter.py":983
 *         return res
 * 
 *     def GetInputsStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             res = str(self.NetSource.inputCount)
 */
  __pyx_tuple__256 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_res); if (unlikely(!__pyx_tuple__256)) __PYX_ERR(0, 983, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__256);
  __Pyx_GIVEREF(__pyx_tuple__256);
  __pyx_codeobj__257 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__256, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetInputsStr, 983, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__257)) __PYX_ERR(0, 983, __pyx_L1_error)
  __pyx_tuple__258 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__258)) __PYX_ERR(0, 983, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__258);
  __Pyx_GIVEREF(__pyx_tuple__258);

  /* "metaphor/monal/lcode/codewriter.py":990
 *         return res
 * 
 *     def GetOutputsStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             res = str(self.NetSource.outputCount)
 */
  __pyx_tuple__259 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_res); if (unlikely(!__pyx_tuple__259)) __PYX_ERR(0, 990, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__259);
  __Pyx_GIVEREF(__pyx_tuple__259);
  __pyx_codeobj__260 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__259, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetOutputsStr, 990, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__260)) __PYX_ERR(0, 990, __pyx_L1_error)
  __pyx_tuple__261 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__261)) __PYX_ERR(0, 990, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__261);
  __Pyx_GIVEREF(__pyx_tuple__261);

  /* "metaphor/monal/lcode/codewriter.py":997
 *         return res
 * 
 *     def GetSynapsesStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.synapseCount)
 * 
 */
  __pyx_tuple__262 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__262)) __PYX_ERR(0, 997, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__262);
  __Pyx_GIVEREF(__pyx_tuple__262);
  __pyx_codeobj__263 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__262, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetSynapsesStr, 997, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__263)) __PYX_ERR(0, 997, __pyx_L1_error)
  __pyx_tuple__264 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__264)) __PYX_ERR(0, 997, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__264);
  __Pyx_GIVEREF(__pyx_tuple__264);

  /* "metaphor/monal/lcode/codewriter.py":1000
 *         return str(self.NetSource.synapseCount)
 * 
 *     def GetDimensionStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.dimension)
 * 
 */
  __pyx_tuple__265 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__265)) __PYX_ERR(0, 1000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__265);
  __Pyx_GIVEREF(__pyx_tuple__265);
  __pyx_codeobj__266 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__265, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetDimensionStr, 1000, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__266)) __PYX_ERR(0, 1000, __pyx_L1_error)
  __pyx_tuple__267 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__267)) __PYX_ERR(0, 1000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__267);
  __Pyx_GIVEREF(__pyx_tuple__267);

  /* "metaphor/monal/lcode/codewriter.py":1007
 * #         return str(val)
 * 
 *     def GetOrderStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.order)
 * 
 */
  __pyx_tuple__268 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__268)) __PYX_ERR(0, 1007, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__268);
  __Pyx_GIVEREF(__pyx_tuple__268);
  __pyx_codeobj__269 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__268, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetOrderStr, 1007, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__269)) __PYX_ERR(0, 1007, __pyx_L1_error)
  __pyx_tuple__270 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__270)) __PYX_ERR(0, 1007, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__270);
  __Pyx_GIVEREF(__pyx_tuple__270);

  /* "metaphor/monal/lcode/codewriter.py":1010
 *         return str(self.NetSource.order)
 * 
 *     def GetNodeStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return str(self.NetSource.nodeCount)
 */
  __pyx_tuple__271 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__271)) __PYX_ERR(0, 1010, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__271);
  __Pyx_GIVEREF(__pyx_tuple__271);
  __pyx_codeobj__272 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__271, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetNodeStr, 1010, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__272)) __PYX_ERR(0, 1010, __pyx_L1_error)
  __pyx_tuple__273 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__273)) __PYX_ERR(0, 1010, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__273);
  __Pyx_GIVEREF(__pyx_tuple__273);

  /* "metaphor/monal/lcode/codewriter.py":1016
 *             return 0
 * 
 *     def GetStdDevStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.stdtrain
 */
  __pyx_tuple__274 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_val, __pyx_n_s_res); if (unlikely(!__pyx_tuple__274)) __PYX_ERR(0, 1016, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__274);
  __Pyx_GIVEREF(__pyx_tuple__274);
  __pyx_codeobj__275 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__274, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetStdDevStr, 1016, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__275)) __PYX_ERR(0, 1016, __pyx_L1_error)
  __pyx_tuple__276 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__276)) __PYX_ERR(0, 1016, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__276);
  __Pyx_GIVEREF(__pyx_tuple__276);

  /* "metaphor/monal/lcode/codewriter.py":1027
 *         return res
 * 
 *     def GetStudentStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.studentvariable
 */
  __pyx_tuple__277 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_val, __pyx_n_s_res); if (unlikely(!__pyx_tuple__277)) __PYX_ERR(0, 1027, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__277);
  __Pyx_GIVEREF(__pyx_tuple__277);
  __pyx_codeobj__278 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__277, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetStudentStr, 1027, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__278)) __PYX_ERR(0, 1027, __pyx_L1_error)
  __pyx_tuple__279 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__279)) __PYX_ERR(0, 1027, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__279);
  __Pyx_GIVEREF(__pyx_tuple__279);

  /* "metaphor/monal/lcode/codewriter.py":1038
 *         return res
 * 
 *     def GetMuStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.mu
 */
  __pyx_tuple__280 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_val, __pyx_n_s_res); if (unlikely(!__pyx_tuple__280)) __PYX_ERR(0, 1038, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__280);
  __Pyx_GIVEREF(__pyx_tuple__280);
  __pyx_codeobj__281 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__280, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetMuStr, 1038, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__281)) __PYX_ERR(0, 1038, __pyx_L1_error)
  __pyx_tuple__282 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__282)) __PYX_ERR(0, 1038, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__282);
  __Pyx_GIVEREF(__pyx_tuple__282);

  /* "metaphor/monal/lcode/codewriter.py":1049
 *         return res
 * 
 *     def GetUseCountStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.UseCount)
 * 
 */
  __pyx_tuple__283 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__283)) __PYX_ERR(0, 1049, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__283);
  __Pyx_GIVEREF(__pyx_tuple__283);
  __pyx_codeobj__284 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__283, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetUseCountStr, 1049, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__284)) __PYX_ERR(0, 1049, __pyx_L1_error)
  __pyx_tuple__285 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__285)) __PYX_ERR(0, 1049, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__285);
  __Pyx_GIVEREF(__pyx_tuple__285);

  /* "metaphor/monal/lcode/codewriter.py":1052
 *         return str(self.UseCount)
 * 
 *     def GetCommentCountStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(max(1, self.NetSource.commentCount))
 * 
 */
  __pyx_tuple__286 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__286)) __PYX_ERR(0, 1052, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__286);
  __Pyx_GIVEREF(__pyx_tuple__286);
  __pyx_codeobj__287 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__286, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetCommentCountStr, 1052, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__287)) __PYX_ERR(0, 1052, __pyx_L1_error)
  __pyx_tuple__288 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__288)) __PYX_ERR(0, 1052, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__288);
  __Pyx_GIVEREF(__pyx_tuple__288);

  /* "metaphor/monal/lcode/codewriter.py":1055
 *         return str(max(1, self.NetSource.commentCount))
 * 
 *     def GetLinearStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         # Attention cela perturbe le model et les valeurs sauvegardes
 *         try:
 */
  __pyx_tuple__289 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_ind); if (unlikely(!__pyx_tuple__289)) __PYX_ERR(0, 1055, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__289);
  __Pyx_GIVEREF(__pyx_tuple__289);
  __pyx_codeobj__290 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__289, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetLinearStr, 1055, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__290)) __PYX_ERR(0, 1055, __pyx_L1_error)
  __pyx_tuple__291 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__291)) __PYX_ERR(0, 1055, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__291);
  __Pyx_GIVEREF(__pyx_tuple__291);

  /* "metaphor/monal/lcode/codewriter.py":1063
 *         return str(ind)
 * 
 *     def BaseCount(self):             # <<<<<<<<<<<<<<
 *         return 0
 * 
 */
  __pyx_tuple__292 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__292)) __PYX_ERR(0, 1063, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__292);
  __Pyx_GIVEREF(__pyx_tuple__292);
  __pyx_codeobj__293 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__292, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_BaseCount, 1063, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__293)) __PYX_ERR(0, 1063, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":1066
 *         return 0
 * 
 *     def SaveToFile(self, St, back=False):             # <<<<<<<<<<<<<<
 *         path = os.path.dirname(self.FileName)
 *         if back:
 */
  __pyx_tuple__294 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_St, __pyx_n_s_back, __pyx_n_s_path, __pyx_n_s_fname, __pyx_n_s_ff, __pyx_n_s_Result); if (unlikely(!__pyx_tuple__294)) __PYX_ERR(0, 1066, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__294);
  __Pyx_GIVEREF(__pyx_tuple__294);
  __pyx_codeobj__295 = (PyObject*)__Pyx_PyCode_New(3, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__294, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_SaveToFile, 1066, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__295)) __PYX_ERR(0, 1066, __pyx_L1_error)
  __pyx_tuple__296 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__296)) __PYX_ERR(0, 1066, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__296);
  __Pyx_GIVEREF(__pyx_tuple__296);

  /* "metaphor/monal/lcode/codewriter.py":1086
 *         return Result
 * 
 *     def LimitLine(self, Text):             # <<<<<<<<<<<<<<
 *         # limitation de la longueur des lignes. Faut-il le faire ?
 *         return Text
 */
  __pyx_tuple__297 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Text); if (unlikely(!__pyx_tuple__297)) __PYX_ERR(0, 1086, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__297);
  __Pyx_GIVEREF(__pyx_tuple__297);
  __pyx_codeobj__298 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__297, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_LimitLine, 1086, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__298)) __PYX_ERR(0, 1086, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":1090
 *         return Text
 * 
 *     def IsComment(self, Line):             # <<<<<<<<<<<<<<
 *         return False
 * 
 */
  __pyx_tuple__299 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Line); if (unlikely(!__pyx_tuple__299)) __PYX_ERR(0, 1090, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__299);
  __Pyx_GIVEREF(__pyx_tuple__299);
  __pyx_codeobj__300 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__299, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_IsComment, 1090, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__300)) __PYX_ERR(0, 1090, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":1093
 *         return False
 * 
 *     def ExtractFileNameOnly(self, filename):             # <<<<<<<<<<<<<<
 *         res = os.path.basename(filename)
 *         res, _ = os.path.splitext(res)
 */
  __pyx_tuple__301 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_filename, __pyx_n_s_res, __pyx_n_s__15); if (unlikely(!__pyx_tuple__301)) __PYX_ERR(0, 1093, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__301);
  __Pyx_GIVEREF(__pyx_tuple__301);
  __pyx_codeobj__302 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__301, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_ExtractFileNameOnly, 1093, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__302)) __PYX_ERR(0, 1093, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":1098
 *         return res
 * 
 *     def GetDataRecStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return ''
 * # commented le 14/112/17
 */
  __pyx_tuple__303 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_garb); if (unlikely(!__pyx_tuple__303)) __PYX_ERR(0, 1098, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__303);
  __Pyx_GIVEREF(__pyx_tuple__303);
  __pyx_codeobj__304 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__303, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetDataRecStr, 1098, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__304)) __PYX_ERR(0, 1098, __pyx_L1_error)
  __pyx_tuple__305 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__305)) __PYX_ERR(0, 1098, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__305);
  __Pyx_GIVEREF(__pyx_tuple__305);

  /* "metaphor/monal/lcode/codewriter.py":1131
 * #         return "\n".join(TL)
 * #
 *     def GetModelCount(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             N = self.NetSource.modelCount
 */
  __pyx_tuple__306 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_Indent, __pyx_n_s_N); if (unlikely(!__pyx_tuple__306)) __PYX_ERR(0, 1131, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__306);
  __Pyx_GIVEREF(__pyx_tuple__306);
  __pyx_codeobj__307 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__306, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetModelCount, 1131, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__307)) __PYX_ERR(0, 1131, __pyx_L1_error)
  __pyx_tuple__308 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__308)) __PYX_ERR(0, 1131, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__308);
  __Pyx_GIVEREF(__pyx_tuple__308);

  /* "metaphor/monal/lcode/codewriter.py":1138
 *         return str(N)
 * 
 *     def GetDataCount(self, Indent=0):             # <<<<<<<<<<<<<<
 *         N = 0
 * #         model = self.NetSource
 */
  __pyx_tuple__309 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_Indent, __pyx_n_s_N); if (unlikely(!__pyx_tuple__309)) __PYX_ERR(0, 1138, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__309);
  __Pyx_GIVEREF(__pyx_tuple__309);
  __pyx_codeobj__310 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__309, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetDataCount, 1138, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__310)) __PYX_ERR(0, 1138, __pyx_L1_error)
  __pyx_tuple__311 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__311)) __PYX_ERR(0, 1138, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__311);
  __Pyx_GIVEREF(__pyx_tuple__311);

  /* "metaphor/monal/lcode/codewriter.py":1154
 *         return str(N)
 * 
 *     def GetModelList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         lst = [self.DebutLigne(Indent) + '"%s"'% model.name for model in self.NetSource.models]
 *         return ",\n".join(lst)
 */
  __pyx_tuple__312 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_Indent, __pyx_n_s_lst, __pyx_n_s_model); if (unlikely(!__pyx_tuple__312)) __PYX_ERR(0, 1154, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__312);
  __Pyx_GIVEREF(__pyx_tuple__312);
  __pyx_codeobj__313 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__312, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetModelList, 1154, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__313)) __PYX_ERR(0, 1154, __pyx_L1_error)
  __pyx_tuple__314 = PyTuple_Pack(1, ((PyObject *)__pyx_int_1)); if (unlikely(!__pyx_tuple__314)) __PYX_ERR(0, 1154, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__314);
  __Pyx_GIVEREF(__pyx_tuple__314);

  /* "metaphor/monal/lcode/codewriter.py":1158
 *         return ",\n".join(lst)
 * 
 *     def GetTrueModelList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         try:
 *             try:
 */
  __pyx_tuple__315 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_Indent, __pyx_n_s_lst, __pyx_n_s_model, __pyx_n_s_model); if (unlikely(!__pyx_tuple__315)) __PYX_ERR(0, 1158, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__315);
  __Pyx_GIVEREF(__pyx_tuple__315);
  __pyx_codeobj__316 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__315, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetTrueModelList, 1158, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__316)) __PYX_ERR(0, 1158, __pyx_L1_error)
  __pyx_tuple__317 = PyTuple_Pack(1, ((PyObject *)__pyx_int_1)); if (unlikely(!__pyx_tuple__317)) __PYX_ERR(0, 1158, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__317);
  __Pyx_GIVEREF(__pyx_tuple__317);

  /* "metaphor/monal/lcode/codewriter.py":1168
 *         return ",\n".join(lst)
 * 
 *     def Getsmiles(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.NetSource.smiles
 */
  __pyx_tuple__318 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__318)) __PYX_ERR(0, 1168, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__318);
  __Pyx_GIVEREF(__pyx_tuple__318);
  __pyx_codeobj__319 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__318, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_Getsmiles, 1168, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__319)) __PYX_ERR(0, 1168, __pyx_L1_error)
  __pyx_tuple__320 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__320)) __PYX_ERR(0, 1168, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__320);
  __Pyx_GIVEREF(__pyx_tuple__320);

  /* "metaphor/monal/lcode/codewriter.py":1174
 *             return ""
 * 
 *     def Getmodelname(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return nonASCIICharsConvert(self.NetSource.trueName)
 */
  __pyx_tuple__321 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_Indent); if (unlikely(!__pyx_tuple__321)) __PYX_ERR(0, 1174, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__321);
  __Pyx_GIVEREF(__pyx_tuple__321);
  __pyx_codeobj__322 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__321, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_Getmodelname, 1174, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__322)) __PYX_ERR(0, 1174, __pyx_L1_error)
  __pyx_tuple__323 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__323)) __PYX_ERR(0, 1174, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__323);
  __Pyx_GIVEREF(__pyx_tuple__323);

  /* "metaphor/monal/lcode/codewriter.py":1181
 *             return ""
 * 
 *     def GetsmilesList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         try:
 *             if hasattr(self.NetSource.models[0], "smiles"):
 */
  __pyx_tuple__324 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_Indent, __pyx_n_s_lst, __pyx_n_s_model, __pyx_n_s_model); if (unlikely(!__pyx_tuple__324)) __PYX_ERR(0, 1181, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__324);
  __Pyx_GIVEREF(__pyx_tuple__324);
  __pyx_codeobj__325 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__324, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetsmilesList, 1181, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__325)) __PYX_ERR(0, 1181, __pyx_L1_error)
  __pyx_tuple__326 = PyTuple_Pack(1, ((PyObject *)__pyx_int_1)); if (unlikely(!__pyx_tuple__326)) __PYX_ERR(0, 1181, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__326);
  __Pyx_GIVEREF(__pyx_tuple__326);

  /* "metaphor/monal/lcode/codewriter.py":1193
 *         return ""
 * 
 *     def GetDitectorStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         modulo = 32
 *         lst = []
 */
  __pyx_tuple__327 = PyTuple_Pack(9, __pyx_n_s_self, __pyx_n_s_garb, __pyx_n_s_modulo, __pyx_n_s_lst, __pyx_n_s_N, __pyx_n_s_start, __pyx_n_s_Q, __pyx_n_s_lst2, __pyx_n_s_i); if (unlikely(!__pyx_tuple__327)) __PYX_ERR(0, 1193, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__327);
  __Pyx_GIVEREF(__pyx_tuple__327);
  __pyx_codeobj__328 = (PyObject*)__Pyx_PyCode_New(2, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__327, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetDitectorStr, 1193, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__328)) __PYX_ERR(0, 1193, __pyx_L1_error)
  __pyx_tuple__329 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__329)) __PYX_ERR(0, 1193, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__329);
  __Pyx_GIVEREF(__pyx_tuple__329);

  /* "metaphor/monal/lcode/codewriter.py":1207
 *         return "{\n%s}"%  ",\n".join(lst)
 * 
 *     def Get0TargetList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         lst = []
 */
  __pyx_tuple__330 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_Indent, __pyx_n_s_source, __pyx_n_s_lst, __pyx_n_s_i); if (unlikely(!__pyx_tuple__330)) __PYX_ERR(0, 1207, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__330);
  __Pyx_GIVEREF(__pyx_tuple__330);
  __pyx_codeobj__331 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__330, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_Get0TargetList, 1207, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__331)) __PYX_ERR(0, 1207, __pyx_L1_error)
  __pyx_tuple__332 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__332)) __PYX_ERR(0, 1207, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__332);
  __Pyx_GIVEREF(__pyx_tuple__332);

  /* "metaphor/monal/lcode/codewriter.py":1217
 *         return "{\n%s}" % ",".join(lst)
 * 
 *     def GetTargetList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if not hasattr(source, "targets"):
 */
  __pyx_tuple__333 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_Indent, __pyx_n_s_source, __pyx_n_s_lst, __pyx_n_s_st, __pyx_n_s_val); if (unlikely(!__pyx_tuple__333)) __PYX_ERR(0, 1217, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__333);
  __Pyx_GIVEREF(__pyx_tuple__333);
  __pyx_codeobj__334 = (PyObject*)__Pyx_PyCode_New(2, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__333, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetTargetList, 1217, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__334)) __PYX_ERR(0, 1217, __pyx_L1_error)
  __pyx_tuple__335 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__335)) __PYX_ERR(0, 1217, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__335);
  __Pyx_GIVEREF(__pyx_tuple__335);

  /* "metaphor/monal/lcode/codewriter.py":1226
 * 
 *     #@timeit
 *     def GetBiasBasedList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 */
  __pyx_tuple__336 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_Indent, __pyx_n_s_source, __pyx_n_s_lst, __pyx_n_s_val, __pyx_n_s_val); if (unlikely(!__pyx_tuple__336)) __PYX_ERR(0, 1226, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__336);
  __Pyx_GIVEREF(__pyx_tuple__336);
  __pyx_codeobj__337 = (PyObject*)__Pyx_PyCode_New(2, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__336, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetBiasBasedList, 1226, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__337)) __PYX_ERR(0, 1226, __pyx_L1_error)
  __pyx_tuple__338 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__338)) __PYX_ERR(0, 1226, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__338);
  __Pyx_GIVEREF(__pyx_tuple__338);

  /* "metaphor/monal/lcode/codewriter.py":1236
 *         return "{{{0}}}".format(", ".join(lst))
 * 
 *     def Getbiasbasedcount(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 */
  __pyx_tuple__339 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_indent, __pyx_n_s_source, __pyx_n_s_lst, __pyx_n_s_val, __pyx_n_s_val); if (unlikely(!__pyx_tuple__339)) __PYX_ERR(0, 1236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__339);
  __Pyx_GIVEREF(__pyx_tuple__339);
  __pyx_codeobj__340 = (PyObject*)__Pyx_PyCode_New(2, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__339, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_Getbiasbasedcount, 1236, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__340)) __PYX_ERR(0, 1236, __pyx_L1_error)
  __pyx_tuple__341 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__341)) __PYX_ERR(0, 1236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__341);
  __Pyx_GIVEREF(__pyx_tuple__341);

  /* "metaphor/monal/lcode/codewriter.py":1246
 *         return len(lst)
 * 
 *     def GetOutputSynList(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 */
  __pyx_tuple__342 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_indent, __pyx_n_s_source, __pyx_n_s_lst, __pyx_n_s_st, __pyx_n_s_val, __pyx_n_s_val); if (unlikely(!__pyx_tuple__342)) __PYX_ERR(0, 1246, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__342);
  __Pyx_GIVEREF(__pyx_tuple__342);
  __pyx_codeobj__343 = (PyObject*)__Pyx_PyCode_New(2, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__342, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_GetOutputSynList, 1246, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__343)) __PYX_ERR(0, 1246, __pyx_L1_error)
  __pyx_tuple__344 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__344)) __PYX_ERR(0, 1246, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__344);
  __Pyx_GIVEREF(__pyx_tuple__344);

  /* "metaphor/monal/lcode/codewriter.py":1265
 * #         return '{%s}'% st
 * 
 *     def Getoutputsyncount(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 */
  __pyx_tuple__345 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_indent, __pyx_n_s_source, __pyx_n_s_lst, __pyx_n_s_val, __pyx_n_s_val); if (unlikely(!__pyx_tuple__345)) __PYX_ERR(0, 1265, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__345);
  __Pyx_GIVEREF(__pyx_tuple__345);
  __pyx_codeobj__346 = (PyObject*)__Pyx_PyCode_New(2, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__345, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_Getoutputsyncount, 1265, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__346)) __PYX_ERR(0, 1265, __pyx_L1_error)
  __pyx_tuple__347 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__347)) __PYX_ERR(0, 1265, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__347);
  __Pyx_GIVEREF(__pyx_tuple__347);

  /* "metaphor/monal/lcode/codewriter.py":1279
 * #         return len(source.outputLinkId)
 * 
 *     def BracketOutDeclStr(self):             # <<<<<<<<<<<<<<
 *         if self.NetSource.outputCount == 1:
 *             return ""
 */
  __pyx_tuple__348 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__348)) __PYX_ERR(0, 1279, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__348);
  __Pyx_GIVEREF(__pyx_tuple__348);
  __pyx_codeobj__349 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__348, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_BracketOutDeclStr, 1279, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__349)) __PYX_ERR(0, 1279, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":1284
 *         return "[OUTPUTCOUNT]"
 * 
 *     def BracketOut0Str(self):             # <<<<<<<<<<<<<<
 *         if self.NetSource.outputCount == 1:
 *             return ""
 */
  __pyx_tuple__350 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__350)) __PYX_ERR(0, 1284, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__350);
  __Pyx_GIVEREF(__pyx_tuple__350);
  __pyx_codeobj__351 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__350, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_metaphor_monal_lcode_codewriter_2, __pyx_n_s_BracketOut0Str, 1284, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__351)) __PYX_ERR(0, 1284, __pyx_L1_error)

  /* "metaphor/monal/lcode/codewriter.py":42
 *     'ui,uj', 'if,ig', 'if,jf', 'ig,ih', 'ug,uh']
 * 
 * @Properties(("Weight", "WeightRedir", "WeightDecl", "CurrentFunctionType",             # <<<<<<<<<<<<<<
 *              "CurrentHeader", "NoTemplate", "UserName", "ComputerName",
 *              "NetName", "TargetName", "FileName", "Step", "OKMulti",
 */
  __pyx_tuple__352 = PyTuple_Pack(38, __pyx_n_u_Weight_2, __pyx_n_u_WeightRedir_2, __pyx_n_u_WeightDecl_2, __pyx_n_u_CurrentFunctionType_2, __pyx_n_u_CurrentHeader_2, __pyx_n_u_NoTemplate_2, __pyx_n_u_UserName_2, __pyx_n_u_ComputerName_2, __pyx_n_u_NetName_2, __pyx_n_u_TargetName_2, __pyx_n_u_FileName_2, __pyx_n_u_Step_2, __pyx_n_u_OKMulti_2, __pyx_n_u_ForAllOutputs_2, __pyx_n_u_GetString_2, __pyx_n_u_SingleGradient_2, __pyx_n_u_Matrix_2, __pyx_n_u_MatDecl_2, __pyx_n_u_NNode_2, __pyx_n_u_ClientNum_2, __pyx_n_u_UseCount_2, __pyx_n_u_ExternVectors_2, __pyx_n_u_MinDecl_2, __pyx_n_u_MaxDecl_2, __pyx_n_u_StdDevDecl_2, __pyx_n_u_NoIndent_2, __pyx_n_u_MaxLineLength_2, __pyx_n_u_CipherKey_2, __pyx_n_u_TemplatePath_2, __pyx_n_u_NomFonction_2, __pyx_n_u_NomFTransfer_2, __pyx_n_u_NomFGradientCall_2, __pyx_n_u_NomFGradient_2, __pyx_n_u_NumpyDir, __pyx_n_u_SaveDir_2, __pyx_n_u_moduleName_2, __pyx_n_u_originallink_2, __pyx_n_u_dynamiclinking_2); if (unlikely(!__pyx_tuple__352)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__352);
  __Pyx_GIVEREF(__pyx_tuple__352);
  __pyx_tuple__353 = PyTuple_Pack(2, __pyx_tuple__352, Py_False); if (unlikely(!__pyx_tuple__353)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__353);
  __Pyx_GIVEREF(__pyx_tuple__353);

  /* "metaphor/monal/lcode/codewriter.py":52
 *              "moduleName", "originallink","dynamiclinking"), False)
 * #@Properties2(("NetSource",), "Set", "Get")
 * @Properties2(("CodeType", "Affect", "LongWeight", "BeginStr", "EndStr",             # <<<<<<<<<<<<<<
 *               "WithMatrix", "NetworkKind", "LangMarkup", "ShortFileName",
 *               "DecalIni", "MatrixSource",), None, "Get")
 */
  __pyx_tuple__354 = PyTuple_Pack(11, __pyx_n_u_CodeType, __pyx_n_u_Affect, __pyx_n_u_LongWeight, __pyx_n_u_BeginStr, __pyx_n_u_EndStr, __pyx_n_u_WithMatrix, __pyx_n_u_NetworkKind, __pyx_n_u_LangMarkup, __pyx_n_u_ShortFileName, __pyx_n_u_DecalIni, __pyx_n_u_MatrixSource); if (unlikely(!__pyx_tuple__354)) __PYX_ERR(0, 52, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__354);
  __Pyx_GIVEREF(__pyx_tuple__354);
  __pyx_tuple__355 = PyTuple_Pack(3, __pyx_tuple__354, Py_None, __pyx_n_u_Get); if (unlikely(!__pyx_tuple__355)) __PYX_ERR(0, 52, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__355);
  __Pyx_GIVEREF(__pyx_tuple__355);

  /* "metaphor/monal/lcode/codewriter.py":55
 *               "WithMatrix", "NetworkKind", "LangMarkup", "ShortFileName",
 *               "DecalIni", "MatrixSource",), None, "Get")
 * @Properties2(("DecimalSep",), 'Set', "_")             # <<<<<<<<<<<<<<
 * class CodeWriterBase(Component):
 *     '''
 */
  __pyx_tuple__356 = PyTuple_Pack(1, __pyx_n_u_DecimalSep_2); if (unlikely(!__pyx_tuple__356)) __PYX_ERR(0, 55, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__356);
  __Pyx_GIVEREF(__pyx_tuple__356);
  __pyx_tuple__357 = PyTuple_Pack(3, __pyx_tuple__356, __pyx_n_u_Set, __pyx_n_u__15); if (unlikely(!__pyx_tuple__357)) __PYX_ERR(0, 55, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__357);
  __Pyx_GIVEREF(__pyx_tuple__357);
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_RefNannyFinishContext();
  return -1;
}

static int __Pyx_InitGlobals(void) {
  if (__Pyx_InitStrings(__pyx_string_tab) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
  __pyx_float_1E308 = PyFloat_FromDouble(1E308); if (unlikely(!__pyx_float_1E308)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_float_neg_1E308 = PyFloat_FromDouble(-1E308); if (unlikely(!__pyx_float_neg_1E308)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_2 = PyInt_FromLong(2); if (unlikely(!__pyx_int_2)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_3 = PyInt_FromLong(3); if (unlikely(!__pyx_int_3)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_32 = PyInt_FromLong(32); if (unlikely(!__pyx_int_32)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_35535 = PyInt_FromLong(35535L); if (unlikely(!__pyx_int_35535)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_neg_1 = PyInt_FromLong(-1); if (unlikely(!__pyx_int_neg_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_neg_32 = PyInt_FromLong(-32); if (unlikely(!__pyx_int_neg_32)) __PYX_ERR(0, 1, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}

static int __Pyx_modinit_global_init_code(void); /*proto*/
static int __Pyx_modinit_variable_export_code(void); /*proto*/
static int __Pyx_modinit_function_export_code(void); /*proto*/
static int __Pyx_modinit_type_init_code(void); /*proto*/
static int __Pyx_modinit_type_import_code(void); /*proto*/
static int __Pyx_modinit_variable_import_code(void); /*proto*/
static int __Pyx_modinit_function_import_code(void); /*proto*/

static int __Pyx_modinit_global_init_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0);
  /*--- Global init code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_variable_export_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0);
  /*--- Variable export code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_export_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0);
  /*--- Function export code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_type_init_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0);
  /*--- Type init code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_type_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0);
  /*--- Type import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_variable_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0);
  /*--- Variable import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0);
  /*--- Function import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}


#if PY_MAJOR_VERSION < 3
#ifdef CYTHON_NO_PYINIT_EXPORT
#define __Pyx_PyMODINIT_FUNC void
#else
#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC
#endif
#else
#ifdef CYTHON_NO_PYINIT_EXPORT
#define __Pyx_PyMODINIT_FUNC PyObject *
#else
#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC
#endif
#endif
#ifndef CYTHON_SMALL_CODE
#if defined(__clang__)
    #define CYTHON_SMALL_CODE
#elif defined(__GNUC__) && (!(defined(__cplusplus)) || (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 4)))
    #define CYTHON_SMALL_CODE __attribute__((cold))
#else
    #define CYTHON_SMALL_CODE
#endif
#endif


#if PY_MAJOR_VERSION < 3
__Pyx_PyMODINIT_FUNC initcodewriter(void) CYTHON_SMALL_CODE; /*proto*/
__Pyx_PyMODINIT_FUNC initcodewriter(void)
#else
__Pyx_PyMODINIT_FUNC PyInit_codewriter(void) CYTHON_SMALL_CODE; /*proto*/
__Pyx_PyMODINIT_FUNC PyInit_codewriter(void)
#if CYTHON_PEP489_MULTI_PHASE_INIT
{
  return PyModuleDef_Init(&__pyx_moduledef);
}
static int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name) {
    PyObject *value = PyObject_GetAttrString(spec, from_name);
    int result = 0;
    if (likely(value)) {
        result = PyDict_SetItemString(moddict, to_name, value);
        Py_DECREF(value);
    } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) {
        PyErr_Clear();
    } else {
        result = -1;
    }
    return result;
}
static PyObject* __pyx_pymod_create(PyObject *spec, CYTHON_UNUSED PyModuleDef *def) {
    PyObject *module = NULL, *moddict, *modname;
    if (__pyx_m)
        return __Pyx_NewRef(__pyx_m);
    modname = PyObject_GetAttrString(spec, "name");
    if (unlikely(!modname)) goto bad;
    module = PyModule_NewObject(modname);
    Py_DECREF(modname);
    if (unlikely(!module)) goto bad;
    moddict = PyModule_GetDict(module);
    if (unlikely(!moddict)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__") < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__") < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__") < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__") < 0)) goto bad;
    return module;
bad:
    Py_XDECREF(module);
    return NULL;
}


static int __pyx_pymod_exec_codewriter(PyObject *__pyx_pyinit_module)
#endif
#endif
{
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyObject *__pyx_t_9 = NULL;
  PyObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  PyObject *__pyx_t_12 = NULL;
  __Pyx_RefNannyDeclarations
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  if (__pyx_m && __pyx_m == __pyx_pyinit_module) return 0;
  #elif PY_MAJOR_VERSION >= 3
  if (__pyx_m) return __Pyx_NewRef(__pyx_m);
  #endif
  #if CYTHON_REFNANNY
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
if (!__Pyx_RefNanny) {
  PyErr_Clear();
  __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny");
  if (!__Pyx_RefNanny)
      Py_FatalError("failed to import 'refnanny' module");
}
#endif
  __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_codewriter(void)", 0);
  if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error)
  #ifdef __Pyx_CyFunction_USED
  if (__pyx_CyFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_FusedFunction_USED
  if (__pyx_FusedFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Coroutine_USED
  if (__pyx_Coroutine_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Generator_USED
  if (__pyx_Generator_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_AsyncGen_USED
  if (__pyx_AsyncGen_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_StopAsyncIteration_USED
  if (__pyx_StopAsyncIteration_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  /*--- Library function declarations ---*/
  /*--- Threads initialization code ---*/
  #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS
  #ifdef WITH_THREAD /* Python build with threading support? */
  PyEval_InitThreads();
  #endif
  #endif
  /*--- Module creation code ---*/
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  __pyx_m = __pyx_pyinit_module;
  Py_INCREF(__pyx_m);
  #else
  #if PY_MAJOR_VERSION < 3
  __pyx_m = Py_InitModule4("codewriter", __pyx_methods, __pyx_k_Created_on_25_oct_2013_author_j, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m);
  #else
  __pyx_m = PyModule_Create(&__pyx_moduledef);
  #endif
  if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error)
  Py_INCREF(__pyx_d);
  __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error)
  #if CYTHON_COMPILING_IN_PYPY
  Py_INCREF(__pyx_b);
  #endif
  if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
  /*--- Initialize various global constants etc. ---*/
  if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT)
  if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  if (__pyx_module_is_main_metaphor__monal__lcode__codewriter) {
    if (PyObject_SetAttrString(__pyx_m, "__name__", __pyx_n_s_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  }
  #if PY_MAJOR_VERSION >= 3
  {
    PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error)
    if (!PyDict_GetItemString(modules, "metaphor.monal.lcode.codewriter")) {
      if (unlikely(PyDict_SetItemString(modules, "metaphor.monal.lcode.codewriter", __pyx_m) < 0)) __PYX_ERR(0, 1, __pyx_L1_error)
    }
  }
  #endif
  /*--- Builtin init code ---*/
  if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Constants init code ---*/
  if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Global type/function init code ---*/
  (void)__Pyx_modinit_global_init_code();
  (void)__Pyx_modinit_variable_export_code();
  (void)__Pyx_modinit_function_export_code();
  (void)__Pyx_modinit_type_init_code();
  (void)__Pyx_modinit_type_import_code();
  (void)__Pyx_modinit_variable_import_code();
  (void)__Pyx_modinit_function_import_code();
  /*--- Execution code ---*/
  #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED)
  if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif

  /* "metaphor/monal/lcode/codewriter.py":20
 * '''
 * 
 * import os, re, tempfile             # <<<<<<<<<<<<<<
 * from six import PY3
 * from datetime import date, datetime
 */
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_os, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_os, __pyx_t_1) < 0) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_re, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_re, __pyx_t_1) < 0) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_tempfile, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_tempfile, __pyx_t_1) < 0) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":21
 * 
 * import os, re, tempfile
 * from six import PY3             # <<<<<<<<<<<<<<
 * from datetime import date, datetime
 * from collections import defaultdict
 */
  __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_n_s_PY3);
  __Pyx_GIVEREF(__pyx_n_s_PY3);
  PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PY3);
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_six, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_PY3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_PY3, __pyx_t_1) < 0) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":22
 * import os, re, tempfile
 * from six import PY3
 * from datetime import date, datetime             # <<<<<<<<<<<<<<
 * from collections import defaultdict
 * import numpy as np
 */
  __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_INCREF(__pyx_n_s_date);
  __Pyx_GIVEREF(__pyx_n_s_date);
  PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_date);
  __Pyx_INCREF(__pyx_n_s_datetime);
  __Pyx_GIVEREF(__pyx_n_s_datetime);
  PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_s_datetime);
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_datetime, __pyx_t_2, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_date); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_date, __pyx_t_2) < 0) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_datetime); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_datetime, __pyx_t_2) < 0) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":23
 * from six import PY3
 * from datetime import date, datetime
 * from collections import defaultdict             # <<<<<<<<<<<<<<
 * import numpy as np
 * import getpass
 */
  __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 23, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_n_s_defaultdict);
  __Pyx_GIVEREF(__pyx_n_s_defaultdict);
  PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_defaultdict);
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_collections, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 23, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_defaultdict); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 23, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_defaultdict, __pyx_t_1) < 0) __PYX_ERR(0, 23, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":24
 * from datetime import date, datetime
 * from collections import defaultdict
 * import numpy as np             # <<<<<<<<<<<<<<
 * import getpass
 * import socket
 */
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_numpy, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_np, __pyx_t_2) < 0) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":25
 * from collections import defaultdict
 * import numpy as np
 * import getpass             # <<<<<<<<<<<<<<
 * import socket
 * from functools import partial
 */
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_getpass, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 25, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_getpass, __pyx_t_2) < 0) __PYX_ERR(0, 25, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":26
 * import numpy as np
 * import getpass
 * import socket             # <<<<<<<<<<<<<<
 * from functools import partial
 * 
 */
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_socket, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 26, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_socket, __pyx_t_2) < 0) __PYX_ERR(0, 26, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":27
 * import getpass
 * import socket
 * from functools import partial             # <<<<<<<<<<<<<<
 * 
 * from metaphor.nntoolbox.utils import xore, fillstr, codequote, addendofline
 */
  __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_INCREF(__pyx_n_s_partial);
  __Pyx_GIVEREF(__pyx_n_s_partial);
  PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_partial);
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_functools, __pyx_t_2, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 27, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_partial); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_partial, __pyx_t_2) < 0) __PYX_ERR(0, 27, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":29
 * from functools import partial
 * 
 * from metaphor.nntoolbox.utils import xore, fillstr, codequote, addendofline             # <<<<<<<<<<<<<<
 * from . import codeconst as CC
 * #import metaphor.nntoolbox.constants as NCC
 */
  __pyx_t_1 = PyList_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_n_s_xore);
  __Pyx_GIVEREF(__pyx_n_s_xore);
  PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_xore);
  __Pyx_INCREF(__pyx_n_s_fillstr);
  __Pyx_GIVEREF(__pyx_n_s_fillstr);
  PyList_SET_ITEM(__pyx_t_1, 1, __pyx_n_s_fillstr);
  __Pyx_INCREF(__pyx_n_s_codequote);
  __Pyx_GIVEREF(__pyx_n_s_codequote);
  PyList_SET_ITEM(__pyx_t_1, 2, __pyx_n_s_codequote);
  __Pyx_INCREF(__pyx_n_s_addendofline);
  __Pyx_GIVEREF(__pyx_n_s_addendofline);
  PyList_SET_ITEM(__pyx_t_1, 3, __pyx_n_s_addendofline);
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_metaphor_nntoolbox_utils, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_xore); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_xore, __pyx_t_1) < 0) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_fillstr); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_fillstr, __pyx_t_1) < 0) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_codequote); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_codequote, __pyx_t_1) < 0) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_addendofline); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_addendofline, __pyx_t_1) < 0) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":30
 * 
 * from metaphor.nntoolbox.utils import xore, fillstr, codequote, addendofline
 * from . import codeconst as CC             # <<<<<<<<<<<<<<
 * #import metaphor.nntoolbox.constants as NCC
 * from ..Property import Properties, Properties2
 */
  __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_INCREF(__pyx_n_s_codeconst);
  __Pyx_GIVEREF(__pyx_n_s_codeconst);
  PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_codeconst);
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_, __pyx_t_2, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 30, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_codeconst); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_CC, __pyx_t_2) < 0) __PYX_ERR(0, 30, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":32
 * from . import codeconst as CC
 * #import metaphor.nntoolbox.constants as NCC
 * from ..Property import Properties, Properties2             # <<<<<<<<<<<<<<
 * from ..util.monalbase import Component
 * from ..util.utils import CPrefix, CCharOnlys, safemakedirs, nonASCIICharsConvert
 */
  __pyx_t_1 = PyList_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 32, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_n_s_Properties);
  __Pyx_GIVEREF(__pyx_n_s_Properties);
  PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_Properties);
  __Pyx_INCREF(__pyx_n_s_Properties2);
  __Pyx_GIVEREF(__pyx_n_s_Properties2);
  PyList_SET_ITEM(__pyx_t_1, 1, __pyx_n_s_Properties2);
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_Property, __pyx_t_1, 2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 32, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_Properties); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 32, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_Properties, __pyx_t_1) < 0) __PYX_ERR(0, 32, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_Properties2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 32, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_Properties2, __pyx_t_1) < 0) __PYX_ERR(0, 32, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":33
 * #import metaphor.nntoolbox.constants as NCC
 * from ..Property import Properties, Properties2
 * from ..util.monalbase import Component             # <<<<<<<<<<<<<<
 * from ..util.utils import CPrefix, CCharOnlys, safemakedirs, nonASCIICharsConvert
 * from ..model import Model
 */
  __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 33, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_INCREF(__pyx_n_s_Component);
  __Pyx_GIVEREF(__pyx_n_s_Component);
  PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_Component);
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_util_monalbase, __pyx_t_2, 2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 33, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_Component); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 33, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_Component, __pyx_t_2) < 0) __PYX_ERR(0, 33, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":34
 * from ..Property import Properties, Properties2
 * from ..util.monalbase import Component
 * from ..util.utils import CPrefix, CCharOnlys, safemakedirs, nonASCIICharsConvert             # <<<<<<<<<<<<<<
 * from ..model import Model
 * #from ..model._modelcontainer import Multimodel
 */
  __pyx_t_1 = PyList_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_n_s_CPrefix);
  __Pyx_GIVEREF(__pyx_n_s_CPrefix);
  PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_CPrefix);
  __Pyx_INCREF(__pyx_n_s_CCharOnlys);
  __Pyx_GIVEREF(__pyx_n_s_CCharOnlys);
  PyList_SET_ITEM(__pyx_t_1, 1, __pyx_n_s_CCharOnlys);
  __Pyx_INCREF(__pyx_n_s_safemakedirs);
  __Pyx_GIVEREF(__pyx_n_s_safemakedirs);
  PyList_SET_ITEM(__pyx_t_1, 2, __pyx_n_s_safemakedirs);
  __Pyx_INCREF(__pyx_n_s_nonASCIICharsConvert);
  __Pyx_GIVEREF(__pyx_n_s_nonASCIICharsConvert);
  PyList_SET_ITEM(__pyx_t_1, 3, __pyx_n_s_nonASCIICharsConvert);
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_util_utils, __pyx_t_1, 2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_CPrefix); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_CPrefix, __pyx_t_1) < 0) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_CCharOnlys); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_CCharOnlys, __pyx_t_1) < 0) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_safemakedirs); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_safemakedirs, __pyx_t_1) < 0) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_nonASCIICharsConvert); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_nonASCIICharsConvert, __pyx_t_1) < 0) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":35
 * from ..util.monalbase import Component
 * from ..util.utils import CPrefix, CCharOnlys, safemakedirs, nonASCIICharsConvert
 * from ..model import Model             # <<<<<<<<<<<<<<
 * #from ..model._modelcontainer import Multimodel
 * from .. import version as monalversion
 */
  __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 35, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_INCREF(__pyx_n_s_Model);
  __Pyx_GIVEREF(__pyx_n_s_Model);
  PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_Model);
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_model, __pyx_t_2, 2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 35, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_Model); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 35, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_Model, __pyx_t_2) < 0) __PYX_ERR(0, 35, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":37
 * from ..model import Model
 * #from ..model._modelcontainer import Multimodel
 * from .. import version as monalversion             # <<<<<<<<<<<<<<
 * 
 * CStr = ['fg,ua', 'uf,fa', 'ig,jg', 'ia,ib', 'iu,ju',
 */
  __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 37, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(__pyx_n_s_version_2);
  __Pyx_GIVEREF(__pyx_n_s_version_2);
  PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_version_2);
  __pyx_t_2 = __Pyx_Import(__pyx_n_s_, __pyx_t_1, 2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 37, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_version_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 37, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_monalversion, __pyx_t_1) < 0) __PYX_ERR(0, 37, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":39
 * from .. import version as monalversion
 * 
 * CStr = ['fg,ua', 'uf,fa', 'ig,jg', 'ia,ib', 'iu,ju',             # <<<<<<<<<<<<<<
 *     'ui,uj', 'if,ig', 'if,jf', 'ig,ih', 'ug,uh']
 * 
 */
  __pyx_t_2 = PyList_New(10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 39, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_INCREF(__pyx_kp_u_fg_ua);
  __Pyx_GIVEREF(__pyx_kp_u_fg_ua);
  PyList_SET_ITEM(__pyx_t_2, 0, __pyx_kp_u_fg_ua);
  __Pyx_INCREF(__pyx_kp_u_uf_fa);
  __Pyx_GIVEREF(__pyx_kp_u_uf_fa);
  PyList_SET_ITEM(__pyx_t_2, 1, __pyx_kp_u_uf_fa);
  __Pyx_INCREF(__pyx_kp_u_ig_jg);
  __Pyx_GIVEREF(__pyx_kp_u_ig_jg);
  PyList_SET_ITEM(__pyx_t_2, 2, __pyx_kp_u_ig_jg);
  __Pyx_INCREF(__pyx_kp_u_ia_ib);
  __Pyx_GIVEREF(__pyx_kp_u_ia_ib);
  PyList_SET_ITEM(__pyx_t_2, 3, __pyx_kp_u_ia_ib);
  __Pyx_INCREF(__pyx_kp_u_iu_ju);
  __Pyx_GIVEREF(__pyx_kp_u_iu_ju);
  PyList_SET_ITEM(__pyx_t_2, 4, __pyx_kp_u_iu_ju);
  __Pyx_INCREF(__pyx_kp_u_ui_uj);
  __Pyx_GIVEREF(__pyx_kp_u_ui_uj);
  PyList_SET_ITEM(__pyx_t_2, 5, __pyx_kp_u_ui_uj);
  __Pyx_INCREF(__pyx_kp_u_if_ig);
  __Pyx_GIVEREF(__pyx_kp_u_if_ig);
  PyList_SET_ITEM(__pyx_t_2, 6, __pyx_kp_u_if_ig);
  __Pyx_INCREF(__pyx_kp_u_if_jf);
  __Pyx_GIVEREF(__pyx_kp_u_if_jf);
  PyList_SET_ITEM(__pyx_t_2, 7, __pyx_kp_u_if_jf);
  __Pyx_INCREF(__pyx_kp_u_ig_ih);
  __Pyx_GIVEREF(__pyx_kp_u_ig_ih);
  PyList_SET_ITEM(__pyx_t_2, 8, __pyx_kp_u_ig_ih);
  __Pyx_INCREF(__pyx_kp_u_ug_uh);
  __Pyx_GIVEREF(__pyx_kp_u_ug_uh);
  PyList_SET_ITEM(__pyx_t_2, 9, __pyx_kp_u_ug_uh);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_CStr, __pyx_t_2) < 0) __PYX_ERR(0, 39, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "metaphor/monal/lcode/codewriter.py":56
 *               "DecalIni", "MatrixSource",), None, "Get")
 * @Properties2(("DecimalSep",), 'Set', "_")
 * class CodeWriterBase(Component):             # <<<<<<<<<<<<<<
 *     '''
 *     classdocs
 */
  __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_Component); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_GIVEREF(__pyx_t_2);
  PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
  __pyx_t_2 = 0;
  __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_1, __pyx_n_s_iso885915_CodeWriterBase, __pyx_n_s_CodeWriterBase, (PyObject *) NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_kp_s_classdocs); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);

  /* "metaphor/monal/lcode/codewriter.py":60
 *     classdocs
 *     '''
 *     def __init__(self, owner, Source, name="codewriter"):             # <<<<<<<<<<<<<<
 *         '''
 *         Constructor
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_1__init__, 0, __pyx_n_s_CodeWriterBase___init, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__42)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 60, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__43);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_init, __pyx_t_4) < 0) __PYX_ERR(0, 60, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":124
 * 
 * 
 *     def setReplaceDict(self):             # <<<<<<<<<<<<<<
 *         self.ReplaceDictionary = {
 *             "PropertyValue": self.PptyValueStr,
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_3setReplaceDict, 0, __pyx_n_s_CodeWriterBase_setReplaceDict, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__45)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 124, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_setReplaceDict, __pyx_t_4) < 0) __PYX_ERR(0, 124, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":274
 *             "trainable": self.trainableStr }
 * 
 *     def setSource(self, source):             # <<<<<<<<<<<<<<
 *         if source is not None:
 *             self._DriverSource = source
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_5setSource, 0, __pyx_n_s_CodeWriterBase_setSource, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__47)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 274, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_setSource, __pyx_t_4) < 0) __PYX_ERR(0, 274, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":283
 *         self.setReplaceDict()
 * 
 *     def trainableStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'trainable'):
 *             return str(int(self.NetSource.trainable))
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_7trainableStr, 0, __pyx_n_s_CodeWriterBase_trainableStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__49)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 283, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__50);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_trainableStr, __pyx_t_4) < 0) __PYX_ERR(0, 283, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":289
 *             return "0"
 * 
 *     def getDynamicLinking(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(int(self.dynamiclinking))
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_9getDynamicLinking, 0, __pyx_n_s_CodeWriterBase_getDynamicLinking, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__52)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 289, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__53);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_getDynamicLinking, __pyx_t_4) < 0) __PYX_ERR(0, 289, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":292
 *         return str(int(self.dynamiclinking))
 * 
 *     def getCodeVersion(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(CC.__version__)
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_11getCodeVersion, 0, __pyx_n_s_CodeWriterBase_getCodeVersion, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__55)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 292, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__56);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_getCodeVersion, __pyx_t_4) < 0) __PYX_ERR(0, 292, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":295
 *         return str(CC.__version__)
 * 
 *     def getDataRange(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "datarange"):
 *             return str(self.NetSource.datarange)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_13getDataRange, 0, __pyx_n_s_CodeWriterBase_getDataRange, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__58)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 295, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__59);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_getDataRange, __pyx_t_4) < 0) __PYX_ERR(0, 295, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":300
 *         return ""
 * 
 *     def getUseCodeVersion(self, Indent=0):             # <<<<<<<<<<<<<<
 *         return str(CC.__useversion__)
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_15getUseCodeVersion, 0, __pyx_n_s_CodeWriterBase_getUseCodeVersion, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__61)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 300, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__62);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_getUseCodeVersion, __pyx_t_4) < 0) __PYX_ERR(0, 300, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":303
 *         return str(CC.__useversion__)
 * 
 *     def GetOriginBaseStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "originbase"):
 *             return str(self.NetSource.originbase)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_17GetOriginBaseStr, 0, __pyx_n_s_CodeWriterBase_GetOriginBaseStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__64)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 303, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__65);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetOriginBaseStr, __pyx_t_4) < 0) __PYX_ERR(0, 303, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":308
 *         return ""
 * 
 *     def GetXmlStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'xml'):
 *             st = codequote(self.NetSource.xml())
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_19GetXmlStr, 0, __pyx_n_s_CodeWriterBase_GetXmlStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__67)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 308, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__68);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetXmlStr, __pyx_t_4) < 0) __PYX_ERR(0, 308, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":315
 *         return ""
 * 
 *     def GetMarkStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "mark"):
 *             return str(self.NetSource.mark)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_21GetMarkStr, 0, __pyx_n_s_CodeWriterBase_GetMarkStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__70)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 315, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__71);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetMarkStr, __pyx_t_4) < 0) __PYX_ERR(0, 315, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":320
 *         return ""
 * 
 *     def GetMarkversionStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "markversion"):
 *             return str(self.NetSource.markversion)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_23GetMarkversionStr, 0, __pyx_n_s_CodeWriterBase_GetMarkversionStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__73)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 320, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__74);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetMarkversionStr, __pyx_t_4) < 0) __PYX_ERR(0, 320, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":325
 *         return ""
 * 
 *     def GetMarkdateStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, 'date'):
 *             return self.NetSource.date.strftime("%d/%m/%Y %H:%M:%S")
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_25GetMarkdateStr, 0, __pyx_n_s_CodeWriterBase_GetMarkdateStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__76)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__77);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetMarkdateStr, __pyx_t_4) < 0) __PYX_ERR(0, 325, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":334
 *         return ""
 * 
 *     def GetHiddenStr(self, Indent=0):             # <<<<<<<<<<<<<<
 *         if hasattr(self.NetSource, "hidden"):
 *             return str(self.NetSource.hidden)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_27GetHiddenStr, 0, __pyx_n_s_CodeWriterBase_GetHiddenStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__79)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 334, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__80);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetHiddenStr, __pyx_t_4) < 0) __PYX_ERR(0, 334, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":341
 *         return ""
 * 
 *     def setCurrentFileTypes(self, atype=-1, aincluded=-1):             # <<<<<<<<<<<<<<
 *         if atype >= 0:
 *             self.CurrentFunctionType = atype
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_29setCurrentFileTypes, 0, __pyx_n_s_CodeWriterBase_setCurrentFileTyp, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__82)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 341, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__83);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_setCurrentFileTypes, __pyx_t_4) < 0) __PYX_ERR(0, 341, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":348
 *         self.FileName = self.CurrentCodeFileName()
 * 
 *     def  TouslesNoms(self):             # <<<<<<<<<<<<<<
 *         self._NomFonction = CC.st_InDev + ' codeWriter' #+ Classname
 *         self._NomFGradient = CC.st_InDev + ' codeWriter' #+ Classname
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_31TouslesNoms, 0, __pyx_n_s_CodeWriterBase_TouslesNoms, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__85)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 348, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_TouslesNoms, __pyx_t_4) < 0) __PYX_ERR(0, 348, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":386
 *         #    self.NomFonction = CC.StTransferKoh %(self.NetName)
 * 
 *     def _dosub(self, group, Indent0=0):             # <<<<<<<<<<<<<<
 *         st0 = group.group(0)
 *         if len(st0) <= 2:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_33_dosub, 0, __pyx_n_s_CodeWriterBase__dosub, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__87)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 386, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__88);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_dosub, __pyx_t_4) < 0) __PYX_ERR(0, 386, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":424
 *         return st
 * 
 *     def SubstituteVariables(self, Source, Indent0=2):             # <<<<<<<<<<<<<<
 *         replfct = partial(self._dosub, Indent0=Indent0)
 *         p = re.compile(r'%\w*%')
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_35SubstituteVariables, 0, __pyx_n_s_CodeWriterBase_SubstituteVariabl, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__90)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 424, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__91);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_SubstituteVariables, __pyx_t_4) < 0) __PYX_ERR(0, 424, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":430
 *         return st
 * 
 *     def CodeFichierAvecTemplate(self, ftype, included):             # <<<<<<<<<<<<<<
 *         # creation gener, ique d'un code depuis un template
 *         self.setCurrentFileTypes(ftype, included)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_37CodeFichierAvecTemplate, 0, __pyx_n_s_CodeWriterBase_CodeFichierAvecTe, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__93)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_CodeFichierAvecTemplate, __pyx_t_4) < 0) __PYX_ERR(0, 430, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":443
 *         return Result
 * 
 *     def CodeFichier(self, index, included=0, dosave=False, back=False):             # <<<<<<<<<<<<<<
 *         result = self.CodeFichierAvecTemplate(index, included)
 *         # cas sans template
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_39CodeFichier, 0, __pyx_n_s_CodeWriterBase_CodeFichier, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__95)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__96);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_CodeFichier, __pyx_t_4) < 0) __PYX_ERR(0, 443, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":460
 * #------ code interne sans template --------------------------------------------
 * 
 *     def CodeFichierTransfertInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftTransfert, included)
 *         result = self.CommentTeteFichier()
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_41CodeFichierTransfertInterne, 0, __pyx_n_s_CodeWriterBase_CodeFichierTransf, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__98)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 460, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__99);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_CodeFichierTransfertInterne, __pyx_t_4) < 0) __PYX_ERR(0, 460, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":503
 *     #===========================================================================
 * 
 *     def CodeFichierGradientInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftGradient, included)
 *         result = self.CommentTeteFichier()
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_43CodeFichierGradientInterne, 0, __pyx_n_s_CodeWriterBase_CodeFichierGradie, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__101)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 503, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__102);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_CodeFichierGradientInterne, __pyx_t_4) < 0) __PYX_ERR(0, 503, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":541
 *     #===========================================================================
 * 
 *     def CodeFichierTransfertLeverageInterne(self, included=0):             # <<<<<<<<<<<<<<
 *         self.setCurrentFileTypes(CC.ftTransfertLeverage, 0)
 *         result = self.CommentTeteFichier()
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_45CodeFichierTransfertLeverageInterne, 0, __pyx_n_s_CodeWriterBase_CodeFichierTransf_2, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__104)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 541, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__105);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_CodeFichierTransfertLeverageInte, __pyx_t_4) < 0) __PYX_ERR(0, 541, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":572
 * #         return self.TransferStr(Indent0, original=self.NetSource.originallink)
 * 
 *     def TransferStr(self, Indent0=1):  #, original=True):             # <<<<<<<<<<<<<<
 *         original = self.originallink
 *         try:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_47TransferStr, 0, __pyx_n_s_CodeWriterBase_TransferStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__107)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 572, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__108);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_TransferStr, __pyx_t_4) < 0) __PYX_ERR(0, 572, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":602
 * 
 * #--- fin de blocs de code -----------------------------------------------------
 *     def GetTextFromID(self, TextID, MarkupList=None):             # <<<<<<<<<<<<<<
 *         try:
 *             if self._GetString:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_49GetTextFromID, 0, __pyx_n_s_CodeWriterBase_GetTextFromID, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__110)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 602, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__111);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetTextFromID, __pyx_t_4) < 0) __PYX_ERR(0, 602, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":622
 *             return ""
 * 
 *     def ReadCodeFromID(self, IDName, specialsub=False):             # <<<<<<<<<<<<<<
 *         txt = self.GetTextFromID(IDName)
 *         if self.CurrentFunctionType < CC.code_common_mini:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_51ReadCodeFromID, 0, __pyx_n_s_CodeWriterBase_ReadCodeFromID, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__113)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 622, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__114);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_ReadCodeFromID, __pyx_t_4) < 0) __PYX_ERR(0, 622, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":629
 * 
 *     @property
 *     def DriverSource(self):             # <<<<<<<<<<<<<<
 *         return self._DriverSource
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_53DriverSource, 0, __pyx_n_s_CodeWriterBase_DriverSource, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__116)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 629, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);

  /* "metaphor/monal/lcode/codewriter.py":628
 *         return txt
 * 
 *     @property             # <<<<<<<<<<<<<<
 *     def DriverSource(self):
 *         return self._DriverSource
 */
  __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_builtin_property, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 628, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_DriverSource_2, __pyx_t_5) < 0) __PYX_ERR(0, 629, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

  /* "metaphor/monal/lcode/codewriter.py":633
 * 
 *     @property
 *     def NetSource(self):             # <<<<<<<<<<<<<<
 *         return self._NetSource
 *     @NetSource.setter
 */
  __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_55NetSource, 0, __pyx_n_s_CodeWriterBase_NetSource, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__118)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 633, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);

  /* "metaphor/monal/lcode/codewriter.py":632
 *         return self._DriverSource
 * 
 *     @property             # <<<<<<<<<<<<<<
 *     def NetSource(self):
 *         return self._NetSource
 */
  __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_builtin_property, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 632, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_NetSource, __pyx_t_4) < 0) __PYX_ERR(0, 633, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":635
 *     def NetSource(self):
 *         return self._NetSource
 *     @NetSource.setter             # <<<<<<<<<<<<<<
 *     def NetSource(self, value):
 *         self.SetNetSource(value)
 */
  __pyx_t_5 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_NetSource);
  if (unlikely(!__pyx_t_5)) {
    PyErr_Clear();
    __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_NetSource);
  }
  if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 635, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_setter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 635, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

  /* "metaphor/monal/lcode/codewriter.py":636
 *         return self._NetSource
 *     @NetSource.setter
 *     def NetSource(self, value):             # <<<<<<<<<<<<<<
 *         self.SetNetSource(value)
 * 
 */
  __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_57NetSource, 0, __pyx_n_s_CodeWriterBase_NetSource, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__120)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 636, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_7 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) {
    __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
    if (likely(__pyx_t_7)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
      __Pyx_INCREF(__pyx_t_7);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_6, function);
    }
  }
  if (!__pyx_t_7) {
    __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 635, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_GOTREF(__pyx_t_4);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_6)) {
      PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_5};
      __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 635, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
      PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_5};
      __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 635, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    } else
    #endif
    {
      __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 635, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
      __Pyx_GIVEREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 635, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_NetSource, __pyx_t_4) < 0) __PYX_ERR(0, 636, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":639
 *         self.SetNetSource(value)
 * 
 *     def SetNetSource(self, Source):             # <<<<<<<<<<<<<<
 *         self._NetSource = Source
 *         if Source:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_59SetNetSource, 0, __pyx_n_s_CodeWriterBase_SetNetSource, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__122)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 639, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_SetNetSource, __pyx_t_4) < 0) __PYX_ERR(0, 639, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":660
 *         self._TargetName = self._NetName
 * 
 *     def baseCodeFileName(self, base, substitute, param=0, Ext=''):             # <<<<<<<<<<<<<<
 *         if not base:
 *             if  not substitute:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_61baseCodeFileName, 0, __pyx_n_s_CodeWriterBase_baseCodeFileName, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__124)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 660, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__125);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_baseCodeFileName, __pyx_t_4) < 0) __PYX_ERR(0, 660, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":717
 *         return Result
 * 
 *     def CodeFileName(self, FType, Ext=""):             # <<<<<<<<<<<<<<
 *         return self.baseCodeFileName(self.NetSource.name, self.ShortFileName, FType, Ext)
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_63CodeFileName, 0, __pyx_n_s_CodeWriterBase_CodeFileName, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__127)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 717, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__128);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_CodeFileName, __pyx_t_4) < 0) __PYX_ERR(0, 717, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":720
 *         return self.baseCodeFileName(self.NetSource.name, self.ShortFileName, FType, Ext)
 * 
 *     def CurrentCodeFileName(self, sdir=None):             # <<<<<<<<<<<<<<
 *         result = ""
 *         if ((self.CurrentFunctionType in CC.ftOnlyHeader) and not self.CurrentHeader):
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_65CurrentCodeFileName, 0, __pyx_n_s_CodeWriterBase_CurrentCodeFileNa, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__130)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 720, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__131);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_CurrentCodeFileName, __pyx_t_4) < 0) __PYX_ERR(0, 720, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":733
 *         return result
 * 
 *     def FileExt(self, header=-1, ftype=-1):  #             # <<<<<<<<<<<<<<
 *         if header == -1:
 *             header = self.CurrentHeader
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_67FileExt, 0, __pyx_n_s_CodeWriterBase_FileExt, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__133)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 733, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__134);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_FileExt, __pyx_t_4) < 0) __PYX_ERR(0, 733, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":745
 *         return ''
 * 
 *     def GetDecalIni(self):             # <<<<<<<<<<<<<<
 *         return 0
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_69GetDecalIni, 0, __pyx_n_s_CodeWriterBase_GetDecalIni, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__136)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 745, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetDecalIni, __pyx_t_4) < 0) __PYX_ERR(0, 745, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":748
 *         return 0
 * 
 *     def Suite(self):             # <<<<<<<<<<<<<<
 *         return fillstr(self.DecalIni)
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_71Suite, 0, __pyx_n_s_CodeWriterBase_Suite, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__138)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 748, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_Suite, __pyx_t_4) < 0) __PYX_ERR(0, 748, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":751
 *         return fillstr(self.DecalIni)
 * 
 *     def getTemplate(self, TextID):             # <<<<<<<<<<<<<<
 *         lst = TextID.split('_')
 *         filename = os.path.join(self.TemplatePath, ".".join(lst))
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_73getTemplate, 0, __pyx_n_s_CodeWriterBase_getTemplate, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__140)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 751, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_getTemplate, __pyx_t_4) < 0) __PYX_ERR(0, 751, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":763
 *         return st
 * 
 *     def SetDecimalSep(self, Value):             # <<<<<<<<<<<<<<
 *         self._DecimalSep = Value
 *         self.SetDecimalSeparator(Value)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_75SetDecimalSep, 0, __pyx_n_s_CodeWriterBase_SetDecimalSep, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__142)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 763, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_SetDecimalSep, __pyx_t_4) < 0) __PYX_ERR(0, 763, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":767
 *         self.SetDecimalSeparator(Value)
 * 
 *     def SetDecimalSeparator(self, value):             # <<<<<<<<<<<<<<
 *         self._DecimalSep = value
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_77SetDecimalSeparator, 0, __pyx_n_s_CodeWriterBase_SetDecimalSeparat, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__144)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 767, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_SetDecimalSeparator, __pyx_t_4) < 0) __PYX_ERR(0, 767, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":770
 *         self._DecimalSep = value
 * 
 *     def GetNetworkKind(self):             # <<<<<<<<<<<<<<
 *         if (self.NetSource.order > 0):
 *             return CC.nkDyn
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_79GetNetworkKind, 0, __pyx_n_s_CodeWriterBase_GetNetworkKind, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__146)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 770, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetNetworkKind, __pyx_t_4) < 0) __PYX_ERR(0, 770, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":775
 *         return CC.nkStat
 * 
 *     def GetAffect(self):             # <<<<<<<<<<<<<<
 *         return ' = '
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_81GetAffect, 0, __pyx_n_s_CodeWriterBase_GetAffect, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__148)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 775, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetAffect, __pyx_t_4) < 0) __PYX_ERR(0, 775, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":778
 *         return ' = '
 * 
 *     def InitialisationVecteur(self, Indent0=1):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_83InitialisationVecteur, 0, __pyx_n_s_CodeWriterBase_InitialisationVec, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__150)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 778, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__151);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_InitialisationVecteur, __pyx_t_4) < 0) __PYX_ERR(0, 778, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":781
 *         return ''
 * 
 *     def InitialisationMatrice(self, Indent0=1):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_85InitialisationMatrice, 0, __pyx_n_s_CodeWriterBase_InitialisationMat, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__153)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 781, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__154);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_InitialisationMatrice, __pyx_t_4) < 0) __PYX_ERR(0, 781, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":784
 *         return ''
 * 
 *     def ValToStr(self, value, squeeze=False, addbra=False):             # <<<<<<<<<<<<<<
 *         if isinstance(value, list):
 *             if not len(value):
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_87ValToStr, 0, __pyx_n_s_CodeWriterBase_ValToStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__156)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 784, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__157);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_ValToStr, __pyx_t_4) < 0) __PYX_ERR(0, 784, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":813
 *         return "%18.15g" % value
 * 
 *     def PlusEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' += ' + StSource
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_89PlusEgal, 0, __pyx_n_s_CodeWriterBase_PlusEgal, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__159)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 813, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_PlusEgal, __pyx_t_4) < 0) __PYX_ERR(0, 813, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":816
 *         return StTarget + ' += ' + StSource
 * 
 *     def MoinsEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' -= ' + StSource
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_91MoinsEgal, 0, __pyx_n_s_CodeWriterBase_MoinsEgal, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__161)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 816, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_MoinsEgal, __pyx_t_4) < 0) __PYX_ERR(0, 816, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":819
 *         return StTarget + ' -= ' + StSource
 * 
 *     def MultiEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' *= ' + StSource
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_93MultiEgal, 0, __pyx_n_s_CodeWriterBase_MultiEgal, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__163)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 819, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_MultiEgal, __pyx_t_4) < 0) __PYX_ERR(0, 819, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":822
 *         return StTarget + ' *= ' + StSource
 * 
 *     def MultiCondition1(self, val):             # <<<<<<<<<<<<<<
 *         if val == self.ValToStr(1):
 *             return ""
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_95MultiCondition1, 0, __pyx_n_s_CodeWriterBase_MultiCondition1, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__165)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 822, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_MultiCondition1, __pyx_t_4) < 0) __PYX_ERR(0, 822, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":827
 *         return "* %s"% val
 * 
 *     def DiviseEgal(self, StTarget, StSource):             # <<<<<<<<<<<<<<
 *         return StTarget + ' /= ' + StSource
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_97DiviseEgal, 0, __pyx_n_s_CodeWriterBase_DiviseEgal, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__167)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 827, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_DiviseEgal, __pyx_t_4) < 0) __PYX_ERR(0, 827, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":830
 *         return StTarget + ' /= ' + StSource
 * 
 *     def GetBeginStr(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_99GetBeginStr, 0, __pyx_n_s_CodeWriterBase_GetBeginStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__169)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 830, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetBeginStr, __pyx_t_4) < 0) __PYX_ERR(0, 830, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":833
 *         return ''
 * 
 *     def GetEndStr(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_101GetEndStr, 0, __pyx_n_s_CodeWriterBase_GetEndStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__171)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 833, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetEndStr, __pyx_t_4) < 0) __PYX_ERR(0, 833, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":836
 *         return ''
 * 
 *     def GetMatrixSource(self):             # <<<<<<<<<<<<<<
 *         try:
 *             if self.DriverSource.dispersionMatrix.ndim == 3:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_103GetMatrixSource, 0, __pyx_n_s_CodeWriterBase_GetMatrixSource, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__173)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 836, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetMatrixSource, __pyx_t_4) < 0) __PYX_ERR(0, 836, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":845
 *             return None
 * 
 *     def GetLangMarkup(self):             # <<<<<<<<<<<<<<
 *         return ''
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_105GetLangMarkup, 0, __pyx_n_s_CodeWriterBase_GetLangMarkup, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__175)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 845, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetLangMarkup, __pyx_t_4) < 0) __PYX_ERR(0, 845, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":848
 *         return ''
 * 
 *     def GetWithMatrix(self):             # <<<<<<<<<<<<<<
 *         Mat = self.MatrixSource
 *         return (Mat is not None) and (sum(Mat.shape) > 0)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_107GetWithMatrix, 0, __pyx_n_s_CodeWriterBase_GetWithMatrix, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__177)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 848, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetWithMatrix, __pyx_t_4) < 0) __PYX_ERR(0, 848, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":852
 *         return (Mat is not None) and (sum(Mat.shape) > 0)
 * 
 *     def GetShortFileName(self):             # <<<<<<<<<<<<<<
 *         return CCharOnlys(os.path.basename(self._FileName))
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_109GetShortFileName, 0, __pyx_n_s_CodeWriterBase_GetShortFileName, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__179)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 852, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetShortFileName, __pyx_t_4) < 0) __PYX_ERR(0, 852, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":855
 *         return CCharOnlys(os.path.basename(self._FileName))
 * 
 *     def GetLongWeight(self):             # <<<<<<<<<<<<<<
 *         return self._Weight
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_111GetLongWeight, 0, __pyx_n_s_CodeWriterBase_GetLongWeight, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__181)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 855, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetLongWeight, __pyx_t_4) < 0) __PYX_ERR(0, 855, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":858
 *         return self._Weight
 * 
 *     def GetCodeType(self):             # <<<<<<<<<<<<<<
 *         return CC.ctUnknown
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_113GetCodeType, 0, __pyx_n_s_CodeWriterBase_GetCodeType, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__183)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 858, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetCodeType, __pyx_t_4) < 0) __PYX_ERR(0, 858, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":861
 *         return CC.ctUnknown
 * 
 *     def GetJurComment(self):             # <<<<<<<<<<<<<<
 *         St = CC.st_Juridic.lower()
 *         St.replace('.', '_')
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_115GetJurComment, 0, __pyx_n_s_CodeWriterBase_GetJurComment, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__185)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 861, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetJurComment, __pyx_t_4) < 0) __PYX_ERR(0, 861, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":869
 *         return Result
 * 
 *     def DoAffect(self, St1, St2):             # <<<<<<<<<<<<<<
 *         return self.ValToStr(St1) + self.Affect + self.ValToStr(St2)
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_117DoAffect, 0, __pyx_n_s_CodeWriterBase_DoAffect, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__187)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 869, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_DoAffect, __pyx_t_4) < 0) __PYX_ERR(0, 869, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":872
 *         return self.ValToStr(St1) + self.Affect + self.ValToStr(St2)
 * 
 *     def CommentLine(self, Mess1, Mess2=None):             # <<<<<<<<<<<<<<
 *         if not Mess2:
 *             return self.Comment(str(Mess1))
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_119CommentLine, 0, __pyx_n_s_CodeWriterBase_CommentLine, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__189)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 872, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__190);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_CommentLine, __pyx_t_4) < 0) __PYX_ERR(0, 872, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":878
 *             return self.Comment(str(Mess1) + ',' + str(Mess2))
 * 
 *     def GetCodeStr(self, index):             # <<<<<<<<<<<<<<
 *         Result = ''
 *         if (0 <= index < 2) and (self.ClientNum >= 0):
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_121GetCodeStr, 0, __pyx_n_s_CodeWriterBase_GetCodeStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__192)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 878, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetCodeStr, __pyx_t_4) < 0) __PYX_ERR(0, 878, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":889
 *         return Result
 * 
 *     def GetCodeStrII(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.CodeStr[0]
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_123GetCodeStrII, 0, __pyx_n_s_CodeWriterBase_GetCodeStrII, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__194)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 889, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__195);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetCodeStrII, __pyx_t_4) < 0) __PYX_ERR(0, 889, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":892
 *         return self.CodeStr[0]
 * 
 *     def GetCodeStrJI(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.CodeStr[0]  # ??? 1 ???
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_125GetCodeStrJI, 0, __pyx_n_s_CodeWriterBase_GetCodeStrJI, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__197)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 892, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__198);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetCodeStrJI, __pyx_t_4) < 0) __PYX_ERR(0, 892, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":895
 *         return self.CodeStr[0]  # ??? 1 ???
 * 
 *     def GetNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NetName
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_127GetNameStr, 0, __pyx_n_s_CodeWriterBase_GetNameStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__200)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 895, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__201);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetNameStr, __pyx_t_4) < 0) __PYX_ERR(0, 895, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":898
 *         return self.NetName
 * 
 *     def GetTrueNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NetSource.trueName
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_129GetTrueNameStr, 0, __pyx_n_s_CodeWriterBase_GetTrueNameStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__203)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 898, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__204);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetTrueNameStr, __pyx_t_4) < 0) __PYX_ERR(0, 898, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":901
 *         return self.NetSource.trueName
 * 
 *     def Getparamfilename(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.NetSource.paramfilename
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_131Getparamfilename, 0, __pyx_n_s_CodeWriterBase_Getparamfilename, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__206)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 901, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__207);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_Getparamfilename, __pyx_t_4) < 0) __PYX_ERR(0, 901, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":907
 *             return ""
 * 
 *     def ConfigurationStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             self.NetSource.configuration
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_133ConfigurationStr, 0, __pyx_n_s_CodeWriterBase_ConfigurationStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__209)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 907, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__210);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_ConfigurationStr, __pyx_t_4) < 0) __PYX_ERR(0, 907, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":914
 *             return ""
 * 
 *     def PptyValueStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.NetSource.pptyvalue
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_135PptyValueStr, 0, __pyx_n_s_CodeWriterBase_PptyValueStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__212)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 914, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__213);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_PptyValueStr, __pyx_t_4) < 0) __PYX_ERR(0, 914, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":921
 *             return ""
 * 
 *     def PptyLeverageStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.NetSource.pptyleverage
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_137PptyLeverageStr, 0, __pyx_n_s_CodeWriterBase_PptyLeverageStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__215)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 921, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__216);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_PptyLeverageStr, __pyx_t_4) < 0) __PYX_ERR(0, 921, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":928
 *             return ""
 * 
 *     def ModuleStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.moduleName
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_139ModuleStr, 0, __pyx_n_s_CodeWriterBase_ModuleStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__218)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 928, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__219);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_ModuleStr, __pyx_t_4) < 0) __PYX_ERR(0, 928, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":931
 *         return self.moduleName
 * 
 *     def getModuleType(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.DriverSource.modelType
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_141getModuleType, 0, __pyx_n_s_CodeWriterBase_getModuleType, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__221)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 931, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__222);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_getModuleType, __pyx_t_4) < 0) __PYX_ERR(0, 931, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":937
 *             return self.NetSource.modelType
 * 
 *     def ModulePStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return (self.moduleName + '.') if self.moduleName else ""
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_143ModulePStr, 0, __pyx_n_s_CodeWriterBase_ModulePStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__224)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 937, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__225);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_ModulePStr, __pyx_t_4) < 0) __PYX_ERR(0, 937, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":940
 *         return (self.moduleName + '.') if self.moduleName else ""
 * 
 *     def GetTargetStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.TargetName
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_145GetTargetStr, 0, __pyx_n_s_CodeWriterBase_GetTargetStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__227)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 940, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__228);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetTargetStr, __pyx_t_4) < 0) __PYX_ERR(0, 940, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":943
 *         return self.TargetName
 * 
 *     def GetDateStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         today = date.today()
 *         return today.strftime("%d/%m/%Y")
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_147GetDateStr, 0, __pyx_n_s_CodeWriterBase_GetDateStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__230)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 943, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__231);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetDateStr, __pyx_t_4) < 0) __PYX_ERR(0, 943, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":947
 *         return today.strftime("%d/%m/%Y")
 * 
 *     def GetTimeStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         time = datetime.now()
 *         return time.strftime("%H:%M:%S")
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_149GetTimeStr, 0, __pyx_n_s_CodeWriterBase_GetTimeStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__233)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 947, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__234);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetTimeStr, __pyx_t_4) < 0) __PYX_ERR(0, 947, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":951
 *         return time.strftime("%H:%M:%S")
 * 
 *     def GetUserStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.UserName
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_151GetUserStr, 0, __pyx_n_s_CodeWriterBase_GetUserStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__236)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 951, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__237);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetUserStr, __pyx_t_4) < 0) __PYX_ERR(0, 951, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":954
 *         return self.UserName
 * 
 *     def GetComputerStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.ComputerName
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_153GetComputerStr, 0, __pyx_n_s_CodeWriterBase_GetComputerStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__239)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 954, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__240);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetComputerStr, __pyx_t_4) < 0) __PYX_ERR(0, 954, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":957
 *         return self.ComputerName
 * 
 *     def GetFileNameStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.FileName
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_155GetFileNameStr, 0, __pyx_n_s_CodeWriterBase_GetFileNameStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__242)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 957, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__243);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetFileNameStr, __pyx_t_4) < 0) __PYX_ERR(0, 957, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":960
 *         return self.FileName
 * 
 *     def GetNumpyDir(self, garb=0):             # <<<<<<<<<<<<<<
 *         return self.NumpyDir
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_157GetNumpyDir, 0, __pyx_n_s_CodeWriterBase_GetNumpyDir, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__245)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 960, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__246);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetNumpyDir, __pyx_t_4) < 0) __PYX_ERR(0, 960, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":963
 *         return self.NumpyDir
 * 
 *     def GetInOutStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.inputCount + self.NetSource.outputCount)
 *     GetInOutputsStr = GetInOutStr
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_159GetInOutStr, 0, __pyx_n_s_CodeWriterBase_GetInOutStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__248)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 963, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__249);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetInOutStr, __pyx_t_4) < 0) __PYX_ERR(0, 963, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":965
 *     def GetInOutStr(self, garb=0):
 *         return str(self.NetSource.inputCount + self.NetSource.outputCount)
 *     GetInOutputsStr = GetInOutStr             # <<<<<<<<<<<<<<
 * 
 *     def GetInputValues(self, garb=0):
 */
  __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_GetInOutStr);
  if (unlikely(!__pyx_t_4)) {
    PyErr_Clear();
    __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_GetInOutStr);
  }
  if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 965, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetInOutputsStr, __pyx_t_4) < 0) __PYX_ERR(0, 965, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":967
 *     GetInOutputsStr = GetInOutStr
 * 
 *     def GetInputValues(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.inputNodes]
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_161GetInputValues, 0, __pyx_n_s_CodeWriterBase_GetInputValues, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__251)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 967, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__252);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetInputValues, __pyx_t_4) < 0) __PYX_ERR(0, 967, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":975
 *         return res
 * 
 *     def GetOutputValues(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             lst = ["\t/[inserted by cython to avoid comment start]*{}*[inserted by cython to avoid comment closer]/".format(node.name) + self.ValToStr(node.value) for node in self.NetSource.outputNodes]
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_163GetOutputValues, 0, __pyx_n_s_CodeWriterBase_GetOutputValues, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__254)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 975, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__255);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetOutputValues, __pyx_t_4) < 0) __PYX_ERR(0, 975, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":983
 *         return res
 * 
 *     def GetInputsStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             res = str(self.NetSource.inputCount)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_165GetInputsStr, 0, __pyx_n_s_CodeWriterBase_GetInputsStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__257)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 983, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__258);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetInputsStr, __pyx_t_4) < 0) __PYX_ERR(0, 983, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":990
 *         return res
 * 
 *     def GetOutputsStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             res = str(self.NetSource.outputCount)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_167GetOutputsStr, 0, __pyx_n_s_CodeWriterBase_GetOutputsStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__260)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 990, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__261);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetOutputsStr, __pyx_t_4) < 0) __PYX_ERR(0, 990, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":997
 *         return res
 * 
 *     def GetSynapsesStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.synapseCount)
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_169GetSynapsesStr, 0, __pyx_n_s_CodeWriterBase_GetSynapsesStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__263)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 997, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__264);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetSynapsesStr, __pyx_t_4) < 0) __PYX_ERR(0, 997, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1000
 *         return str(self.NetSource.synapseCount)
 * 
 *     def GetDimensionStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.dimension)
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_171GetDimensionStr, 0, __pyx_n_s_CodeWriterBase_GetDimensionStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__266)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__267);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetDimensionStr, __pyx_t_4) < 0) __PYX_ERR(0, 1000, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1007
 * #         return str(val)
 * 
 *     def GetOrderStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.NetSource.order)
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_173GetOrderStr, 0, __pyx_n_s_CodeWriterBase_GetOrderStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__269)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1007, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__270);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetOrderStr, __pyx_t_4) < 0) __PYX_ERR(0, 1007, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1010
 *         return str(self.NetSource.order)
 * 
 *     def GetNodeStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return str(self.NetSource.nodeCount)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_175GetNodeStr, 0, __pyx_n_s_CodeWriterBase_GetNodeStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__272)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1010, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__273);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetNodeStr, __pyx_t_4) < 0) __PYX_ERR(0, 1010, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1016
 *             return 0
 * 
 *     def GetStdDevStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.stdtrain
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_177GetStdDevStr, 0, __pyx_n_s_CodeWriterBase_GetStdDevStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__275)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1016, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__276);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetStdDevStr, __pyx_t_4) < 0) __PYX_ERR(0, 1016, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1027
 *         return res
 * 
 *     def GetStudentStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.studentvariable
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_179GetStudentStr, 0, __pyx_n_s_CodeWriterBase_GetStudentStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__278)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1027, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__279);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetStudentStr, __pyx_t_4) < 0) __PYX_ERR(0, 1027, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1038
 *         return res
 * 
 *     def GetMuStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         try:
 *             val = self.DriverSource.mu
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_181GetMuStr, 0, __pyx_n_s_CodeWriterBase_GetMuStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__281)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1038, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__282);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetMuStr, __pyx_t_4) < 0) __PYX_ERR(0, 1038, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1049
 *         return res
 * 
 *     def GetUseCountStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(self.UseCount)
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_183GetUseCountStr, 0, __pyx_n_s_CodeWriterBase_GetUseCountStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__284)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1049, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__285);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetUseCountStr, __pyx_t_4) < 0) __PYX_ERR(0, 1049, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1052
 *         return str(self.UseCount)
 * 
 *     def GetCommentCountStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return str(max(1, self.NetSource.commentCount))
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_185GetCommentCountStr, 0, __pyx_n_s_CodeWriterBase_GetCommentCountSt, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__287)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1052, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__288);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetCommentCountStr, __pyx_t_4) < 0) __PYX_ERR(0, 1052, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1055
 *         return str(max(1, self.NetSource.commentCount))
 * 
 *     def GetLinearStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         # Attention cela perturbe le model et les valeurs sauvegardes
 *         try:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_187GetLinearStr, 0, __pyx_n_s_CodeWriterBase_GetLinearStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__290)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1055, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__291);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetLinearStr, __pyx_t_4) < 0) __PYX_ERR(0, 1055, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1063
 *         return str(ind)
 * 
 *     def BaseCount(self):             # <<<<<<<<<<<<<<
 *         return 0
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_189BaseCount, 0, __pyx_n_s_CodeWriterBase_BaseCount, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__293)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1063, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_BaseCount, __pyx_t_4) < 0) __PYX_ERR(0, 1063, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1066
 *         return 0
 * 
 *     def SaveToFile(self, St, back=False):             # <<<<<<<<<<<<<<
 *         path = os.path.dirname(self.FileName)
 *         if back:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_191SaveToFile, 0, __pyx_n_s_CodeWriterBase_SaveToFile, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__295)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1066, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__296);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_SaveToFile, __pyx_t_4) < 0) __PYX_ERR(0, 1066, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1086
 *         return Result
 * 
 *     def LimitLine(self, Text):             # <<<<<<<<<<<<<<
 *         # limitation de la longueur des lignes. Faut-il le faire ?
 *         return Text
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_193LimitLine, 0, __pyx_n_s_CodeWriterBase_LimitLine, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__298)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1086, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_LimitLine, __pyx_t_4) < 0) __PYX_ERR(0, 1086, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1090
 *         return Text
 * 
 *     def IsComment(self, Line):             # <<<<<<<<<<<<<<
 *         return False
 * 
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_195IsComment, 0, __pyx_n_s_CodeWriterBase_IsComment, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__300)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1090, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_IsComment, __pyx_t_4) < 0) __PYX_ERR(0, 1090, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1093
 *         return False
 * 
 *     def ExtractFileNameOnly(self, filename):             # <<<<<<<<<<<<<<
 *         res = os.path.basename(filename)
 *         res, _ = os.path.splitext(res)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_197ExtractFileNameOnly, 0, __pyx_n_s_CodeWriterBase_ExtractFileNameOn, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__302)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1093, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_ExtractFileNameOnly, __pyx_t_4) < 0) __PYX_ERR(0, 1093, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1098
 *         return res
 * 
 *     def GetDataRecStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         return ''
 * # commented le 14/112/17
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_199GetDataRecStr, 0, __pyx_n_s_CodeWriterBase_GetDataRecStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__304)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1098, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__305);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetDataRecStr, __pyx_t_4) < 0) __PYX_ERR(0, 1098, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1131
 * #         return "\n".join(TL)
 * #
 *     def GetModelCount(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             N = self.NetSource.modelCount
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_201GetModelCount, 0, __pyx_n_s_CodeWriterBase_GetModelCount, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__307)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1131, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__308);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetModelCount, __pyx_t_4) < 0) __PYX_ERR(0, 1131, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1138
 *         return str(N)
 * 
 *     def GetDataCount(self, Indent=0):             # <<<<<<<<<<<<<<
 *         N = 0
 * #         model = self.NetSource
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_203GetDataCount, 0, __pyx_n_s_CodeWriterBase_GetDataCount, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__310)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1138, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__311);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetDataCount, __pyx_t_4) < 0) __PYX_ERR(0, 1138, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1154
 *         return str(N)
 * 
 *     def GetModelList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         lst = [self.DebutLigne(Indent) + '"%s"'% model.name for model in self.NetSource.models]
 *         return ",\n".join(lst)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_205GetModelList, 0, __pyx_n_s_CodeWriterBase_GetModelList, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__313)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1154, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__314);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetModelList, __pyx_t_4) < 0) __PYX_ERR(0, 1154, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1158
 *         return ",\n".join(lst)
 * 
 *     def GetTrueModelList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         try:
 *             try:
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_207GetTrueModelList, 0, __pyx_n_s_CodeWriterBase_GetTrueModelList, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__316)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1158, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__317);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetTrueModelList, __pyx_t_4) < 0) __PYX_ERR(0, 1158, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1168
 *         return ",\n".join(lst)
 * 
 *     def Getsmiles(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return self.NetSource.smiles
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_209Getsmiles, 0, __pyx_n_s_CodeWriterBase_Getsmiles, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__319)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1168, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__320);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_Getsmiles, __pyx_t_4) < 0) __PYX_ERR(0, 1168, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1174
 *             return ""
 * 
 *     def Getmodelname(self, Indent=0):             # <<<<<<<<<<<<<<
 *         try:
 *             return nonASCIICharsConvert(self.NetSource.trueName)
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_211Getmodelname, 0, __pyx_n_s_CodeWriterBase_Getmodelname, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__322)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1174, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__323);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_Getmodelname, __pyx_t_4) < 0) __PYX_ERR(0, 1174, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1181
 *             return ""
 * 
 *     def GetsmilesList(self, Indent=1):             # <<<<<<<<<<<<<<
 *         try:
 *             if hasattr(self.NetSource.models[0], "smiles"):
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_213GetsmilesList, 0, __pyx_n_s_CodeWriterBase_GetsmilesList, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__325)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1181, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__326);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetsmilesList, __pyx_t_4) < 0) __PYX_ERR(0, 1181, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1193
 *         return ""
 * 
 *     def GetDitectorStr(self, garb=0):             # <<<<<<<<<<<<<<
 *         modulo = 32
 *         lst = []
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_215GetDitectorStr, 0, __pyx_n_s_CodeWriterBase_GetDitectorStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__328)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1193, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__329);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetDitectorStr, __pyx_t_4) < 0) __PYX_ERR(0, 1193, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1207
 *         return "{\n%s}"%  ",\n".join(lst)
 * 
 *     def Get0TargetList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         lst = []
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_217Get0TargetList, 0, __pyx_n_s_CodeWriterBase_Get0TargetList, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__331)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1207, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__332);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_Get0TargetList, __pyx_t_4) < 0) __PYX_ERR(0, 1207, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1217
 *         return "{\n%s}" % ",".join(lst)
 * 
 *     def GetTargetList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if not hasattr(source, "targets"):
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_219GetTargetList, 0, __pyx_n_s_CodeWriterBase_GetTargetList, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__334)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1217, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__335);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetTargetList, __pyx_t_4) < 0) __PYX_ERR(0, 1217, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1226
 * 
 *     #@timeit
 *     def GetBiasBasedList(self, Indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_221GetBiasBasedList, 0, __pyx_n_s_CodeWriterBase_GetBiasBasedList, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__337)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1226, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__338);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetBiasBasedList, __pyx_t_4) < 0) __PYX_ERR(0, 1226, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1236
 *         return "{{{0}}}".format(", ".join(lst))
 * 
 *     def Getbiasbasedcount(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "biasBaseId"):
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_223Getbiasbasedcount, 0, __pyx_n_s_CodeWriterBase_Getbiasbasedcount, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__340)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__341);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_Getbiasbasedcount, __pyx_t_4) < 0) __PYX_ERR(0, 1236, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1246
 *         return len(lst)
 * 
 *     def GetOutputSynList(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_225GetOutputSynList, 0, __pyx_n_s_CodeWriterBase_GetOutputSynList, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__343)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1246, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__344);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_GetOutputSynList, __pyx_t_4) < 0) __PYX_ERR(0, 1246, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1265
 * #         return '{%s}'% st
 * 
 *     def Getoutputsyncount(self, indent=0):             # <<<<<<<<<<<<<<
 *         source = self.NetSource
 *         if hasattr(source, "outputLinkId"):
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_227Getoutputsyncount, 0, __pyx_n_s_CodeWriterBase_Getoutputsyncount, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__346)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1265, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__347);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_Getoutputsyncount, __pyx_t_4) < 0) __PYX_ERR(0, 1265, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1279
 * #         return len(source.outputLinkId)
 * 
 *     def BracketOutDeclStr(self):             # <<<<<<<<<<<<<<
 *         if self.NetSource.outputCount == 1:
 *             return ""
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_229BracketOutDeclStr, 0, __pyx_n_s_CodeWriterBase_BracketOutDeclStr, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__349)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1279, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_BracketOutDeclStr, __pyx_t_4) < 0) __PYX_ERR(0, 1279, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1284
 *         return "[OUTPUTCOUNT]"
 * 
 *     def BracketOut0Str(self):             # <<<<<<<<<<<<<<
 *         if self.NetSource.outputCount == 1:
 *             return ""
 */
  __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8metaphor_5monal_5lcode_10codewriter_14CodeWriterBase_231BracketOut0Str, 0, __pyx_n_s_CodeWriterBase_BracketOut0Str, NULL, __pyx_n_s_metaphor_monal_lcode_codewriter, __pyx_d, ((PyObject *)__pyx_codeobj__351)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1284, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (__Pyx_SetNameInClass(__pyx_t_3, __pyx_n_s_BracketOut0Str, __pyx_t_4) < 0) __PYX_ERR(0, 1284, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

  /* "metaphor/monal/lcode/codewriter.py":42
 *     'ui,uj', 'if,ig', 'if,jf', 'ig,ih', 'ug,uh']
 * 
 * @Properties(("Weight", "WeightRedir", "WeightDecl", "CurrentFunctionType",             # <<<<<<<<<<<<<<
 *              "CurrentHeader", "NoTemplate", "UserName", "ComputerName",
 *              "NetName", "TargetName", "FileName", "Step", "OKMulti",
 */
  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_Properties); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);

  /* "metaphor/monal/lcode/codewriter.py":50
 *              "CipherKey", "TemplatePath", "NomFonction", "NomFTransfer",
 *              "NomFGradientCall", "NomFGradient", "NumpyDir", "SaveDir",
 *              "moduleName", "originallink","dynamiclinking"), False)             # <<<<<<<<<<<<<<
 * #@Properties2(("NetSource",), "Set", "Get")
 * @Properties2(("CodeType", "Affect", "LongWeight", "BeginStr", "EndStr",
 */
  __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__353, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

  /* "metaphor/monal/lcode/codewriter.py":52
 *              "moduleName", "originallink","dynamiclinking"), False)
 * #@Properties2(("NetSource",), "Set", "Get")
 * @Properties2(("CodeType", "Affect", "LongWeight", "BeginStr", "EndStr",             # <<<<<<<<<<<<<<
 *               "WithMatrix", "NetworkKind", "LangMarkup", "ShortFileName",
 *               "DecalIni", "MatrixSource",), None, "Get")
 */
  __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_Properties2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 52, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);

  /* "metaphor/monal/lcode/codewriter.py":54
 * @Properties2(("CodeType", "Affect", "LongWeight", "BeginStr", "EndStr",
 *               "WithMatrix", "NetworkKind", "LangMarkup", "ShortFileName",
 *               "DecalIni", "MatrixSource",), None, "Get")             # <<<<<<<<<<<<<<
 * @Properties2(("DecimalSep",), 'Set', "_")
 * class CodeWriterBase(Component):
 */
  __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__355, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 52, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

  /* "metaphor/monal/lcode/codewriter.py":55
 *               "WithMatrix", "NetworkKind", "LangMarkup", "ShortFileName",
 *               "DecalIni", "MatrixSource",), None, "Get")
 * @Properties2(("DecimalSep",), 'Set', "_")             # <<<<<<<<<<<<<<
 * class CodeWriterBase(Component):
 *     '''
 */
  __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_Properties2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 55, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_9);
  __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__357, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 55, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_10);
  __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

  /* "metaphor/monal/lcode/codewriter.py":56
 *               "DecalIni", "MatrixSource",), None, "Get")
 * @Properties2(("DecimalSep",), 'Set', "_")
 * class CodeWriterBase(Component):             # <<<<<<<<<<<<<<
 *     '''
 *     classdocs
 */
  __pyx_t_9 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_iso885915_CodeWriterBase, __pyx_t_1, __pyx_t_3, NULL, 0, 0); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_9);
  __pyx_t_11 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_10))) {
    __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_10);
    if (likely(__pyx_t_11)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10);
      __Pyx_INCREF(__pyx_t_11);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_10, function);
    }
  }
  if (!__pyx_t_11) {
    __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_9); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 55, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    __Pyx_GOTREF(__pyx_t_5);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_10)) {
      PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_9};
      __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_10, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 55, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_10)) {
      PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_t_9};
      __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_10, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 55, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
    } else
    #endif
    {
      __pyx_t_12 = PyTuple_New(1+1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 55, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_11); __pyx_t_11 = NULL;
      __Pyx_GIVEREF(__pyx_t_9);
      PyTuple_SET_ITEM(__pyx_t_12, 0+1, __pyx_t_9);
      __pyx_t_9 = 0;
      __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_12, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 55, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
  __pyx_t_10 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_7))) {
    __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_7);
    if (likely(__pyx_t_10)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
      __Pyx_INCREF(__pyx_t_10);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_7, function);
    }
  }
  if (!__pyx_t_10) {
    __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 52, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_GOTREF(__pyx_t_6);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_7)) {
      PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_5};
      __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 52, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
      PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_t_5};
      __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 52, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    } else
    #endif
    {
      __pyx_t_12 = PyTuple_New(1+1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 52, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_10); __pyx_t_10 = NULL;
      __Pyx_GIVEREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_12, 0+1, __pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_12, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 52, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  __pyx_t_7 = NULL;
  if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_8))) {
    __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8);
    if (likely(__pyx_t_7)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
      __Pyx_INCREF(__pyx_t_7);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_8, function);
    }
  }
  if (!__pyx_t_7) {
    __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 42, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    __Pyx_GOTREF(__pyx_t_4);
  } else {
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(__pyx_t_8)) {
      PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
      __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 42, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    } else
    #endif
    #if CYTHON_FAST_PYCCALL
    if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
      PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
      __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 42, __pyx_L1_error)
      __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
    } else
    #endif
    {
      __pyx_t_12 = PyTuple_New(1+1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 42, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_7); __pyx_t_7 = NULL;
      __Pyx_GIVEREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_12, 0+1, __pyx_t_6);
      __pyx_t_6 = 0;
      __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_12, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 42, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_iso885915_CodeWriterBase, __pyx_t_4) < 0) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "metaphor/monal/lcode/codewriter.py":1
 * #-*- coding: ISO-8859-15 -*-             # <<<<<<<<<<<<<<
 * #===============================================================================
 * # $Id: codewriter.py 4746 2018-04-14 19:48:33Z jeanluc $
 */
  __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_1) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /*--- Wrapped vars code ---*/

  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_9);
  __Pyx_XDECREF(__pyx_t_10);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_12);
  if (__pyx_m) {
    if (__pyx_d) {
      __Pyx_AddTraceback("init metaphor.monal.lcode.codewriter", 0, __pyx_lineno, __pyx_filename);
    }
    Py_DECREF(__pyx_m); __pyx_m = 0;
  } else if (!PyErr_Occurred()) {
    PyErr_SetString(PyExc_ImportError, "init metaphor.monal.lcode.codewriter");
  }
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  return (__pyx_m != NULL) ? 0 : -1;
  #elif PY_MAJOR_VERSION >= 3
  return __pyx_m;
  #else
  return;
  #endif
}

/* --- Runtime support code --- */
/* Refnanny */
#if CYTHON_REFNANNY
static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {
    PyObject *m = NULL, *p = NULL;
    void *r = NULL;
    m = PyImport_ImportModule((char *)modname);
    if (!m) goto end;
    p = PyObject_GetAttrString(m, (char *)"RefNannyAPI");
    if (!p) goto end;
    r = PyLong_AsVoidPtr(p);
end:
    Py_XDECREF(p);
    Py_XDECREF(m);
    return (__Pyx_RefNannyAPIStruct *)r;
}
#endif

/* PyObjectGetAttrStr */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {
    PyTypeObject* tp = Py_TYPE(obj);
    if (likely(tp->tp_getattro))
        return tp->tp_getattro(obj, attr_name);
#if PY_MAJOR_VERSION < 3
    if (likely(tp->tp_getattr))
        return tp->tp_getattr(obj, PyString_AS_STRING(attr_name));
#endif
    return PyObject_GetAttr(obj, attr_name);
}
#endif

/* GetBuiltinName */
static PyObject *__Pyx_GetBuiltinName(PyObject *name) {
    PyObject* result = __Pyx_PyObject_GetAttrStr(__pyx_b, name);
    if (unlikely(!result)) {
        PyErr_Format(PyExc_NameError,
#if PY_MAJOR_VERSION >= 3
            "name '%U' is not defined", name);
#else
            "name '%.200s' is not defined", PyString_AS_STRING(name));
#endif
    }
    return result;
}

/* RaiseArgTupleInvalid */
static void __Pyx_RaiseArgtupleInvalid(
    const char* func_name,
    int exact,
    Py_ssize_t num_min,
    Py_ssize_t num_max,
    Py_ssize_t num_found)
{
    Py_ssize_t num_expected;
    const char *more_or_less;
    if (num_found < num_min) {
        num_expected = num_min;
        more_or_less = "at least";
    } else {
        num_expected = num_max;
        more_or_less = "at most";
    }
    if (exact) {
        more_or_less = "exactly";
    }
    PyErr_Format(PyExc_TypeError,
                 "%.200s() takes %.8s %" CYTHON_FORMAT_SSIZE_T "d positional argument%.1s (%" CYTHON_FORMAT_SSIZE_T "d given)",
                 func_name, more_or_less, num_expected,
                 (num_expected == 1) ? "" : "s", num_found);
}

/* RaiseDoubleKeywords */
static void __Pyx_RaiseDoubleKeywordsError(
    const char* func_name,
    PyObject* kw_name)
{
    PyErr_Format(PyExc_TypeError,
        #if PY_MAJOR_VERSION >= 3
        "%s() got multiple values for keyword argument '%U'", func_name, kw_name);
        #else
        "%s() got multiple values for keyword argument '%s'", func_name,
        PyString_AsString(kw_name));
        #endif
}

/* ParseKeywords */
static int __Pyx_ParseOptionalKeywords(
    PyObject *kwds,
    PyObject **argnames[],
    PyObject *kwds2,
    PyObject *values[],
    Py_ssize_t num_pos_args,
    const char* function_name)
{
    PyObject *key = 0, *value = 0;
    Py_ssize_t pos = 0;
    PyObject*** name;
    PyObject*** first_kw_arg = argnames + num_pos_args;
    while (PyDict_Next(kwds, &pos, &key, &value)) {
        name = first_kw_arg;
        while (*name && (**name != key)) name++;
        if (*name) {
            values[name-argnames] = value;
            continue;
        }
        name = first_kw_arg;
        #if PY_MAJOR_VERSION < 3
        if (likely(PyString_CheckExact(key)) || likely(PyString_Check(key))) {
            while (*name) {
                if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key))
                        && _PyString_Eq(**name, key)) {
                    values[name-argnames] = value;
                    break;
                }
                name++;
            }
            if (*name) continue;
            else {
                PyObject*** argname = argnames;
                while (argname != first_kw_arg) {
                    if ((**argname == key) || (
                            (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key))
                             && _PyString_Eq(**argname, key))) {
                        goto arg_passed_twice;
                    }
                    argname++;
                }
            }
        } else
        #endif
        if (likely(PyUnicode_Check(key))) {
            while (*name) {
                int cmp = (**name == key) ? 0 :
                #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3
                    (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
                #endif
                    PyUnicode_Compare(**name, key);
                if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad;
                if (cmp == 0) {
                    values[name-argnames] = value;
                    break;
                }
                name++;
            }
            if (*name) continue;
            else {
                PyObject*** argname = argnames;
                while (argname != first_kw_arg) {
                    int cmp = (**argname == key) ? 0 :
                    #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3
                        (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                    #endif
                        PyUnicode_Compare(**argname, key);
                    if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad;
                    if (cmp == 0) goto arg_passed_twice;
                    argname++;
                }
            }
        } else
            goto invalid_keyword_type;
        if (kwds2) {
            if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad;
        } else {
            goto invalid_keyword;
        }
    }
    return 0;
arg_passed_twice:
    __Pyx_RaiseDoubleKeywordsError(function_name, key);
    goto bad;
invalid_keyword_type:
    PyErr_Format(PyExc_TypeError,
        "%.200s() keywords must be strings", function_name);
    goto bad;
invalid_keyword:
    PyErr_Format(PyExc_TypeError,
    #if PY_MAJOR_VERSION < 3
        "%.200s() got an unexpected keyword argument '%.200s'",
        function_name, PyString_AsString(key));
    #else
        "%s() got an unexpected keyword argument '%U'",
        function_name, key);
    #endif
bad:
    return -1;
}

/* GetModuleGlobalName */
static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name) {
    PyObject *result;
#if !CYTHON_AVOID_BORROWED_REFS
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1
    result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash);
    if (likely(result)) {
        Py_INCREF(result);
    } else if (unlikely(PyErr_Occurred())) {
        result = NULL;
    } else {
#else
    result = PyDict_GetItem(__pyx_d, name);
    if (likely(result)) {
        Py_INCREF(result);
    } else {
#endif
#else
    result = PyObject_GetItem(__pyx_d, name);
    if (!result) {
        PyErr_Clear();
#endif
        result = __Pyx_GetBuiltinName(name);
    }
    return result;
}

/* PyObjectCall */
    #if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {
    PyObject *result;
    ternaryfunc call = func->ob_type->tp_call;
    if (unlikely(!call))
        return PyObject_Call(func, arg, kw);
    if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
        return NULL;
    result = (*call)(func, arg, kw);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* PyFunctionFastCall */
    #if CYTHON_FAST_PYCALL
#include "frameobject.h"
static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,
                                               PyObject *globals) {
    PyFrameObject *f;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    PyObject **fastlocals;
    Py_ssize_t i;
    PyObject *result;
    assert(globals != NULL);
    /* XXX Perhaps we should create a specialized
       PyFrame_New() that doesn't take locals, but does
       take builtins without sanity checking them.
       */
    assert(tstate != NULL);
    f = PyFrame_New(tstate, co, globals, NULL);
    if (f == NULL) {
        return NULL;
    }
    fastlocals = f->f_localsplus;
    for (i = 0; i < na; i++) {
        Py_INCREF(*args);
        fastlocals[i] = *args++;
    }
    result = PyEval_EvalFrameEx(f,0);
    ++tstate->recursion_depth;
    Py_DECREF(f);
    --tstate->recursion_depth;
    return result;
}
#if 1 || PY_VERSION_HEX < 0x030600B1
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) {
    PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func);
    PyObject *globals = PyFunction_GET_GLOBALS(func);
    PyObject *argdefs = PyFunction_GET_DEFAULTS(func);
    PyObject *closure;
#if PY_MAJOR_VERSION >= 3
    PyObject *kwdefs;
#endif
    PyObject *kwtuple, **k;
    PyObject **d;
    Py_ssize_t nd;
    Py_ssize_t nk;
    PyObject *result;
    assert(kwargs == NULL || PyDict_Check(kwargs));
    nk = kwargs ? PyDict_Size(kwargs) : 0;
    if (Py_EnterRecursiveCall((char*)" while calling a Python object")) {
        return NULL;
    }
    if (
#if PY_MAJOR_VERSION >= 3
            co->co_kwonlyargcount == 0 &&
#endif
            likely(kwargs == NULL || nk == 0) &&
            co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) {
        if (argdefs == NULL && co->co_argcount == nargs) {
            result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals);
            goto done;
        }
        else if (nargs == 0 && argdefs != NULL
                 && co->co_argcount == Py_SIZE(argdefs)) {
            /* function called with no arguments, but all parameters have
               a default value: use default values as arguments .*/
            args = &PyTuple_GET_ITEM(argdefs, 0);
            result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals);
            goto done;
        }
    }
    if (kwargs != NULL) {
        Py_ssize_t pos, i;
        kwtuple = PyTuple_New(2 * nk);
        if (kwtuple == NULL) {
            result = NULL;
            goto done;
        }
        k = &PyTuple_GET_ITEM(kwtuple, 0);
        pos = i = 0;
        while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) {
            Py_INCREF(k[i]);
            Py_INCREF(k[i+1]);
            i += 2;
        }
        nk = i / 2;
    }
    else {
        kwtuple = NULL;
        k = NULL;
    }
    closure = PyFunction_GET_CLOSURE(func);
#if PY_MAJOR_VERSION >= 3
    kwdefs = PyFunction_GET_KW_DEFAULTS(func);
#endif
    if (argdefs != NULL) {
        d = &PyTuple_GET_ITEM(argdefs, 0);
        nd = Py_SIZE(argdefs);
    }
    else {
        d = NULL;
        nd = 0;
    }
#if PY_MAJOR_VERSION >= 3
    result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL,
                               args, nargs,
                               k, (int)nk,
                               d, (int)nd, kwdefs, closure);
#else
    result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL,
                               args, nargs,
                               k, (int)nk,
                               d, (int)nd, closure);
#endif
    Py_XDECREF(kwtuple);
done:
    Py_LeaveRecursiveCall();
    return result;
}
#endif
#endif

/* PyCFunctionFastCall */
    #if CYTHON_FAST_PYCCALL
static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) {
    PyCFunctionObject *func = (PyCFunctionObject*)func_obj;
    PyCFunction meth = PyCFunction_GET_FUNCTION(func);
    PyObject *self = PyCFunction_GET_SELF(func);
    int flags = PyCFunction_GET_FLAGS(func);
    assert(PyCFunction_Check(func));
    assert(METH_FASTCALL == (flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS)));
    assert(nargs >= 0);
    assert(nargs == 0 || args != NULL);
    /* _PyCFunction_FastCallDict() must not be called with an exception set,
       because it may clear it (directly or indirectly) and so the
       caller loses its exception */
    assert(!PyErr_Occurred());
    if ((PY_VERSION_HEX < 0x030700A0) || unlikely(flags & METH_KEYWORDS)) {
        return (*((__Pyx_PyCFunctionFastWithKeywords)meth)) (self, args, nargs, NULL);
    } else {
        return (*((__Pyx_PyCFunctionFast)meth)) (self, args, nargs);
    }
}
#endif

/* PyObjectSetAttrStr */
    #if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) {
    PyTypeObject* tp = Py_TYPE(obj);
    if (likely(tp->tp_setattro))
        return tp->tp_setattro(obj, attr_name, value);
#if PY_MAJOR_VERSION < 3
    if (likely(tp->tp_setattr))
        return tp->tp_setattr(obj, PyString_AS_STRING(attr_name), value);
#endif
    return PyObject_SetAttr(obj, attr_name, value);
}
#endif

/* PyObjectCallMethO */
    #if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {
    PyObject *self, *result;
    PyCFunction cfunc;
    cfunc = PyCFunction_GET_FUNCTION(func);
    self = PyCFunction_GET_SELF(func);
    if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
        return NULL;
    result = cfunc(self, arg);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* PyObjectCallOneArg */
    #if CYTHON_COMPILING_IN_CPYTHON
static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {
    PyObject *result;
    PyObject *args = PyTuple_New(1);
    if (unlikely(!args)) return NULL;
    Py_INCREF(arg);
    PyTuple_SET_ITEM(args, 0, arg);
    result = __Pyx_PyObject_Call(func, args, NULL);
    Py_DECREF(args);
    return result;
}
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
#if CYTHON_FAST_PYCALL
    if (PyFunction_Check(func)) {
        return __Pyx_PyFunction_FastCall(func, &arg, 1);
    }
#endif
    if (likely(PyCFunction_Check(func))) {
        if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) {
            return __Pyx_PyObject_CallMethO(func, arg);
#if CYTHON_FAST_PYCCALL
        } else if (PyCFunction_GET_FLAGS(func) & METH_FASTCALL) {
            return __Pyx_PyCFunction_FastCall(func, &arg, 1);
#endif
        }
    }
    return __Pyx__PyObject_CallOneArg(func, arg);
}
#else
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
    PyObject *result;
    PyObject *args = PyTuple_Pack(1, arg);
    if (unlikely(!args)) return NULL;
    result = __Pyx_PyObject_Call(func, args, NULL);
    Py_DECREF(args);
    return result;
}
#endif

/* PyObjectCallNoArg */
    #if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) {
#if CYTHON_FAST_PYCALL
    if (PyFunction_Check(func)) {
        return __Pyx_PyFunction_FastCall(func, NULL, 0);
    }
#endif
#ifdef __Pyx_CyFunction_USED
    if (likely(PyCFunction_Check(func) || __Pyx_TypeCheck(func, __pyx_CyFunctionType))) {
#else
    if (likely(PyCFunction_Check(func))) {
#endif
        if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) {
            return __Pyx_PyObject_CallMethO(func, NULL);
        }
    }
    return __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL);
}
#endif

/* FetchCommonType */
      static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type) {
    PyObject* fake_module;
    PyTypeObject* cached_type = NULL;
    fake_module = PyImport_AddModule((char*) "_cython_" CYTHON_ABI);
    if (!fake_module) return NULL;
    Py_INCREF(fake_module);
    cached_type = (PyTypeObject*) PyObject_GetAttrString(fake_module, type->tp_name);
    if (cached_type) {
        if (!PyType_Check((PyObject*)cached_type)) {
            PyErr_Format(PyExc_TypeError,
                "Shared Cython type %.200s is not a type object",
                type->tp_name);
            goto bad;
        }
        if (cached_type->tp_basicsize != type->tp_basicsize) {
            PyErr_Format(PyExc_TypeError,
                "Shared Cython type %.200s has the wrong size, try recompiling",
                type->tp_name);
            goto bad;
        }
    } else {
        if (!PyErr_ExceptionMatches(PyExc_AttributeError)) goto bad;
        PyErr_Clear();
        if (PyType_Ready(type) < 0) goto bad;
        if (PyObject_SetAttrString(fake_module, type->tp_name, (PyObject*) type) < 0)
            goto bad;
        Py_INCREF(type);
        cached_type = type;
    }
done:
    Py_DECREF(fake_module);
    return cached_type;
bad:
    Py_XDECREF(cached_type);
    cached_type = NULL;
    goto done;
}

/* CythonFunction */
      #include <structmember.h>
static PyObject *
__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, CYTHON_UNUSED void *closure)
{
    if (unlikely(op->func_doc == NULL)) {
        if (op->func.m_ml->ml_doc) {
#if PY_MAJOR_VERSION >= 3
            op->func_doc = PyUnicode_FromString(op->func.m_ml->ml_doc);
#else
            op->func_doc = PyString_FromString(op->func.m_ml->ml_doc);
#endif
            if (unlikely(op->func_doc == NULL))
                return NULL;
        } else {
            Py_INCREF(Py_None);
            return Py_None;
        }
    }
    Py_INCREF(op->func_doc);
    return op->func_doc;
}
static int
__Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value)
{
    PyObject *tmp = op->func_doc;
    if (value == NULL) {
        value = Py_None;
    }
    Py_INCREF(value);
    op->func_doc = value;
    Py_XDECREF(tmp);
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op)
{
    if (unlikely(op->func_name == NULL)) {
#if PY_MAJOR_VERSION >= 3
        op->func_name = PyUnicode_InternFromString(op->func.m_ml->ml_name);
#else
        op->func_name = PyString_InternFromString(op->func.m_ml->ml_name);
#endif
        if (unlikely(op->func_name == NULL))
            return NULL;
    }
    Py_INCREF(op->func_name);
    return op->func_name;
}
static int
__Pyx_CyFunction_set_name(__pyx_CyFunctionObject *op, PyObject *value)
{
    PyObject *tmp;
#if PY_MAJOR_VERSION >= 3
    if (unlikely(value == NULL || !PyUnicode_Check(value))) {
#else
    if (unlikely(value == NULL || !PyString_Check(value))) {
#endif
        PyErr_SetString(PyExc_TypeError,
                        "__name__ must be set to a string object");
        return -1;
    }
    tmp = op->func_name;
    Py_INCREF(value);
    op->func_name = value;
    Py_XDECREF(tmp);
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_qualname(__pyx_CyFunctionObject *op)
{
    Py_INCREF(op->func_qualname);
    return op->func_qualname;
}
static int
__Pyx_CyFunction_set_qualname(__pyx_CyFunctionObject *op, PyObject *value)
{
    PyObject *tmp;
#if PY_MAJOR_VERSION >= 3
    if (unlikely(value == NULL || !PyUnicode_Check(value))) {
#else
    if (unlikely(value == NULL || !PyString_Check(value))) {
#endif
        PyErr_SetString(PyExc_TypeError,
                        "__qualname__ must be set to a string object");
        return -1;
    }
    tmp = op->func_qualname;
    Py_INCREF(value);
    op->func_qualname = value;
    Py_XDECREF(tmp);
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_self(__pyx_CyFunctionObject *m, CYTHON_UNUSED void *closure)
{
    PyObject *self;
    self = m->func_closure;
    if (self == NULL)
        self = Py_None;
    Py_INCREF(self);
    return self;
}
static PyObject *
__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op)
{
    if (unlikely(op->func_dict == NULL)) {
        op->func_dict = PyDict_New();
        if (unlikely(op->func_dict == NULL))
            return NULL;
    }
    Py_INCREF(op->func_dict);
    return op->func_dict;
}
static int
__Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value)
{
    PyObject *tmp;
    if (unlikely(value == NULL)) {
        PyErr_SetString(PyExc_TypeError,
               "function's dictionary may not be deleted");
        return -1;
    }
    if (unlikely(!PyDict_Check(value))) {
        PyErr_SetString(PyExc_TypeError,
               "setting function's dictionary to a non-dict");
        return -1;
    }
    tmp = op->func_dict;
    Py_INCREF(value);
    op->func_dict = value;
    Py_XDECREF(tmp);
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_globals(__pyx_CyFunctionObject *op)
{
    Py_INCREF(op->func_globals);
    return op->func_globals;
}
static PyObject *
__Pyx_CyFunction_get_closure(CYTHON_UNUSED __pyx_CyFunctionObject *op)
{
    Py_INCREF(Py_None);
    return Py_None;
}
static PyObject *
__Pyx_CyFunction_get_code(__pyx_CyFunctionObject *op)
{
    PyObject* result = (op->func_code) ? op->func_code : Py_None;
    Py_INCREF(result);
    return result;
}
static int
__Pyx_CyFunction_init_defaults(__pyx_CyFunctionObject *op) {
    int result = 0;
    PyObject *res = op->defaults_getter((PyObject *) op);
    if (unlikely(!res))
        return -1;
    #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    op->defaults_tuple = PyTuple_GET_ITEM(res, 0);
    Py_INCREF(op->defaults_tuple);
    op->defaults_kwdict = PyTuple_GET_ITEM(res, 1);
    Py_INCREF(op->defaults_kwdict);
    #else
    op->defaults_tuple = PySequence_ITEM(res, 0);
    if (unlikely(!op->defaults_tuple)) result = -1;
    else {
        op->defaults_kwdict = PySequence_ITEM(res, 1);
        if (unlikely(!op->defaults_kwdict)) result = -1;
    }
    #endif
    Py_DECREF(res);
    return result;
}
static int
__Pyx_CyFunction_set_defaults(__pyx_CyFunctionObject *op, PyObject* value) {
    PyObject* tmp;
    if (!value) {
        value = Py_None;
    } else if (value != Py_None && !PyTuple_Check(value)) {
        PyErr_SetString(PyExc_TypeError,
                        "__defaults__ must be set to a tuple object");
        return -1;
    }
    Py_INCREF(value);
    tmp = op->defaults_tuple;
    op->defaults_tuple = value;
    Py_XDECREF(tmp);
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op) {
    PyObject* result = op->defaults_tuple;
    if (unlikely(!result)) {
        if (op->defaults_getter) {
            if (__Pyx_CyFunction_init_defaults(op) < 0) return NULL;
            result = op->defaults_tuple;
        } else {
            result = Py_None;
        }
    }
    Py_INCREF(result);
    return result;
}
static int
__Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value) {
    PyObject* tmp;
    if (!value) {
        value = Py_None;
    } else if (value != Py_None && !PyDict_Check(value)) {
        PyErr_SetString(PyExc_TypeError,
                        "__kwdefaults__ must be set to a dict object");
        return -1;
    }
    Py_INCREF(value);
    tmp = op->defaults_kwdict;
    op->defaults_kwdict = value;
    Py_XDECREF(tmp);
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op) {
    PyObject* result = op->defaults_kwdict;
    if (unlikely(!result)) {
        if (op->defaults_getter) {
            if (__Pyx_CyFunction_init_defaults(op) < 0) return NULL;
            result = op->defaults_kwdict;
        } else {
            result = Py_None;
        }
    }
    Py_INCREF(result);
    return result;
}
static int
__Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value) {
    PyObject* tmp;
    if (!value || value == Py_None) {
        value = NULL;
    } else if (!PyDict_Check(value)) {
        PyErr_SetString(PyExc_TypeError,
                        "__annotations__ must be set to a dict object");
        return -1;
    }
    Py_XINCREF(value);
    tmp = op->func_annotations;
    op->func_annotations = value;
    Py_XDECREF(tmp);
    return 0;
}
static PyObject *
__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op) {
    PyObject* result = op->func_annotations;
    if (unlikely(!result)) {
        result = PyDict_New();
        if (unlikely(!result)) return NULL;
        op->func_annotations = result;
    }
    Py_INCREF(result);
    return result;
}
static PyGetSetDef __pyx_CyFunction_getsets[] = {
    {(char *) "func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0},
    {(char *) "__doc__",  (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0},
    {(char *) "func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0},
    {(char *) "__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0},
    {(char *) "__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0},
    {(char *) "__self__", (getter)__Pyx_CyFunction_get_self, 0, 0, 0},
    {(char *) "func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0},
    {(char *) "__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0},
    {(char *) "func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0},
    {(char *) "__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0},
    {(char *) "func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0},
    {(char *) "__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0},
    {(char *) "func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0},
    {(char *) "__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0},
    {(char *) "func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0},
    {(char *) "__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0},
    {(char *) "__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0},
    {(char *) "__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0},
    {0, 0, 0, 0, 0}
};
static PyMemberDef __pyx_CyFunction_members[] = {
    {(char *) "__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), PY_WRITE_RESTRICTED, 0},
    {0, 0, 0,  0, 0}
};
static PyObject *
__Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, CYTHON_UNUSED PyObject *args)
{
#if PY_MAJOR_VERSION >= 3
    return PyUnicode_FromString(m->func.m_ml->ml_name);
#else
    return PyString_FromString(m->func.m_ml->ml_name);
#endif
}
static PyMethodDef __pyx_CyFunction_methods[] = {
    {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0},
    {0, 0, 0, 0}
};
#if PY_VERSION_HEX < 0x030500A0
#define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist)
#else
#define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func.m_weakreflist)
#endif
static PyObject *__Pyx_CyFunction_New(PyTypeObject *type, PyMethodDef *ml, int flags, PyObject* qualname,
                                      PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) {
    __pyx_CyFunctionObject *op = PyObject_GC_New(__pyx_CyFunctionObject, type);
    if (op == NULL)
        return NULL;
    op->flags = flags;
    __Pyx_CyFunction_weakreflist(op) = NULL;
    op->func.m_ml = ml;
    op->func.m_self = (PyObject *) op;
    Py_XINCREF(closure);
    op->func_closure = closure;
    Py_XINCREF(module);
    op->func.m_module = module;
    op->func_dict = NULL;
    op->func_name = NULL;
    Py_INCREF(qualname);
    op->func_qualname = qualname;
    op->func_doc = NULL;
    op->func_classobj = NULL;
    op->func_globals = globals;
    Py_INCREF(op->func_globals);
    Py_XINCREF(code);
    op->func_code = code;
    op->defaults_pyobjects = 0;
    op->defaults = NULL;
    op->defaults_tuple = NULL;
    op->defaults_kwdict = NULL;
    op->defaults_getter = NULL;
    op->func_annotations = NULL;
    PyObject_GC_Track(op);
    return (PyObject *) op;
}
static int
__Pyx_CyFunction_clear(__pyx_CyFunctionObject *m)
{
    Py_CLEAR(m->func_closure);
    Py_CLEAR(m->func.m_module);
    Py_CLEAR(m->func_dict);
    Py_CLEAR(m->func_name);
    Py_CLEAR(m->func_qualname);
    Py_CLEAR(m->func_doc);
    Py_CLEAR(m->func_globals);
    Py_CLEAR(m->func_code);
    Py_CLEAR(m->func_classobj);
    Py_CLEAR(m->defaults_tuple);
    Py_CLEAR(m->defaults_kwdict);
    Py_CLEAR(m->func_annotations);
    if (m->defaults) {
        PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m);
        int i;
        for (i = 0; i < m->defaults_pyobjects; i++)
            Py_XDECREF(pydefaults[i]);
        PyObject_Free(m->defaults);
        m->defaults = NULL;
    }
    return 0;
}
static void __Pyx__CyFunction_dealloc(__pyx_CyFunctionObject *m)
{
    if (__Pyx_CyFunction_weakreflist(m) != NULL)
        PyObject_ClearWeakRefs((PyObject *) m);
    __Pyx_CyFunction_clear(m);
    PyObject_GC_Del(m);
}
static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m)
{
    PyObject_GC_UnTrack(m);
    __Pyx__CyFunction_dealloc(m);
}
static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg)
{
    Py_VISIT(m->func_closure);
    Py_VISIT(m->func.m_module);
    Py_VISIT(m->func_dict);
    Py_VISIT(m->func_name);
    Py_VISIT(m->func_qualname);
    Py_VISIT(m->func_doc);
    Py_VISIT(m->func_globals);
    Py_VISIT(m->func_code);
    Py_VISIT(m->func_classobj);
    Py_VISIT(m->defaults_tuple);
    Py_VISIT(m->defaults_kwdict);
    if (m->defaults) {
        PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m);
        int i;
        for (i = 0; i < m->defaults_pyobjects; i++)
            Py_VISIT(pydefaults[i]);
    }
    return 0;
}
static PyObject *__Pyx_CyFunction_descr_get(PyObject *func, PyObject *obj, PyObject *type)
{
    __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func;
    if (m->flags & __Pyx_CYFUNCTION_STATICMETHOD) {
        Py_INCREF(func);
        return func;
    }
    if (m->flags & __Pyx_CYFUNCTION_CLASSMETHOD) {
        if (type == NULL)
            type = (PyObject *)(Py_TYPE(obj));
        return __Pyx_PyMethod_New(func, type, (PyObject *)(Py_TYPE(type)));
    }
    if (obj == Py_None)
        obj = NULL;
    return __Pyx_PyMethod_New(func, obj, type);
}
static PyObject*
__Pyx_CyFunction_repr(__pyx_CyFunctionObject *op)
{
#if PY_MAJOR_VERSION >= 3
    return PyUnicode_FromFormat("<cyfunction %U at %p>",
                                op->func_qualname, (void *)op);
#else
    return PyString_FromFormat("<cyfunction %s at %p>",
                               PyString_AsString(op->func_qualname), (void *)op);
#endif
}
static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) {
    PyCFunctionObject* f = (PyCFunctionObject*)func;
    PyCFunction meth = f->m_ml->ml_meth;
    Py_ssize_t size;
    switch (f->m_ml->ml_flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) {
    case METH_VARARGS:
        if (likely(kw == NULL || PyDict_Size(kw) == 0))
            return (*meth)(self, arg);
        break;
    case METH_VARARGS | METH_KEYWORDS:
        return (*(PyCFunctionWithKeywords)meth)(self, arg, kw);
    case METH_NOARGS:
        if (likely(kw == NULL || PyDict_Size(kw) == 0)) {
            size = PyTuple_GET_SIZE(arg);
            if (likely(size == 0))
                return (*meth)(self, NULL);
            PyErr_Format(PyExc_TypeError,
                "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)",
                f->m_ml->ml_name, size);
            return NULL;
        }
        break;
    case METH_O:
        if (likely(kw == NULL || PyDict_Size(kw) == 0)) {
            size = PyTuple_GET_SIZE(arg);
            if (likely(size == 1)) {
                PyObject *result, *arg0;
                #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
                arg0 = PyTuple_GET_ITEM(arg, 0);
                #else
                arg0 = PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL;
                #endif
                result = (*meth)(self, arg0);
                #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS)
                Py_DECREF(arg0);
                #endif
                return result;
            }
            PyErr_Format(PyExc_TypeError,
                "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)",
                f->m_ml->ml_name, size);
            return NULL;
        }
        break;
    default:
        PyErr_SetString(PyExc_SystemError, "Bad call flags in "
                        "__Pyx_CyFunction_Call. METH_OLDARGS is no "
                        "longer supported!");
        return NULL;
    }
    PyErr_Format(PyExc_TypeError, "%.200s() takes no keyword arguments",
                 f->m_ml->ml_name);
    return NULL;
}
static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) {
    return __Pyx_CyFunction_CallMethod(func, ((PyCFunctionObject*)func)->m_self, arg, kw);
}
static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) {
    PyObject *result;
    __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *) func;
    if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) {
        Py_ssize_t argc;
        PyObject *new_args;
        PyObject *self;
        argc = PyTuple_GET_SIZE(args);
        new_args = PyTuple_GetSlice(args, 1, argc);
        if (unlikely(!new_args))
            return NULL;
        self = PyTuple_GetItem(args, 0);
        if (unlikely(!self)) {
            Py_DECREF(new_args);
            return NULL;
        }
        result = __Pyx_CyFunction_CallMethod(func, self, new_args, kw);
        Py_DECREF(new_args);
    } else {
        result = __Pyx_CyFunction_Call(func, args, kw);
    }
    return result;
}
static PyTypeObject __pyx_CyFunctionType_type = {
    PyVarObject_HEAD_INIT(0, 0)
    "cython_function_or_method",
    sizeof(__pyx_CyFunctionObject),
    0,
    (destructor) __Pyx_CyFunction_dealloc,
    0,
    0,
    0,
#if PY_MAJOR_VERSION < 3
    0,
#else
    0,
#endif
    (reprfunc) __Pyx_CyFunction_repr,
    0,
    0,
    0,
    0,
    __Pyx_CyFunction_CallAsMethod,
    0,
    0,
    0,
    0,
    Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC,
    0,
    (traverseproc) __Pyx_CyFunction_traverse,
    (inquiry) __Pyx_CyFunction_clear,
    0,
#if PY_VERSION_HEX < 0x030500A0
    offsetof(__pyx_CyFunctionObject, func_weakreflist),
#else
    offsetof(PyCFunctionObject, m_weakreflist),
#endif
    0,
    0,
    __pyx_CyFunction_methods,
    __pyx_CyFunction_members,
    __pyx_CyFunction_getsets,
    0,
    0,
    __Pyx_CyFunction_descr_get,
    0,
    offsetof(__pyx_CyFunctionObject, func_dict),
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
#if PY_VERSION_HEX >= 0x030400a1
    0,
#endif
};
static int __pyx_CyFunction_init(void) {
    __pyx_CyFunctionType = __Pyx_FetchCommonType(&__pyx_CyFunctionType_type);
    if (unlikely(__pyx_CyFunctionType == NULL)) {
        return -1;
    }
    return 0;
}
static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *func, size_t size, int pyobjects) {
    __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func;
    m->defaults = PyObject_Malloc(size);
    if (unlikely(!m->defaults))
        return PyErr_NoMemory();
    memset(m->defaults, 0, size);
    m->defaults_pyobjects = pyobjects;
    return m->defaults;
}
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *func, PyObject *tuple) {
    __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func;
    m->defaults_tuple = tuple;
    Py_INCREF(tuple);
}
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *func, PyObject *dict) {
    __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func;
    m->defaults_kwdict = dict;
    Py_INCREF(dict);
}
static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *func, PyObject *dict) {
    __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func;
    m->func_annotations = dict;
    Py_INCREF(dict);
}

/* GetAttr */
          static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) {
#if CYTHON_USE_TYPE_SLOTS
#if PY_MAJOR_VERSION >= 3
    if (likely(PyUnicode_Check(n)))
#else
    if (likely(PyString_Check(n)))
#endif
        return __Pyx_PyObject_GetAttrStr(o, n);
#endif
    return PyObject_GetAttr(o, n);
}

/* HasAttr */
          static CYTHON_INLINE int __Pyx_HasAttr(PyObject *o, PyObject *n) {
    PyObject *r;
    if (unlikely(!__Pyx_PyBaseString_Check(n))) {
        PyErr_SetString(PyExc_TypeError,
                        "hasattr(): attribute name must be string");
        return -1;
    }
    r = __Pyx_GetAttr(o, n);
    if (unlikely(!r)) {
        PyErr_Clear();
        return 0;
    } else {
        Py_DECREF(r);
        return 1;
    }
}

/* SliceObject */
          static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(PyObject* obj,
        Py_ssize_t cstart, Py_ssize_t cstop,
        PyObject** _py_start, PyObject** _py_stop, PyObject** _py_slice,
        int has_cstart, int has_cstop, CYTHON_UNUSED int wraparound) {
#if CYTHON_USE_TYPE_SLOTS
    PyMappingMethods* mp;
#if PY_MAJOR_VERSION < 3
    PySequenceMethods* ms = Py_TYPE(obj)->tp_as_sequence;
    if (likely(ms && ms->sq_slice)) {
        if (!has_cstart) {
            if (_py_start && (*_py_start != Py_None)) {
                cstart = __Pyx_PyIndex_AsSsize_t(*_py_start);
                if ((cstart == (Py_ssize_t)-1) && PyErr_Occurred()) goto bad;
            } else
                cstart = 0;
        }
        if (!has_cstop) {
            if (_py_stop && (*_py_stop != Py_None)) {
                cstop = __Pyx_PyIndex_AsSsize_t(*_py_stop);
                if ((cstop == (Py_ssize_t)-1) && PyErr_Occurred()) goto bad;
            } else
                cstop = PY_SSIZE_T_MAX;
        }
        if (wraparound && unlikely((cstart < 0) | (cstop < 0)) && likely(ms->sq_length)) {
            Py_ssize_t l = ms->sq_length(obj);
            if (likely(l >= 0)) {
                if (cstop < 0) {
                    cstop += l;
                    if (cstop < 0) cstop = 0;
                }
                if (cstart < 0) {
                    cstart += l;
                    if (cstart < 0) cstart = 0;
                }
            } else {
                if (!PyErr_ExceptionMatches(PyExc_OverflowError))
                    goto bad;
                PyErr_Clear();
            }
        }
        return ms->sq_slice(obj, cstart, cstop);
    }
#endif
    mp = Py_TYPE(obj)->tp_as_mapping;
    if (likely(mp && mp->mp_subscript))
#endif
    {
        PyObject* result;
        PyObject *py_slice, *py_start, *py_stop;
        if (_py_slice) {
            py_slice = *_py_slice;
        } else {
            PyObject* owned_start = NULL;
            PyObject* owned_stop = NULL;
            if (_py_start) {
                py_start = *_py_start;
            } else {
                if (has_cstart) {
                    owned_start = py_start = PyInt_FromSsize_t(cstart);
                    if (unlikely(!py_start)) goto bad;
                } else
                    py_start = Py_None;
            }
            if (_py_stop) {
                py_stop = *_py_stop;
            } else {
                if (has_cstop) {
                    owned_stop = py_stop = PyInt_FromSsize_t(cstop);
                    if (unlikely(!py_stop)) {
                        Py_XDECREF(owned_start);
                        goto bad;
                    }
                } else
                    py_stop = Py_None;
            }
            py_slice = PySlice_New(py_start, py_stop, Py_None);
            Py_XDECREF(owned_start);
            Py_XDECREF(owned_stop);
            if (unlikely(!py_slice)) goto bad;
        }
#if CYTHON_USE_TYPE_SLOTS
        result = mp->mp_subscript(obj, py_slice);
#else
        result = PyObject_GetItem(obj, py_slice);
#endif
        if (!_py_slice) {
            Py_DECREF(py_slice);
        }
        return result;
    }
    PyErr_Format(PyExc_TypeError,
        "'%.200s' object is unsliceable", Py_TYPE(obj)->tp_name);
bad:
    return NULL;
}

/* GetItemInt */
          static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {
    PyObject *r;
    if (!j) return NULL;
    r = PyObject_GetItem(o, j);
    Py_DECREF(j);
    return r;
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
                                                              CYTHON_NCP_UNUSED int wraparound,
                                                              CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    Py_ssize_t wrapped_i = i;
    if (wraparound & unlikely(i < 0)) {
        wrapped_i += PyList_GET_SIZE(o);
    }
    if ((!boundscheck) || likely((0 <= wrapped_i) & (wrapped_i < PyList_GET_SIZE(o)))) {
        PyObject *r = PyList_GET_ITEM(o, wrapped_i);
        Py_INCREF(r);
        return r;
    }
    return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
#else
    return PySequence_GetItem(o, i);
#endif
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
                                                              CYTHON_NCP_UNUSED int wraparound,
                                                              CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    Py_ssize_t wrapped_i = i;
    if (wraparound & unlikely(i < 0)) {
        wrapped_i += PyTuple_GET_SIZE(o);
    }
    if ((!boundscheck) || likely((0 <= wrapped_i) & (wrapped_i < PyTuple_GET_SIZE(o)))) {
        PyObject *r = PyTuple_GET_ITEM(o, wrapped_i);
        Py_INCREF(r);
        return r;
    }
    return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
#else
    return PySequence_GetItem(o, i);
#endif
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list,
                                                     CYTHON_NCP_UNUSED int wraparound,
                                                     CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS
    if (is_list || PyList_CheckExact(o)) {
        Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyList_GET_SIZE(o);
        if ((!boundscheck) || (likely((n >= 0) & (n < PyList_GET_SIZE(o))))) {
            PyObject *r = PyList_GET_ITEM(o, n);
            Py_INCREF(r);
            return r;
        }
    }
    else if (PyTuple_CheckExact(o)) {
        Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyTuple_GET_SIZE(o);
        if ((!boundscheck) || likely((n >= 0) & (n < PyTuple_GET_SIZE(o)))) {
            PyObject *r = PyTuple_GET_ITEM(o, n);
            Py_INCREF(r);
            return r;
        }
    } else {
        PySequenceMethods *m = Py_TYPE(o)->tp_as_sequence;
        if (likely(m && m->sq_item)) {
            if (wraparound && unlikely(i < 0) && likely(m->sq_length)) {
                Py_ssize_t l = m->sq_length(o);
                if (likely(l >= 0)) {
                    i += l;
                } else {
                    if (!PyErr_ExceptionMatches(PyExc_OverflowError))
                        return NULL;
                    PyErr_Clear();
                }
            }
            return m->sq_item(o, i);
        }
    }
#else
    if (is_list || PySequence_Check(o)) {
        return PySequence_GetItem(o, i);
    }
#endif
    return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
}

/* BytesEquals */
          static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) {
#if CYTHON_COMPILING_IN_PYPY
    return PyObject_RichCompareBool(s1, s2, equals);
#else
    if (s1 == s2) {
        return (equals == Py_EQ);
    } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) {
        const char *ps1, *ps2;
        Py_ssize_t length = PyBytes_GET_SIZE(s1);
        if (length != PyBytes_GET_SIZE(s2))
            return (equals == Py_NE);
        ps1 = PyBytes_AS_STRING(s1);
        ps2 = PyBytes_AS_STRING(s2);
        if (ps1[0] != ps2[0]) {
            return (equals == Py_NE);
        } else if (length == 1) {
            return (equals == Py_EQ);
        } else {
            int result;
#if CYTHON_USE_UNICODE_INTERNALS
            Py_hash_t hash1, hash2;
            hash1 = ((PyBytesObject*)s1)->ob_shash;
            hash2 = ((PyBytesObject*)s2)->ob_shash;
            if (hash1 != hash2 && hash1 != -1 && hash2 != -1) {
                return (equals == Py_NE);
            }
#endif
            result = memcmp(ps1, ps2, (size_t)length);
            return (equals == Py_EQ) ? (result == 0) : (result != 0);
        }
    } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) {
        return (equals == Py_NE);
    } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) {
        return (equals == Py_NE);
    } else {
        int result;
        PyObject* py_result = PyObject_RichCompare(s1, s2, equals);
        if (!py_result)
            return -1;
        result = __Pyx_PyObject_IsTrue(py_result);
        Py_DECREF(py_result);
        return result;
    }
#endif
}

/* UnicodeEquals */
          static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) {
#if CYTHON_COMPILING_IN_PYPY
    return PyObject_RichCompareBool(s1, s2, equals);
#else
#if PY_MAJOR_VERSION < 3
    PyObject* owned_ref = NULL;
#endif
    int s1_is_unicode, s2_is_unicode;
    if (s1 == s2) {
        goto return_eq;
    }
    s1_is_unicode = PyUnicode_CheckExact(s1);
    s2_is_unicode = PyUnicode_CheckExact(s2);
#if PY_MAJOR_VERSION < 3
    if ((s1_is_unicode & (!s2_is_unicode)) && PyString_CheckExact(s2)) {
        owned_ref = PyUnicode_FromObject(s2);
        if (unlikely(!owned_ref))
            return -1;
        s2 = owned_ref;
        s2_is_unicode = 1;
    } else if ((s2_is_unicode & (!s1_is_unicode)) && PyString_CheckExact(s1)) {
        owned_ref = PyUnicode_FromObject(s1);
        if (unlikely(!owned_ref))
            return -1;
        s1 = owned_ref;
        s1_is_unicode = 1;
    } else if (((!s2_is_unicode) & (!s1_is_unicode))) {
        return __Pyx_PyBytes_Equals(s1, s2, equals);
    }
#endif
    if (s1_is_unicode & s2_is_unicode) {
        Py_ssize_t length;
        int kind;
        void *data1, *data2;
        if (unlikely(__Pyx_PyUnicode_READY(s1) < 0) || unlikely(__Pyx_PyUnicode_READY(s2) < 0))
            return -1;
        length = __Pyx_PyUnicode_GET_LENGTH(s1);
        if (length != __Pyx_PyUnicode_GET_LENGTH(s2)) {
            goto return_ne;
        }
#if CYTHON_USE_UNICODE_INTERNALS
        {
            Py_hash_t hash1, hash2;
        #if CYTHON_PEP393_ENABLED
            hash1 = ((PyASCIIObject*)s1)->hash;
            hash2 = ((PyASCIIObject*)s2)->hash;
        #else
            hash1 = ((PyUnicodeObject*)s1)->hash;
            hash2 = ((PyUnicodeObject*)s2)->hash;
        #endif
            if (hash1 != hash2 && hash1 != -1 && hash2 != -1) {
                goto return_ne;
            }
        }
#endif
        kind = __Pyx_PyUnicode_KIND(s1);
        if (kind != __Pyx_PyUnicode_KIND(s2)) {
            goto return_ne;
        }
        data1 = __Pyx_PyUnicode_DATA(s1);
        data2 = __Pyx_PyUnicode_DATA(s2);
        if (__Pyx_PyUnicode_READ(kind, data1, 0) != __Pyx_PyUnicode_READ(kind, data2, 0)) {
            goto return_ne;
        } else if (length == 1) {
            goto return_eq;
        } else {
            int result = memcmp(data1, data2, (size_t)(length * kind));
            #if PY_MAJOR_VERSION < 3
            Py_XDECREF(owned_ref);
            #endif
            return (equals == Py_EQ) ? (result == 0) : (result != 0);
        }
    } else if ((s1 == Py_None) & s2_is_unicode) {
        goto return_ne;
    } else if ((s2 == Py_None) & s1_is_unicode) {
        goto return_ne;
    } else {
        int result;
        PyObject* py_result = PyObject_RichCompare(s1, s2, equals);
        #if PY_MAJOR_VERSION < 3
        Py_XDECREF(owned_ref);
        #endif
        if (!py_result)
            return -1;
        result = __Pyx_PyObject_IsTrue(py_result);
        Py_DECREF(py_result);
        return result;
    }
return_eq:
    #if PY_MAJOR_VERSION < 3
    Py_XDECREF(owned_ref);
    #endif
    return (equals == Py_EQ);
return_ne:
    #if PY_MAJOR_VERSION < 3
    Py_XDECREF(owned_ref);
    #endif
    return (equals == Py_NE);
#endif
}

/* ObjectGetItem */
          #if CYTHON_USE_TYPE_SLOTS
static PyObject *__Pyx_PyObject_GetIndex(PyObject *obj, PyObject* index) {
    PyObject *runerr;
    Py_ssize_t key_value;
    PySequenceMethods *m = Py_TYPE(obj)->tp_as_sequence;
    if (unlikely(!(m && m->sq_item))) {
        PyErr_Format(PyExc_TypeError, "'%.200s' object is not subscriptable", Py_TYPE(obj)->tp_name);
        return NULL;
    }
    key_value = __Pyx_PyIndex_AsSsize_t(index);
    if (likely(key_value != -1 || !(runerr = PyErr_Occurred()))) {
        return __Pyx_GetItemInt_Fast(obj, key_value, 0, 1, 1);
    }
    if (PyErr_GivenExceptionMatches(runerr, PyExc_OverflowError)) {
        PyErr_Clear();
        PyErr_Format(PyExc_IndexError, "cannot fit '%.200s' into an index-sized integer", Py_TYPE(index)->tp_name);
    }
    return NULL;
}
static PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key) {
    PyMappingMethods *m = Py_TYPE(obj)->tp_as_mapping;
    if (likely(m && m->mp_subscript)) {
        return m->mp_subscript(obj, key);
    }
    return __Pyx_PyObject_GetIndex(obj, key);
}
#endif

/* SaveResetException */
          #if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
    #if PY_VERSION_HEX >= 0x030700A3
    *type = tstate->exc_state.exc_type;
    *value = tstate->exc_state.exc_value;
    *tb = tstate->exc_state.exc_traceback;
    #else
    *type = tstate->exc_type;
    *value = tstate->exc_value;
    *tb = tstate->exc_traceback;
    #endif
    Py_XINCREF(*type);
    Py_XINCREF(*value);
    Py_XINCREF(*tb);
}
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    #if PY_VERSION_HEX >= 0x030700A3
    tmp_type = tstate->exc_state.exc_type;
    tmp_value = tstate->exc_state.exc_value;
    tmp_tb = tstate->exc_state.exc_traceback;
    tstate->exc_state.exc_type = type;
    tstate->exc_state.exc_value = value;
    tstate->exc_state.exc_traceback = tb;
    #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = type;
    tstate->exc_value = value;
    tstate->exc_traceback = tb;
    #endif
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
}
#endif

/* PyErrExceptionMatches */
          #if CYTHON_FAST_THREAD_STATE
static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
    Py_ssize_t i, n;
    n = PyTuple_GET_SIZE(tuple);
#if PY_MAJOR_VERSION >= 3
    for (i=0; i<n; i++) {
        if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1;
    }
#endif
    for (i=0; i<n; i++) {
        if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1;
    }
    return 0;
}
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) {
    PyObject *exc_type = tstate->curexc_type;
    if (exc_type == err) return 1;
    if (unlikely(!exc_type)) return 0;
    if (unlikely(PyTuple_Check(err)))
        return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err);
    return __Pyx_PyErr_GivenExceptionMatches(exc_type, err);
}
#endif

/* GetException */
          #if CYTHON_FAST_THREAD_STATE
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) {
#endif
    PyObject *local_type, *local_value, *local_tb;
#if CYTHON_FAST_THREAD_STATE
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    local_type = tstate->curexc_type;
    local_value = tstate->curexc_value;
    local_tb = tstate->curexc_traceback;
    tstate->curexc_type = 0;
    tstate->curexc_value = 0;
    tstate->curexc_traceback = 0;
#else
    PyErr_Fetch(&local_type, &local_value, &local_tb);
#endif
    PyErr_NormalizeException(&local_type, &local_value, &local_tb);
#if CYTHON_FAST_THREAD_STATE
    if (unlikely(tstate->curexc_type))
#else
    if (unlikely(PyErr_Occurred()))
#endif
        goto bad;
    #if PY_MAJOR_VERSION >= 3
    if (local_tb) {
        if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0))
            goto bad;
    }
    #endif
    Py_XINCREF(local_tb);
    Py_XINCREF(local_type);
    Py_XINCREF(local_value);
    *type = local_type;
    *value = local_value;
    *tb = local_tb;
#if CYTHON_FAST_THREAD_STATE
    #if PY_VERSION_HEX >= 0x030700A3
    tmp_type = tstate->exc_state.exc_type;
    tmp_value = tstate->exc_state.exc_value;
    tmp_tb = tstate->exc_state.exc_traceback;
    tstate->exc_state.exc_type = local_type;
    tstate->exc_state.exc_value = local_value;
    tstate->exc_state.exc_traceback = local_tb;
    #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = local_type;
    tstate->exc_value = local_value;
    tstate->exc_traceback = local_tb;
    #endif
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
#else
    PyErr_SetExcInfo(local_type, local_value, local_tb);
#endif
    return 0;
bad:
    *type = 0;
    *value = 0;
    *tb = 0;
    Py_XDECREF(local_type);
    Py_XDECREF(local_value);
    Py_XDECREF(local_tb);
    return -1;
}

/* None */
            static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname) {
    PyErr_Format(PyExc_UnboundLocalError, "local variable '%s' referenced before assignment", varname);
}

/* PyErrFetchRestore */
            #if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    tmp_type = tstate->curexc_type;
    tmp_value = tstate->curexc_value;
    tmp_tb = tstate->curexc_traceback;
    tstate->curexc_type = type;
    tstate->curexc_value = value;
    tstate->curexc_traceback = tb;
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
}
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
    *type = tstate->curexc_type;
    *value = tstate->curexc_value;
    *tb = tstate->curexc_traceback;
    tstate->curexc_type = 0;
    tstate->curexc_value = 0;
    tstate->curexc_traceback = 0;
}
#endif

/* RaiseTooManyValuesToUnpack */
            static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) {
    PyErr_Format(PyExc_ValueError,
                 "too many values to unpack (expected %" CYTHON_FORMAT_SSIZE_T "d)", expected);
}

/* RaiseNeedMoreValuesToUnpack */
            static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {
    PyErr_Format(PyExc_ValueError,
                 "need more than %" CYTHON_FORMAT_SSIZE_T "d value%.1s to unpack",
                 index, (index == 1) ? "" : "s");
}

/* IterFinish */
            static CYTHON_INLINE int __Pyx_IterFinish(void) {
#if CYTHON_FAST_THREAD_STATE
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    PyObject* exc_type = tstate->curexc_type;
    if (unlikely(exc_type)) {
        if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) {
            PyObject *exc_value, *exc_tb;
            exc_value = tstate->curexc_value;
            exc_tb = tstate->curexc_traceback;
            tstate->curexc_type = 0;
            tstate->curexc_value = 0;
            tstate->curexc_traceback = 0;
            Py_DECREF(exc_type);
            Py_XDECREF(exc_value);
            Py_XDECREF(exc_tb);
            return 0;
        } else {
            return -1;
        }
    }
    return 0;
#else
    if (unlikely(PyErr_Occurred())) {
        if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) {
            PyErr_Clear();
            return 0;
        } else {
            return -1;
        }
    }
    return 0;
#endif
}

/* UnpackItemEndCheck */
            static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) {
    if (unlikely(retval)) {
        Py_DECREF(retval);
        __Pyx_RaiseTooManyValuesError(expected);
        return -1;
    } else {
        return __Pyx_IterFinish();
    }
    return 0;
}

/* SwapException */
            #if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    #if PY_VERSION_HEX >= 0x030700A3
    tmp_type = tstate->exc_state.exc_type;
    tmp_value = tstate->exc_state.exc_value;
    tmp_tb = tstate->exc_state.exc_traceback;
    tstate->exc_state.exc_type = *type;
    tstate->exc_state.exc_value = *value;
    tstate->exc_state.exc_traceback = *tb;
    #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = *type;
    tstate->exc_value = *value;
    tstate->exc_traceback = *tb;
    #endif
    *type = tmp_type;
    *value = tmp_value;
    *tb = tmp_tb;
}
#else
static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    PyErr_GetExcInfo(&tmp_type, &tmp_value, &tmp_tb);
    PyErr_SetExcInfo(*type, *value, *tb);
    *type = tmp_type;
    *value = tmp_value;
    *tb = tmp_tb;
}
#endif

/* PyIntBinop */
            #if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_EqObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED int inplace) {
    if (op1 == op2) {
        Py_RETURN_TRUE;
    }
    #if PY_MAJOR_VERSION < 3
    if (likely(PyInt_CheckExact(op1))) {
        const long b = intval;
        long a = PyInt_AS_LONG(op1);
        if (a == b) {
            Py_RETURN_TRUE;
        } else {
            Py_RETURN_FALSE;
        }
    }
    #endif
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(PyLong_CheckExact(op1))) {
        const long b = intval;
        long a;
        const digit* digits = ((PyLongObject*)op1)->ob_digit;
        const Py_ssize_t size = Py_SIZE(op1);
        if (likely(__Pyx_sst_abs(size) <= 1)) {
            a = likely(size) ? digits[0] : 0;
            if (size == -1) a = -a;
        } else {
            switch (size) {
                case -2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
                    }
                    CYTHON_FALLTHROUGH;
                case 2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
                    }
                    CYTHON_FALLTHROUGH;
                case -3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
                    }
                    CYTHON_FALLTHROUGH;
                case 3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
                    }
                    CYTHON_FALLTHROUGH;
                case -4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
                    }
                    CYTHON_FALLTHROUGH;
                case 4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
                    }
                    CYTHON_FALLTHROUGH;
                #if PyLong_SHIFT < 30 && PyLong_SHIFT != 15
                default: return PyLong_Type.tp_richcompare(op1, op2, Py_EQ);
                #else
                default: Py_RETURN_FALSE;
                #endif
            }
        }
            if (a == b) {
                Py_RETURN_TRUE;
            } else {
                Py_RETURN_FALSE;
            }
    }
    #endif
    if (PyFloat_CheckExact(op1)) {
        const long b = intval;
        double a = PyFloat_AS_DOUBLE(op1);
            if ((double)a == (double)b) {
                Py_RETURN_TRUE;
            } else {
                Py_RETURN_FALSE;
            }
    }
    return PyObject_RichCompare(op1, op2, Py_EQ);
}
#endif

/* PyIntBinop */
            #if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED int inplace) {
    #if PY_MAJOR_VERSION < 3
    if (likely(PyInt_CheckExact(op1))) {
        const long b = intval;
        long x;
        long a = PyInt_AS_LONG(op1);
            x = (long)((unsigned long)a - b);
            if (likely((x^a) >= 0 || (x^~b) >= 0))
                return PyInt_FromLong(x);
            return PyLong_Type.tp_as_number->nb_subtract(op1, op2);
    }
    #endif
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(PyLong_CheckExact(op1))) {
        const long b = intval;
        long a, x;
#ifdef HAVE_LONG_LONG
        const PY_LONG_LONG llb = intval;
        PY_LONG_LONG lla, llx;
#endif
        const digit* digits = ((PyLongObject*)op1)->ob_digit;
        const Py_ssize_t size = Py_SIZE(op1);
        if (likely(__Pyx_sst_abs(size) <= 1)) {
            a = likely(size) ? digits[0] : 0;
            if (size == -1) a = -a;
        } else {
            switch (size) {
                case -2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case -3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case -4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                default: return PyLong_Type.tp_as_number->nb_subtract(op1, op2);
            }
        }
                x = a - b;
            return PyLong_FromLong(x);
#ifdef HAVE_LONG_LONG
        long_long:
                llx = lla - llb;
            return PyLong_FromLongLong(llx);
#endif
        
        
    }
    #endif
    if (PyFloat_CheckExact(op1)) {
        const long b = intval;
        double a = PyFloat_AS_DOUBLE(op1);
            double result;
            PyFPE_START_PROTECT("subtract", return NULL)
            result = ((double)a) - (double)b;
            PyFPE_END_PROTECT(result)
            return PyFloat_FromDouble(result);
    }
    return (inplace ? PyNumber_InPlaceSubtract : PyNumber_Subtract)(op1, op2);
}
#endif

/* PyIntBinop */
            #if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED int inplace) {
    #if PY_MAJOR_VERSION < 3
    if (likely(PyInt_CheckExact(op1))) {
        const long b = intval;
        long x;
        long a = PyInt_AS_LONG(op1);
            x = (long)((unsigned long)a + b);
            if (likely((x^a) >= 0 || (x^b) >= 0))
                return PyInt_FromLong(x);
            return PyLong_Type.tp_as_number->nb_add(op1, op2);
    }
    #endif
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(PyLong_CheckExact(op1))) {
        const long b = intval;
        long a, x;
#ifdef HAVE_LONG_LONG
        const PY_LONG_LONG llb = intval;
        PY_LONG_LONG lla, llx;
#endif
        const digit* digits = ((PyLongObject*)op1)->ob_digit;
        const Py_ssize_t size = Py_SIZE(op1);
        if (likely(__Pyx_sst_abs(size) <= 1)) {
            a = likely(size) ? digits[0] : 0;
            if (size == -1) a = -a;
        } else {
            switch (size) {
                case -2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case -3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case -4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                default: return PyLong_Type.tp_as_number->nb_add(op1, op2);
            }
        }
                x = a + b;
            return PyLong_FromLong(x);
#ifdef HAVE_LONG_LONG
        long_long:
                llx = lla + llb;
            return PyLong_FromLongLong(llx);
#endif
        
        
    }
    #endif
    if (PyFloat_CheckExact(op1)) {
        const long b = intval;
        double a = PyFloat_AS_DOUBLE(op1);
            double result;
            PyFPE_START_PROTECT("add", return NULL)
            result = ((double)a) + (double)b;
            PyFPE_END_PROTECT(result)
            return PyFloat_FromDouble(result);
    }
    return (inplace ? PyNumber_InPlaceAdd : PyNumber_Add)(op1, op2);
}
#endif

/* PyIntBinop */
            #if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_RemainderObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED int inplace) {
    #if PY_MAJOR_VERSION < 3
    if (likely(PyInt_CheckExact(op1))) {
        const long b = intval;
        long x;
        long a = PyInt_AS_LONG(op1);
            x = a % b;
            x += ((x != 0) & ((x ^ b) < 0)) * b;
            return PyInt_FromLong(x);
    }
    #endif
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(PyLong_CheckExact(op1))) {
        const long b = intval;
        long a, x;
#ifdef HAVE_LONG_LONG
        const PY_LONG_LONG llb = intval;
        PY_LONG_LONG lla, llx;
#endif
        const digit* digits = ((PyLongObject*)op1)->ob_digit;
        const Py_ssize_t size = Py_SIZE(op1);
        if (likely(__Pyx_sst_abs(size) <= 1)) {
            a = likely(size) ? digits[0] : 0;
            if (size == -1) a = -a;
        } else {
            switch (size) {
                case -2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case -3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case -4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                default: return PyLong_Type.tp_as_number->nb_remainder(op1, op2);
            }
        }
                x = a % b;
                x += ((x != 0) & ((x ^ b) < 0)) * b;
            return PyLong_FromLong(x);
#ifdef HAVE_LONG_LONG
        long_long:
                llx = lla % llb;
                llx += ((llx != 0) & ((llx ^ llb) < 0)) * llb;
            return PyLong_FromLongLong(llx);
#endif
        
        
    }
    #endif
    return (inplace ? PyNumber_InPlaceRemainder : PyNumber_Remainder)(op1, op2);
}
#endif

/* Import */
            static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {
    PyObject *empty_list = 0;
    PyObject *module = 0;
    PyObject *global_dict = 0;
    PyObject *empty_dict = 0;
    PyObject *list;
    #if PY_MAJOR_VERSION < 3
    PyObject *py_import;
    py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import);
    if (!py_import)
        goto bad;
    #endif
    if (from_list)
        list = from_list;
    else {
        empty_list = PyList_New(0);
        if (!empty_list)
            goto bad;
        list = empty_list;
    }
    global_dict = PyModule_GetDict(__pyx_m);
    if (!global_dict)
        goto bad;
    empty_dict = PyDict_New();
    if (!empty_dict)
        goto bad;
    {
        #if PY_MAJOR_VERSION >= 3
        if (level == -1) {
            if (strchr(__Pyx_MODULE_NAME, '.')) {
                module = PyImport_ImportModuleLevelObject(
                    name, global_dict, empty_dict, list, 1);
                if (!module) {
                    if (!PyErr_ExceptionMatches(PyExc_ImportError))
                        goto bad;
                    PyErr_Clear();
                }
            }
            level = 0;
        }
        #endif
        if (!module) {
            #if PY_MAJOR_VERSION < 3
            PyObject *py_level = PyInt_FromLong(level);
            if (!py_level)
                goto bad;
            module = PyObject_CallFunctionObjArgs(py_import,
                name, global_dict, empty_dict, list, py_level, NULL);
            Py_DECREF(py_level);
            #else
            module = PyImport_ImportModuleLevelObject(
                name, global_dict, empty_dict, list, level);
            #endif
        }
    }
bad:
    #if PY_MAJOR_VERSION < 3
    Py_XDECREF(py_import);
    #endif
    Py_XDECREF(empty_list);
    Py_XDECREF(empty_dict);
    return module;
}

/* ImportFrom */
            static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) {
    PyObject* value = __Pyx_PyObject_GetAttrStr(module, name);
    if (unlikely(!value) && PyErr_ExceptionMatches(PyExc_AttributeError)) {
        PyErr_Format(PyExc_ImportError,
        #if PY_MAJOR_VERSION < 3
            "cannot import name %.230s", PyString_AS_STRING(name));
        #else
            "cannot import name %S", name);
        #endif
    }
    return value;
}

/* CalculateMetaclass */
            static PyObject *__Pyx_CalculateMetaclass(PyTypeObject *metaclass, PyObject *bases) {
    Py_ssize_t i, nbases = PyTuple_GET_SIZE(bases);
    for (i=0; i < nbases; i++) {
        PyTypeObject *tmptype;
        PyObject *tmp = PyTuple_GET_ITEM(bases, i);
        tmptype = Py_TYPE(tmp);
#if PY_MAJOR_VERSION < 3
        if (tmptype == &PyClass_Type)
            continue;
#endif
        if (!metaclass) {
            metaclass = tmptype;
            continue;
        }
        if (PyType_IsSubtype(metaclass, tmptype))
            continue;
        if (PyType_IsSubtype(tmptype, metaclass)) {
            metaclass = tmptype;
            continue;
        }
        PyErr_SetString(PyExc_TypeError,
                        "metaclass conflict: "
                        "the metaclass of a derived class "
                        "must be a (non-strict) subclass "
                        "of the metaclasses of all its bases");
        return NULL;
    }
    if (!metaclass) {
#if PY_MAJOR_VERSION < 3
        metaclass = &PyClass_Type;
#else
        metaclass = &PyType_Type;
#endif
    }
    Py_INCREF((PyObject*) metaclass);
    return (PyObject*) metaclass;
}

/* Py3ClassCreate */
            static PyObject *__Pyx_Py3MetaclassPrepare(PyObject *metaclass, PyObject *bases, PyObject *name,
                                           PyObject *qualname, PyObject *mkw, PyObject *modname, PyObject *doc) {
    PyObject *ns;
    if (metaclass) {
        PyObject *prep = __Pyx_PyObject_GetAttrStr(metaclass, __pyx_n_s_prepare);
        if (prep) {
            PyObject *pargs = PyTuple_Pack(2, name, bases);
            if (unlikely(!pargs)) {
                Py_DECREF(prep);
                return NULL;
            }
            ns = PyObject_Call(prep, pargs, mkw);
            Py_DECREF(prep);
            Py_DECREF(pargs);
        } else {
            if (unlikely(!PyErr_ExceptionMatches(PyExc_AttributeError)))
                return NULL;
            PyErr_Clear();
            ns = PyDict_New();
        }
    } else {
        ns = PyDict_New();
    }
    if (unlikely(!ns))
        return NULL;
    if (unlikely(PyObject_SetItem(ns, __pyx_n_s_module, modname) < 0)) goto bad;
    if (unlikely(PyObject_SetItem(ns, __pyx_n_s_qualname, qualname) < 0)) goto bad;
    if (unlikely(doc && PyObject_SetItem(ns, __pyx_n_s_doc, doc) < 0)) goto bad;
    return ns;
bad:
    Py_DECREF(ns);
    return NULL;
}
static PyObject *__Pyx_Py3ClassCreate(PyObject *metaclass, PyObject *name, PyObject *bases,
                                      PyObject *dict, PyObject *mkw,
                                      int calculate_metaclass, int allow_py2_metaclass) {
    PyObject *result, *margs;
    PyObject *owned_metaclass = NULL;
    if (allow_py2_metaclass) {
        owned_metaclass = PyObject_GetItem(dict, __pyx_n_s_metaclass);
        if (owned_metaclass) {
            metaclass = owned_metaclass;
        } else if (likely(PyErr_ExceptionMatches(PyExc_KeyError))) {
            PyErr_Clear();
        } else {
            return NULL;
        }
    }
    if (calculate_metaclass && (!metaclass || PyType_Check(metaclass))) {
        metaclass = __Pyx_CalculateMetaclass((PyTypeObject*) metaclass, bases);
        Py_XDECREF(owned_metaclass);
        if (unlikely(!metaclass))
            return NULL;
        owned_metaclass = metaclass;
    }
    margs = PyTuple_Pack(3, name, bases, dict);
    if (unlikely(!margs)) {
        result = NULL;
    } else {
        result = PyObject_Call(metaclass, margs, mkw);
        Py_DECREF(margs);
    }
    Py_XDECREF(owned_metaclass);
    return result;
}

/* CLineInTraceback */
            #ifndef CYTHON_CLINE_IN_TRACEBACK
static int __Pyx_CLineForTraceback(CYTHON_UNUSED PyThreadState *tstate, int c_line) {
    PyObject *use_cline;
    PyObject *ptype, *pvalue, *ptraceback;
#if CYTHON_COMPILING_IN_CPYTHON
    PyObject **cython_runtime_dict;
#endif
    if (unlikely(!__pyx_cython_runtime)) {
        return c_line;
    }
    __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
#if CYTHON_COMPILING_IN_CPYTHON
    cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime);
    if (likely(cython_runtime_dict)) {
      use_cline = __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback);
    } else
#endif
    {
      PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback);
      if (use_cline_obj) {
        use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True;
        Py_DECREF(use_cline_obj);
      } else {
        PyErr_Clear();
        use_cline = NULL;
      }
    }
    if (!use_cline) {
        c_line = 0;
        PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False);
    }
    else if (PyObject_Not(use_cline) != 0) {
        c_line = 0;
    }
    __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
    return c_line;
}
#endif

/* CodeObjectCache */
            static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {
    int start = 0, mid = 0, end = count - 1;
    if (end >= 0 && code_line > entries[end].code_line) {
        return count;
    }
    while (start < end) {
        mid = start + (end - start) / 2;
        if (code_line < entries[mid].code_line) {
            end = mid;
        } else if (code_line > entries[mid].code_line) {
             start = mid + 1;
        } else {
            return mid;
        }
    }
    if (code_line <= entries[mid].code_line) {
        return mid;
    } else {
        return mid + 1;
    }
}
static PyCodeObject *__pyx_find_code_object(int code_line) {
    PyCodeObject* code_object;
    int pos;
    if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) {
        return NULL;
    }
    pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
    if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) {
        return NULL;
    }
    code_object = __pyx_code_cache.entries[pos].code_object;
    Py_INCREF(code_object);
    return code_object;
}
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
    int pos, i;
    __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries;
    if (unlikely(!code_line)) {
        return;
    }
    if (unlikely(!entries)) {
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry));
        if (likely(entries)) {
            __pyx_code_cache.entries = entries;
            __pyx_code_cache.max_count = 64;
            __pyx_code_cache.count = 1;
            entries[0].code_line = code_line;
            entries[0].code_object = code_object;
            Py_INCREF(code_object);
        }
        return;
    }
    pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
    if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) {
        PyCodeObject* tmp = entries[pos].code_object;
        entries[pos].code_object = code_object;
        Py_DECREF(tmp);
        return;
    }
    if (__pyx_code_cache.count == __pyx_code_cache.max_count) {
        int new_max = __pyx_code_cache.max_count + 64;
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc(
            __pyx_code_cache.entries, (size_t)new_max*sizeof(__Pyx_CodeObjectCacheEntry));
        if (unlikely(!entries)) {
            return;
        }
        __pyx_code_cache.entries = entries;
        __pyx_code_cache.max_count = new_max;
    }
    for (i=__pyx_code_cache.count; i>pos; i--) {
        entries[i] = entries[i-1];
    }
    entries[pos].code_line = code_line;
    entries[pos].code_object = code_object;
    __pyx_code_cache.count++;
    Py_INCREF(code_object);
}

/* AddTraceback */
            #include "compile.h"
#include "frameobject.h"
#include "traceback.h"
static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(
            const char *funcname, int c_line,
            int py_line, const char *filename) {
    PyCodeObject *py_code = 0;
    PyObject *py_srcfile = 0;
    PyObject *py_funcname = 0;
    #if PY_MAJOR_VERSION < 3
    py_srcfile = PyString_FromString(filename);
    #else
    py_srcfile = PyUnicode_FromString(filename);
    #endif
    if (!py_srcfile) goto bad;
    if (c_line) {
        #if PY_MAJOR_VERSION < 3
        py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
        #else
        py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
        #endif
    }
    else {
        #if PY_MAJOR_VERSION < 3
        py_funcname = PyString_FromString(funcname);
        #else
        py_funcname = PyUnicode_FromString(funcname);
        #endif
    }
    if (!py_funcname) goto bad;
    py_code = __Pyx_PyCode_New(
        0,
        0,
        0,
        0,
        0,
        __pyx_empty_bytes, /*PyObject *code,*/
        __pyx_empty_tuple, /*PyObject *consts,*/
        __pyx_empty_tuple, /*PyObject *names,*/
        __pyx_empty_tuple, /*PyObject *varnames,*/
        __pyx_empty_tuple, /*PyObject *freevars,*/
        __pyx_empty_tuple, /*PyObject *cellvars,*/
        py_srcfile,   /*PyObject *filename,*/
        py_funcname,  /*PyObject *name,*/
        py_line,
        __pyx_empty_bytes  /*PyObject *lnotab*/
    );
    Py_DECREF(py_srcfile);
    Py_DECREF(py_funcname);
    return py_code;
bad:
    Py_XDECREF(py_srcfile);
    Py_XDECREF(py_funcname);
    return NULL;
}
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename) {
    PyCodeObject *py_code = 0;
    PyFrameObject *py_frame = 0;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    if (c_line) {
        c_line = __Pyx_CLineForTraceback(tstate, c_line);
    }
    py_code = __pyx_find_code_object(c_line ? -c_line : py_line);
    if (!py_code) {
        py_code = __Pyx_CreateCodeObjectForTraceback(
            funcname, c_line, py_line, filename);
        if (!py_code) goto bad;
        __pyx_insert_code_object(c_line ? -c_line : py_line, py_code);
    }
    py_frame = PyFrame_New(
        tstate,            /*PyThreadState *tstate,*/
        py_code,           /*PyCodeObject *code,*/
        __pyx_d,    /*PyObject *globals,*/
        0                  /*PyObject *locals*/
    );
    if (!py_frame) goto bad;
    __Pyx_PyFrame_SetLineNumber(py_frame, py_line);
    PyTraceBack_Here(py_frame);
bad:
    Py_XDECREF(py_code);
    Py_XDECREF(py_frame);
}

/* CIntToPy */
            static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
    const long neg_one = (long) -1, const_zero = (long) 0;
    const int is_unsigned = neg_one > const_zero;
    if (is_unsigned) {
        if (sizeof(long) < sizeof(long)) {
            return PyInt_FromLong((long) value);
        } else if (sizeof(long) <= sizeof(unsigned long)) {
            return PyLong_FromUnsignedLong((unsigned long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
#endif
        }
    } else {
        if (sizeof(long) <= sizeof(long)) {
            return PyInt_FromLong((long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
            return PyLong_FromLongLong((PY_LONG_LONG) value);
#endif
        }
    }
    {
        int one = 1; int little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&value;
        return _PyLong_FromByteArray(bytes, sizeof(long),
                                     little, !is_unsigned);
    }
}

/* CIntFromPyVerify */
            #define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0)
#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1)
#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\
    {\
        func_type value = func_value;\
        if (sizeof(target_type) < sizeof(func_type)) {\
            if (unlikely(value != (func_type) (target_type) value)) {\
                func_type zero = 0;\
                if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\
                    return (target_type) -1;\
                if (is_unsigned && unlikely(value < zero))\
                    goto raise_neg_overflow;\
                else\
                    goto raise_overflow;\
            }\
        }\
        return (target_type) value;\
    }

/* CIntFromPy */
            static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
    const long neg_one = (long) -1, const_zero = (long) 0;
    const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
    if (likely(PyInt_Check(x))) {
        if (sizeof(long) < sizeof(long)) {
            __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x))
        } else {
            long val = PyInt_AS_LONG(x);
            if (is_unsigned && unlikely(val < 0)) {
                goto raise_neg_overflow;
            }
            return (long) val;
        }
    } else
#endif
    if (likely(PyLong_Check(x))) {
        if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (long) 0;
                case  1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0])
                case 2:
                    if (8 * sizeof(long) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) >= 2 * PyLong_SHIFT) {
                            return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(long) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) >= 3 * PyLong_SHIFT) {
                            return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(long) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) >= 4 * PyLong_SHIFT) {
                            return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
            }
#endif
#if CYTHON_COMPILING_IN_CPYTHON
            if (unlikely(Py_SIZE(x) < 0)) {
                goto raise_neg_overflow;
            }
#else
            {
                int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                if (unlikely(result < 0))
                    return (long) -1;
                if (unlikely(result == 1))
                    goto raise_neg_overflow;
            }
#endif
            if (sizeof(long) <= sizeof(unsigned long)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
            }
        } else {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (long) 0;
                case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0]))
                case  1: __PYX_VERIFY_RETURN_INT(long,  digit, +digits[0])
                case -2:
                    if (8 * sizeof(long) - 1 > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                            return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 2:
                    if (8 * sizeof(long) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                            return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case -3:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                            return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(long) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                            return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case -4:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                            return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(long) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                            return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
            }
#endif
            if (sizeof(long) <= sizeof(long)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
            }
        }
        {
#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray)
            PyErr_SetString(PyExc_RuntimeError,
                            "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers");
#else
            long val;
            PyObject *v = __Pyx_PyNumber_IntOrLong(x);
 #if PY_MAJOR_VERSION < 3
            if (likely(v) && !PyLong_Check(v)) {
                PyObject *tmp = v;
                v = PyNumber_Long(tmp);
                Py_DECREF(tmp);
            }
 #endif
            if (likely(v)) {
                int one = 1; int is_little = (int)*(unsigned char *)&one;
                unsigned char *bytes = (unsigned char *)&val;
                int ret = _PyLong_AsByteArray((PyLongObject *)v,
                                              bytes, sizeof(val),
                                              is_little, !is_unsigned);
                Py_DECREF(v);
                if (likely(!ret))
                    return val;
            }
#endif
            return (long) -1;
        }
    } else {
        long val;
        PyObject *tmp = __Pyx_PyNumber_IntOrLong(x);
        if (!tmp) return (long) -1;
        val = __Pyx_PyInt_As_long(tmp);
        Py_DECREF(tmp);
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to long");
    return (long) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to long");
    return (long) -1;
}

/* CIntFromPy */
            static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {
    const int neg_one = (int) -1, const_zero = (int) 0;
    const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
    if (likely(PyInt_Check(x))) {
        if (sizeof(int) < sizeof(long)) {
            __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x))
        } else {
            long val = PyInt_AS_LONG(x);
            if (is_unsigned && unlikely(val < 0)) {
                goto raise_neg_overflow;
            }
            return (int) val;
        }
    } else
#endif
    if (likely(PyLong_Check(x))) {
        if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (int) 0;
                case  1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0])
                case 2:
                    if (8 * sizeof(int) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) >= 2 * PyLong_SHIFT) {
                            return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(int) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) >= 3 * PyLong_SHIFT) {
                            return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(int) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) >= 4 * PyLong_SHIFT) {
                            return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
            }
#endif
#if CYTHON_COMPILING_IN_CPYTHON
            if (unlikely(Py_SIZE(x) < 0)) {
                goto raise_neg_overflow;
            }
#else
            {
                int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                if (unlikely(result < 0))
                    return (int) -1;
                if (unlikely(result == 1))
                    goto raise_neg_overflow;
            }
#endif
            if (sizeof(int) <= sizeof(unsigned long)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
            }
        } else {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (int) 0;
                case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0]))
                case  1: __PYX_VERIFY_RETURN_INT(int,  digit, +digits[0])
                case -2:
                    if (8 * sizeof(int) - 1 > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) {
                            return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 2:
                    if (8 * sizeof(int) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) {
                            return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case -3:
                    if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) {
                            return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(int) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) {
                            return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case -4:
                    if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) {
                            return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(int) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) {
                            return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
            }
#endif
            if (sizeof(int) <= sizeof(long)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
            }
        }
        {
#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray)
            PyErr_SetString(PyExc_RuntimeError,
                            "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers");
#else
            int val;
            PyObject *v = __Pyx_PyNumber_IntOrLong(x);
 #if PY_MAJOR_VERSION < 3
            if (likely(v) && !PyLong_Check(v)) {
                PyObject *tmp = v;
                v = PyNumber_Long(tmp);
                Py_DECREF(tmp);
            }
 #endif
            if (likely(v)) {
                int one = 1; int is_little = (int)*(unsigned char *)&one;
                unsigned char *bytes = (unsigned char *)&val;
                int ret = _PyLong_AsByteArray((PyLongObject *)v,
                                              bytes, sizeof(val),
                                              is_little, !is_unsigned);
                Py_DECREF(v);
                if (likely(!ret))
                    return val;
            }
#endif
            return (int) -1;
        }
    } else {
        int val;
        PyObject *tmp = __Pyx_PyNumber_IntOrLong(x);
        if (!tmp) return (int) -1;
        val = __Pyx_PyInt_As_int(tmp);
        Py_DECREF(tmp);
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to int");
    return (int) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to int");
    return (int) -1;
}

/* FastTypeChecks */
            #if CYTHON_COMPILING_IN_CPYTHON
static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) {
    while (a) {
        a = a->tp_base;
        if (a == b)
            return 1;
    }
    return b == &PyBaseObject_Type;
}
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) {
    PyObject *mro;
    if (a == b) return 1;
    mro = a->tp_mro;
    if (likely(mro)) {
        Py_ssize_t i, n;
        n = PyTuple_GET_SIZE(mro);
        for (i = 0; i < n; i++) {
            if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b)
                return 1;
        }
        return 0;
    }
    return __Pyx_InBases(a, b);
}
#if PY_MAJOR_VERSION == 2
static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) {
    PyObject *exception, *value, *tb;
    int res;
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ErrFetch(&exception, &value, &tb);
    res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0;
    if (unlikely(res == -1)) {
        PyErr_WriteUnraisable(err);
        res = 0;
    }
    if (!res) {
        res = PyObject_IsSubclass(err, exc_type2);
        if (unlikely(res == -1)) {
            PyErr_WriteUnraisable(err);
            res = 0;
        }
    }
    __Pyx_ErrRestore(exception, value, tb);
    return res;
}
#else
static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) {
    int res = exc_type1 ? __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type1) : 0;
    if (!res) {
        res = __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2);
    }
    return res;
}
#endif
static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
    Py_ssize_t i, n;
    assert(PyExceptionClass_Check(exc_type));
    n = PyTuple_GET_SIZE(tuple);
#if PY_MAJOR_VERSION >= 3
    for (i=0; i<n; i++) {
        if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1;
    }
#endif
    for (i=0; i<n; i++) {
        PyObject *t = PyTuple_GET_ITEM(tuple, i);
        #if PY_MAJOR_VERSION < 3
        if (likely(exc_type == t)) return 1;
        #endif
        if (likely(PyExceptionClass_Check(t))) {
            if (__Pyx_inner_PyErr_GivenExceptionMatches2(exc_type, NULL, t)) return 1;
        } else {
        }
    }
    return 0;
}
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject* exc_type) {
    if (likely(err == exc_type)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        if (likely(PyExceptionClass_Check(exc_type))) {
            return __Pyx_inner_PyErr_GivenExceptionMatches2(err, NULL, exc_type);
        } else if (likely(PyTuple_Check(exc_type))) {
            return __Pyx_PyErr_GivenExceptionMatchesTuple(err, exc_type);
        } else {
        }
    }
    return PyErr_GivenExceptionMatches(err, exc_type);
}
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *exc_type1, PyObject *exc_type2) {
    assert(PyExceptionClass_Check(exc_type1));
    assert(PyExceptionClass_Check(exc_type2));
    if (likely(err == exc_type1 || err == exc_type2)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        return __Pyx_inner_PyErr_GivenExceptionMatches2(err, exc_type1, exc_type2);
    }
    return (PyErr_GivenExceptionMatches(err, exc_type1) || PyErr_GivenExceptionMatches(err, exc_type2));
}
#endif

/* CheckBinaryVersion */
            static int __Pyx_check_binary_version(void) {
    char ctversion[4], rtversion[4];
    PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION);
    PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion());
    if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) {
        char message[200];
        PyOS_snprintf(message, sizeof(message),
                      "compiletime version %s of module '%.100s' "
                      "does not match runtime version %s",
                      ctversion, __Pyx_MODULE_NAME, rtversion);
        return PyErr_WarnEx(NULL, message, 1);
    }
    return 0;
}

/* InitStrings */
            static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
    while (t->p) {
        #if PY_MAJOR_VERSION < 3
        if (t->is_unicode) {
            *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL);
        } else if (t->intern) {
            *t->p = PyString_InternFromString(t->s);
        } else {
            *t->p = PyString_FromStringAndSize(t->s, t->n - 1);
        }
        #else
        if (t->is_unicode | t->is_str) {
            if (t->intern) {
                *t->p = PyUnicode_InternFromString(t->s);
            } else if (t->encoding) {
                *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL);
            } else {
                *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1);
            }
        } else {
            *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1);
        }
        #endif
        if (!*t->p)
            return -1;
        if (PyObject_Hash(*t->p) == -1)
            return -1;
        ++t;
    }
    return 0;
}

static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
    return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str));
}
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) {
    Py_ssize_t ignore;
    return __Pyx_PyObject_AsStringAndSize(o, &ignore);
}
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
#if !CYTHON_PEP393_ENABLED
static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
    char* defenc_c;
    PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL);
    if (!defenc) return NULL;
    defenc_c = PyBytes_AS_STRING(defenc);
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
    {
        char* end = defenc_c + PyBytes_GET_SIZE(defenc);
        char* c;
        for (c = defenc_c; c < end; c++) {
            if ((unsigned char) (*c) >= 128) {
                PyUnicode_AsASCIIString(o);
                return NULL;
            }
        }
    }
#endif
    *length = PyBytes_GET_SIZE(defenc);
    return defenc_c;
}
#else
static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
    if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL;
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
    if (likely(PyUnicode_IS_ASCII(o))) {
        *length = PyUnicode_GET_LENGTH(o);
        return PyUnicode_AsUTF8(o);
    } else {
        PyUnicode_AsASCIIString(o);
        return NULL;
    }
#else
    return PyUnicode_AsUTF8AndSize(o, length);
#endif
}
#endif
#endif
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
    if (
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
            __Pyx_sys_getdefaultencoding_not_ascii &&
#endif
            PyUnicode_Check(o)) {
        return __Pyx_PyUnicode_AsStringAndSize(o, length);
    } else
#endif
#if (!CYTHON_COMPILING_IN_PYPY) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))
    if (PyByteArray_Check(o)) {
        *length = PyByteArray_GET_SIZE(o);
        return PyByteArray_AS_STRING(o);
    } else
#endif
    {
        char* result;
        int r = PyBytes_AsStringAndSize(o, &result, length);
        if (unlikely(r < 0)) {
            return NULL;
        } else {
            return result;
        }
    }
}
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
   int is_true = x == Py_True;
   if (is_true | (x == Py_False) | (x == Py_None)) return is_true;
   else return PyObject_IsTrue(x);
}
static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) {
#if PY_MAJOR_VERSION >= 3
    if (PyLong_Check(result)) {
        if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1,
                "__int__ returned non-int (type %.200s).  "
                "The ability to return an instance of a strict subclass of int "
                "is deprecated, and may be removed in a future version of Python.",
                Py_TYPE(result)->tp_name)) {
            Py_DECREF(result);
            return NULL;
        }
        return result;
    }
#endif
    PyErr_Format(PyExc_TypeError,
                 "__%.4s__ returned non-%.4s (type %.200s)",
                 type_name, type_name, Py_TYPE(result)->tp_name);
    Py_DECREF(result);
    return NULL;
}
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {
#if CYTHON_USE_TYPE_SLOTS
  PyNumberMethods *m;
#endif
  const char *name = NULL;
  PyObject *res = NULL;
#if PY_MAJOR_VERSION < 3
  if (likely(PyInt_Check(x) || PyLong_Check(x)))
#else
  if (likely(PyLong_Check(x)))
#endif
    return __Pyx_NewRef(x);
#if CYTHON_USE_TYPE_SLOTS
  m = Py_TYPE(x)->tp_as_number;
  #if PY_MAJOR_VERSION < 3
  if (m && m->nb_int) {
    name = "int";
    res = m->nb_int(x);
  }
  else if (m && m->nb_long) {
    name = "long";
    res = m->nb_long(x);
  }
  #else
  if (likely(m && m->nb_int)) {
    name = "int";
    res = m->nb_int(x);
  }
  #endif
#else
  if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) {
    res = PyNumber_Int(x);
  }
#endif
  if (likely(res)) {
#if PY_MAJOR_VERSION < 3
    if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) {
#else
    if (unlikely(!PyLong_CheckExact(res))) {
#endif
        return __Pyx_PyNumber_IntOrLongWrongResultType(res, name);
    }
  }
  else if (!PyErr_Occurred()) {
    PyErr_SetString(PyExc_TypeError,
                    "an integer is required");
  }
  return res;
}
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
  Py_ssize_t ival;
  PyObject *x;
#if PY_MAJOR_VERSION < 3
  if (likely(PyInt_CheckExact(b))) {
    if (sizeof(Py_ssize_t) >= sizeof(long))
        return PyInt_AS_LONG(b);
    else
        return PyInt_AsSsize_t(x);
  }
#endif
  if (likely(PyLong_CheckExact(b))) {
    #if CYTHON_USE_PYLONG_INTERNALS
    const digit* digits = ((PyLongObject*)b)->ob_digit;
    const Py_ssize_t size = Py_SIZE(b);
    if (likely(__Pyx_sst_abs(size) <= 1)) {
        ival = likely(size) ? digits[0] : 0;
        if (size == -1) ival = -ival;
        return ival;
    } else {
      switch (size) {
         case 2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
      }
    }
    #endif
    return PyLong_AsSsize_t(b);
  }
  x = PyNumber_Index(b);
  if (!x) return -1;
  ival = PyInt_AsSsize_t(x);
  Py_DECREF(x);
  return ival;
}
static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) {
  return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False);
}
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
    return PyInt_FromSize_t(ival);
}


#endif /* Py_PYTHON_H */
