diff options
| -rw-r--r-- | experiments/README.txt | 8 | ||||
| -rw-r--r-- | experiments/build/temp.macosx-10.6-x86_64-2.7/ml.o | bin | 0 -> 304288 bytes | |||
| -rw-r--r-- | experiments/ml.c | 8918 | ||||
| -rwxr-xr-x | experiments/ml.so | bin | 0 -> 109300 bytes | |||
| -rw-r--r-- | experiments/out.log | 3858 | ||||
| -rw-r--r-- | experiments/process.py | 1 | ||||
| -rw-r--r-- | experiments/setup.py | 12 |
7 files changed, 12793 insertions, 4 deletions
diff --git a/experiments/README.txt b/experiments/README.txt index 13e0d3d..a3f2e22 100644 --- a/experiments/README.txt +++ b/experiments/README.txt @@ -14,9 +14,9 @@ Description of the files * process.py: simple loop to do an exhaustive search over a range of alpha (time component) and delta (structural component). The likelihood (and a few - other things) for each of the values is printed in the file "out.log". - - Takes on argument the name of .pickle file computed by build_network.py + other things) for each of the values is printed in the file "out.log". + Takes as argument the name of .pickle file computed by build_network.py + Prints columns as alpha, delta, beta, #roots, likelihood * plot3d.py: code to obtain a 3d plot of the log likelihood as a function of alpha and delta. Can also be easily modified to obtain 2d plots along @@ -36,5 +36,5 @@ will be working with an outdated version of ml.so! How to compile? A Makefile is provided. If using make on MacOS is too complicated, it is also possible to compile .pyx files using python distutils (which I would assume is more standard on MacOS). This only requires distutils -and a simple setup.pu file. More details here: +and a simple setup.py file. More details here: http://docs.cython.org/src/reference/compilation.html#configuring-the-c-build diff --git a/experiments/build/temp.macosx-10.6-x86_64-2.7/ml.o b/experiments/build/temp.macosx-10.6-x86_64-2.7/ml.o Binary files differnew file mode 100644 index 0000000..0f6640f --- /dev/null +++ b/experiments/build/temp.macosx-10.6-x86_64-2.7/ml.o diff --git a/experiments/ml.c b/experiments/ml.c new file mode 100644 index 0000000..67e5cd1 --- /dev/null +++ b/experiments/ml.c @@ -0,0 +1,8918 @@ +/* Generated by Cython 0.22 */ + +/* BEGIN: Cython Metadata +{ + "distutils": { + "depends": [] + } +} +END: Cython Metadata */ + +#define PY_SSIZE_T_CLEAN +#ifndef CYTHON_USE_PYLONG_INTERNALS +#ifdef PYLONG_BITS_IN_DIGIT +#define CYTHON_USE_PYLONG_INTERNALS 0 +#else +#include "pyconfig.h" +#ifdef PYLONG_BITS_IN_DIGIT +#define CYTHON_USE_PYLONG_INTERNALS 1 +#else +#define CYTHON_USE_PYLONG_INTERNALS 0 +#endif +#endif +#endif +#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 < 0x03020000) + #error Cython requires Python 2.6+ or Python 3.2+. +#else +#define CYTHON_ABI "0_22" +#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 +#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_CPYTHON 0 +#else +#define CYTHON_COMPILING_IN_PYPY 0 +#define CYTHON_COMPILING_IN_CPYTHON 1 +#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 +#if PY_MAJOR_VERSION >= 3 + #define Py_TPFLAGS_CHECKTYPES 0 + #define Py_TPFLAGS_HAVE_INDEX 0 + #define Py_TPFLAGS_HAVE_NEWBUFFER 0 +#endif +#if PY_VERSION_HEX < 0x030400a1 && !defined(Py_TPFLAGS_HAVE_FINALIZE) + #define Py_TPFLAGS_HAVE_FINALIZE 0 +#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_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) +#else + #define CYTHON_PEP393_ENABLED 0 + #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_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])) +#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) + #define __Pyx_PyFrozenSet_Size(s) PyObject_Size(s) +#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)) + #define __Pyx_PyFrozenSet_Size(s) PySet_Size(s) +#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 + #define PyBaseString_Type PyUnicode_Type + #define PyStringObject PyUnicodeObject + #define PyString_Type PyUnicode_Type + #define PyString_Check PyUnicode_Check + #define PyString_CheckExact PyUnicode_CheckExact +#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 +#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) +#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) : PyInstanceMethod_New(func)) +#else + #define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass) +#endif +#ifndef CYTHON_INLINE + #if 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 +#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 +#ifdef NAN +#define __PYX_NAN() ((float) NAN) +#else +static CYTHON_INLINE float __PYX_NAN() { + /* Initialize NaN. The sign is irrelevant, an exponent with all bits 1 and + a nonzero mantissa means NaN. If the first bit in the mantissa is 1, it is + a quiet NaN. */ + float value; + memset(&value, 0xFF, sizeof(value)); + return value; +} +#endif +#define __Pyx_void_to_None(void_result) (void_result, Py_INCREF(Py_None), Py_None) +#ifdef __cplusplus +template<typename T> +void __Pyx_call_destructor(T* x) { + x->~T(); +} +template<typename T> +class __Pyx_FakeReference { + public: + __Pyx_FakeReference() : ptr(NULL) { } + __Pyx_FakeReference(T& ref) : ptr(&ref) { } + T *operator->() { return ptr; } + operator T&() { return *ptr; } + private: + T *ptr; +}; +#endif + + +#if PY_MAJOR_VERSION >= 3 + #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 + +#ifndef __PYX_EXTERN_C + #ifdef __cplusplus + #define __PYX_EXTERN_C extern "C" + #else + #define __PYX_EXTERN_C extern + #endif +#endif + +#if defined(WIN32) || defined(MS_WINDOWS) +#define _USE_MATH_DEFINES +#endif +#include <math.h> +#define __PYX_HAVE__ml +#define __PYX_HAVE_API__ml +#include "string.h" +#include "stdio.h" +#include "stdlib.h" +#include "numpy/arrayobject.h" +#include "numpy/ufuncobject.h" +#include "math.h" +#ifdef _OPENMP +#include <omp.h> +#endif /* _OPENMP */ + +#ifdef PYREX_WITHOUT_ASSERTIONS +#define CYTHON_WITHOUT_ASSERTIONS +#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 +typedef struct {PyObject **p; 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_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))) ) +static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject*); +static CYTHON_INLINE 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_PyObject_AsSString(s) ((signed char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsUString(s) ((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) +#if PY_MAJOR_VERSION < 3 +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); +} +#else +#define __Pyx_Py_UNICODE_strlen Py_UNICODE_strlen +#endif +#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_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) +#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); +static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); +#if CYTHON_COMPILING_IN_CPYTHON +#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 && __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 PyObject *__pyx_m; +static PyObject *__pyx_d; +static PyObject *__pyx_b; +static PyObject *__pyx_empty_tuple; +static PyObject *__pyx_empty_bytes; +static int __pyx_lineno; +static int __pyx_clineno = 0; +static const char * __pyx_cfilenm= __FILE__; +static const char *__pyx_filename; + +#if !defined(CYTHON_CCOMPLEX) + #if defined(__cplusplus) + #define CYTHON_CCOMPLEX 1 + #elif defined(_Complex_I) + #define CYTHON_CCOMPLEX 1 + #else + #define CYTHON_CCOMPLEX 0 + #endif +#endif +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + #include <complex> + #else + #include <complex.h> + #endif +#endif +#if CYTHON_CCOMPLEX && !defined(__cplusplus) && defined(__sun__) && defined(__GNUC__) + #undef _Complex_I + #define _Complex_I 1.0fj +#endif + + +static const char *__pyx_f[] = { + "ml.pyx", + "__init__.pxd", + "type.pxd", +}; +#define IS_UNSIGNED(type) (((type) -1) > 0) +struct __Pyx_StructField_; +#define __PYX_BUF_FLAGS_PACKED_STRUCT (1 << 0) +typedef struct { + const char* name; + struct __Pyx_StructField_* fields; + size_t size; + size_t arraysize[8]; + int ndim; + char typegroup; + char is_unsigned; + int flags; +} __Pyx_TypeInfo; +typedef struct __Pyx_StructField_ { + __Pyx_TypeInfo* type; + const char* name; + size_t offset; +} __Pyx_StructField; +typedef struct { + __Pyx_StructField* field; + size_t parent_offset; +} __Pyx_BufFmt_StackElem; +typedef struct { + __Pyx_StructField root; + __Pyx_BufFmt_StackElem* head; + size_t fmt_offset; + size_t new_count, enc_count; + size_t struct_alignment; + int is_complex; + char enc_type; + char new_packmode; + char enc_packmode; + char is_valid_array; +} __Pyx_BufFmt_Context; + + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":726 + * # in Cython to enable them only on the right systems. + * + * ctypedef npy_int8 int8_t # <<<<<<<<<<<<<< + * ctypedef npy_int16 int16_t + * ctypedef npy_int32 int32_t + */ +typedef npy_int8 __pyx_t_5numpy_int8_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":727 + * + * ctypedef npy_int8 int8_t + * ctypedef npy_int16 int16_t # <<<<<<<<<<<<<< + * ctypedef npy_int32 int32_t + * ctypedef npy_int64 int64_t + */ +typedef npy_int16 __pyx_t_5numpy_int16_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":728 + * ctypedef npy_int8 int8_t + * ctypedef npy_int16 int16_t + * ctypedef npy_int32 int32_t # <<<<<<<<<<<<<< + * ctypedef npy_int64 int64_t + * #ctypedef npy_int96 int96_t + */ +typedef npy_int32 __pyx_t_5numpy_int32_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":729 + * ctypedef npy_int16 int16_t + * ctypedef npy_int32 int32_t + * ctypedef npy_int64 int64_t # <<<<<<<<<<<<<< + * #ctypedef npy_int96 int96_t + * #ctypedef npy_int128 int128_t + */ +typedef npy_int64 __pyx_t_5numpy_int64_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":733 + * #ctypedef npy_int128 int128_t + * + * ctypedef npy_uint8 uint8_t # <<<<<<<<<<<<<< + * ctypedef npy_uint16 uint16_t + * ctypedef npy_uint32 uint32_t + */ +typedef npy_uint8 __pyx_t_5numpy_uint8_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":734 + * + * ctypedef npy_uint8 uint8_t + * ctypedef npy_uint16 uint16_t # <<<<<<<<<<<<<< + * ctypedef npy_uint32 uint32_t + * ctypedef npy_uint64 uint64_t + */ +typedef npy_uint16 __pyx_t_5numpy_uint16_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":735 + * ctypedef npy_uint8 uint8_t + * ctypedef npy_uint16 uint16_t + * ctypedef npy_uint32 uint32_t # <<<<<<<<<<<<<< + * ctypedef npy_uint64 uint64_t + * #ctypedef npy_uint96 uint96_t + */ +typedef npy_uint32 __pyx_t_5numpy_uint32_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":736 + * ctypedef npy_uint16 uint16_t + * ctypedef npy_uint32 uint32_t + * ctypedef npy_uint64 uint64_t # <<<<<<<<<<<<<< + * #ctypedef npy_uint96 uint96_t + * #ctypedef npy_uint128 uint128_t + */ +typedef npy_uint64 __pyx_t_5numpy_uint64_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":740 + * #ctypedef npy_uint128 uint128_t + * + * ctypedef npy_float32 float32_t # <<<<<<<<<<<<<< + * ctypedef npy_float64 float64_t + * #ctypedef npy_float80 float80_t + */ +typedef npy_float32 __pyx_t_5numpy_float32_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":741 + * + * ctypedef npy_float32 float32_t + * ctypedef npy_float64 float64_t # <<<<<<<<<<<<<< + * #ctypedef npy_float80 float80_t + * #ctypedef npy_float128 float128_t + */ +typedef npy_float64 __pyx_t_5numpy_float64_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":750 + * # The int types are mapped a bit surprising -- + * # numpy.int corresponds to 'l' and numpy.long to 'q' + * ctypedef npy_long int_t # <<<<<<<<<<<<<< + * ctypedef npy_longlong long_t + * ctypedef npy_longlong longlong_t + */ +typedef npy_long __pyx_t_5numpy_int_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":751 + * # numpy.int corresponds to 'l' and numpy.long to 'q' + * ctypedef npy_long int_t + * ctypedef npy_longlong long_t # <<<<<<<<<<<<<< + * ctypedef npy_longlong longlong_t + * + */ +typedef npy_longlong __pyx_t_5numpy_long_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":752 + * ctypedef npy_long int_t + * ctypedef npy_longlong long_t + * ctypedef npy_longlong longlong_t # <<<<<<<<<<<<<< + * + * ctypedef npy_ulong uint_t + */ +typedef npy_longlong __pyx_t_5numpy_longlong_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":754 + * ctypedef npy_longlong longlong_t + * + * ctypedef npy_ulong uint_t # <<<<<<<<<<<<<< + * ctypedef npy_ulonglong ulong_t + * ctypedef npy_ulonglong ulonglong_t + */ +typedef npy_ulong __pyx_t_5numpy_uint_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":755 + * + * ctypedef npy_ulong uint_t + * ctypedef npy_ulonglong ulong_t # <<<<<<<<<<<<<< + * ctypedef npy_ulonglong ulonglong_t + * + */ +typedef npy_ulonglong __pyx_t_5numpy_ulong_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":756 + * ctypedef npy_ulong uint_t + * ctypedef npy_ulonglong ulong_t + * ctypedef npy_ulonglong ulonglong_t # <<<<<<<<<<<<<< + * + * ctypedef npy_intp intp_t + */ +typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":758 + * ctypedef npy_ulonglong ulonglong_t + * + * ctypedef npy_intp intp_t # <<<<<<<<<<<<<< + * ctypedef npy_uintp uintp_t + * + */ +typedef npy_intp __pyx_t_5numpy_intp_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":759 + * + * ctypedef npy_intp intp_t + * ctypedef npy_uintp uintp_t # <<<<<<<<<<<<<< + * + * ctypedef npy_double float_t + */ +typedef npy_uintp __pyx_t_5numpy_uintp_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":761 + * ctypedef npy_uintp uintp_t + * + * ctypedef npy_double float_t # <<<<<<<<<<<<<< + * ctypedef npy_double double_t + * ctypedef npy_longdouble longdouble_t + */ +typedef npy_double __pyx_t_5numpy_float_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":762 + * + * ctypedef npy_double float_t + * ctypedef npy_double double_t # <<<<<<<<<<<<<< + * ctypedef npy_longdouble longdouble_t + * + */ +typedef npy_double __pyx_t_5numpy_double_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":763 + * ctypedef npy_double float_t + * ctypedef npy_double double_t + * ctypedef npy_longdouble longdouble_t # <<<<<<<<<<<<<< + * + * ctypedef npy_cfloat cfloat_t + */ +typedef npy_longdouble __pyx_t_5numpy_longdouble_t; + +/* "ml.pyx":7 + * + * DTYPE = np.float64 + * ctypedef np.float_t DTYPE_t # <<<<<<<<<<<<<< + * + * + */ +typedef __pyx_t_5numpy_float_t __pyx_t_2ml_DTYPE_t; +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + typedef ::std::complex< float > __pyx_t_float_complex; + #else + typedef float _Complex __pyx_t_float_complex; + #endif +#else + typedef struct { float real, imag; } __pyx_t_float_complex; +#endif + +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + typedef ::std::complex< double > __pyx_t_double_complex; + #else + typedef double _Complex __pyx_t_double_complex; + #endif +#else + typedef struct { double real, imag; } __pyx_t_double_complex; +#endif + + +/*--- Type declarations ---*/ +struct __pyx_obj_2ml___pyx_scope_struct__ml; +struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":765 + * ctypedef npy_longdouble longdouble_t + * + * ctypedef npy_cfloat cfloat_t # <<<<<<<<<<<<<< + * ctypedef npy_cdouble cdouble_t + * ctypedef npy_clongdouble clongdouble_t + */ +typedef npy_cfloat __pyx_t_5numpy_cfloat_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":766 + * + * ctypedef npy_cfloat cfloat_t + * ctypedef npy_cdouble cdouble_t # <<<<<<<<<<<<<< + * ctypedef npy_clongdouble clongdouble_t + * + */ +typedef npy_cdouble __pyx_t_5numpy_cdouble_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":767 + * ctypedef npy_cfloat cfloat_t + * ctypedef npy_cdouble cdouble_t + * ctypedef npy_clongdouble clongdouble_t # <<<<<<<<<<<<<< + * + * ctypedef npy_cdouble complex_t + */ +typedef npy_clongdouble __pyx_t_5numpy_clongdouble_t; + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":769 + * ctypedef npy_clongdouble clongdouble_t + * + * ctypedef npy_cdouble complex_t # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew1(a): + */ +typedef npy_cdouble __pyx_t_5numpy_complex_t; + +/* "ml.pyx":50 + * return result + * + * def ml(dict root_victims, dict victims, dict non_victims, DTYPE_t age, # <<<<<<<<<<<<<< + * DTYPE_t alpha, DTYPE_t delta, DTYPE_t gamma=10): + * cdef: + */ +struct __pyx_obj_2ml___pyx_scope_struct__ml { + PyObject_HEAD + PyObject *__pyx_v_failures; + PyObject *__pyx_v_successes; +}; + + +/* "ml.pyx":71 + * successes = [weight_success(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] + * probs[i] = max(s - failures[l] for l, s in enumerate(successes)) # <<<<<<<<<<<<<< + * probs_fail[i] = all_failures + * + */ +struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr { + PyObject_HEAD + struct __pyx_obj_2ml___pyx_scope_struct__ml *__pyx_outer_scope; + Py_ssize_t __pyx_v_l; + PyObject *__pyx_v_s; + Py_ssize_t __pyx_t_0; + PyObject *__pyx_t_1; + Py_ssize_t __pyx_t_2; +}; + + +/* --- Runtime support code (head) --- */ +#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) + +#if CYTHON_COMPILING_IN_CPYTHON +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); +} +#else +#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n) +#endif + +static PyObject *__Pyx_GetBuiltinName(PyObject *name); + +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); + +static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); + +static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], \ + PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, \ + const char* function_name); + +static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed, + const char *name, int exact); + +static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname); + +#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 CYTHON_INLINE 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); + +static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name); + +#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 + +static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); + +static CYTHON_INLINE int __Pyx_GetBufferAndValidate(Py_buffer* buf, PyObject* obj, + __Pyx_TypeInfo* dtype, int flags, int nd, int cast, __Pyx_BufFmt_StackElem* stack); +static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info); + +static CYTHON_INLINE int __Pyx_IterFinish(void); + +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); +#endif + +#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 + +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg); + +static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name); + +static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); + +static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); + +static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected); + +static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void); + +static void __Pyx_UnpackTupleError(PyObject *, Py_ssize_t index); + +static CYTHON_INLINE int __Pyx_unpack_tuple2(PyObject* tuple, PyObject** value1, PyObject** value2, + int is_tuple, int has_known_size, int decref_tuple); + +static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* dict, int is_dict, PyObject* method_name, + Py_ssize_t* p_orig_length, int* p_is_dict); +static CYTHON_INLINE int __Pyx_dict_iter_next(PyObject* dict_or_iter, Py_ssize_t orig_length, Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem, int is_dict); + +#if CYTHON_COMPILING_IN_CPYTHON +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 + +#define __Pyx_BufPtrStrided1d(type, buf, i0, s0) (type)((char*)buf + i0 * s0) +static void __Pyx_RaiseBufferFallbackError(void); + +static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb); +static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb); + +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); + +#if PY_MAJOR_VERSION >= 3 +static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { + PyObject *value; + value = PyDict_GetItemWithError(d, key); + if (unlikely(!value)) { + if (!PyErr_Occurred()) { + PyObject* args = PyTuple_Pack(1, key); + if (likely(args)) + PyErr_SetObject(PyExc_KeyError, args); + Py_XDECREF(args); + } + return NULL; + } + Py_INCREF(value); + return value; +} +#else + #define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key) +#endif + +#include <string.h> + +typedef struct { + int code_line; + PyCodeObject* code_object; +} __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); + +static void __Pyx_AddTraceback(const char *funcname, int c_line, + int py_line, const char *filename); + +typedef struct { + Py_ssize_t shape, strides, suboffsets; +} __Pyx_Buf_DimInfo; +typedef struct { + size_t refcount; + Py_buffer pybuffer; +} __Pyx_Buffer; +typedef struct { + __Pyx_Buffer *rcbuffer; + char *data; + __Pyx_Buf_DimInfo diminfo[8]; +} __Pyx_LocalBuf_ND; + +#if PY_MAJOR_VERSION < 3 + static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags); + static void __Pyx_ReleaseBuffer(Py_buffer *view); +#else + #define __Pyx_GetBuffer PyObject_GetBuffer + #define __Pyx_ReleaseBuffer PyBuffer_Release +#endif + + +static Py_ssize_t __Pyx_zeros[] = {0, 0, 0, 0, 0, 0, 0, 0}; +static Py_ssize_t __Pyx_minusones[] = {-1, -1, -1, -1, -1, -1, -1, -1}; + +static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); + +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value); + +static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); + +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); + +static int __Pyx_Print(PyObject*, PyObject *, int); +#if CYTHON_COMPILING_IN_PYPY || PY_MAJOR_VERSION >= 3 +static PyObject* __pyx_print = 0; +static PyObject* __pyx_print_kwargs = 0; +#endif + +static int __Pyx_PrintOne(PyObject* stream, PyObject *o); + +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + #define __Pyx_CREAL(z) ((z).real()) + #define __Pyx_CIMAG(z) ((z).imag()) + #else + #define __Pyx_CREAL(z) (__real__(z)) + #define __Pyx_CIMAG(z) (__imag__(z)) + #endif +#else + #define __Pyx_CREAL(z) ((z).real) + #define __Pyx_CIMAG(z) ((z).imag) +#endif +#if (defined(_WIN32) || defined(__clang__)) && defined(__cplusplus) && CYTHON_CCOMPLEX + #define __Pyx_SET_CREAL(z,x) ((z).real(x)) + #define __Pyx_SET_CIMAG(z,y) ((z).imag(y)) +#else + #define __Pyx_SET_CREAL(z,x) __Pyx_CREAL(z) = (x) + #define __Pyx_SET_CIMAG(z,y) __Pyx_CIMAG(z) = (y) +#endif + +static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float, float); + +#if CYTHON_CCOMPLEX + #define __Pyx_c_eqf(a, b) ((a)==(b)) + #define __Pyx_c_sumf(a, b) ((a)+(b)) + #define __Pyx_c_difff(a, b) ((a)-(b)) + #define __Pyx_c_prodf(a, b) ((a)*(b)) + #define __Pyx_c_quotf(a, b) ((a)/(b)) + #define __Pyx_c_negf(a) (-(a)) + #ifdef __cplusplus + #define __Pyx_c_is_zerof(z) ((z)==(float)0) + #define __Pyx_c_conjf(z) (::std::conj(z)) + #if 1 + #define __Pyx_c_absf(z) (::std::abs(z)) + #define __Pyx_c_powf(a, b) (::std::pow(a, b)) + #endif + #else + #define __Pyx_c_is_zerof(z) ((z)==0) + #define __Pyx_c_conjf(z) (conjf(z)) + #if 1 + #define __Pyx_c_absf(z) (cabsf(z)) + #define __Pyx_c_powf(a, b) (cpowf(a, b)) + #endif + #endif +#else + static CYTHON_INLINE int __Pyx_c_eqf(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sumf(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_difff(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prodf(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quotf(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_negf(__pyx_t_float_complex); + static CYTHON_INLINE int __Pyx_c_is_zerof(__pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conjf(__pyx_t_float_complex); + #if 1 + static CYTHON_INLINE float __Pyx_c_absf(__pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_powf(__pyx_t_float_complex, __pyx_t_float_complex); + #endif +#endif + +static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double, double); + +#if CYTHON_CCOMPLEX + #define __Pyx_c_eq(a, b) ((a)==(b)) + #define __Pyx_c_sum(a, b) ((a)+(b)) + #define __Pyx_c_diff(a, b) ((a)-(b)) + #define __Pyx_c_prod(a, b) ((a)*(b)) + #define __Pyx_c_quot(a, b) ((a)/(b)) + #define __Pyx_c_neg(a) (-(a)) + #ifdef __cplusplus + #define __Pyx_c_is_zero(z) ((z)==(double)0) + #define __Pyx_c_conj(z) (::std::conj(z)) + #if 1 + #define __Pyx_c_abs(z) (::std::abs(z)) + #define __Pyx_c_pow(a, b) (::std::pow(a, b)) + #endif + #else + #define __Pyx_c_is_zero(z) ((z)==0) + #define __Pyx_c_conj(z) (conj(z)) + #if 1 + #define __Pyx_c_abs(z) (cabs(z)) + #define __Pyx_c_pow(a, b) (cpow(a, b)) + #endif + #endif +#else + static CYTHON_INLINE int __Pyx_c_eq(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg(__pyx_t_double_complex); + static CYTHON_INLINE int __Pyx_c_is_zero(__pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj(__pyx_t_double_complex); + #if 1 + static CYTHON_INLINE double __Pyx_c_abs(__pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow(__pyx_t_double_complex, __pyx_t_double_complex); + #endif +#endif + +static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); + +static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type); + +static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb); + +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg); + +#define __Pyx_Generator_USED +#include <structmember.h> +#include <frameobject.h> +typedef PyObject *(*__pyx_generator_body_t)(PyObject *, PyObject *); +typedef struct { + PyObject_HEAD + __pyx_generator_body_t body; + PyObject *closure; + PyObject *exc_type; + PyObject *exc_value; + PyObject *exc_traceback; + PyObject *gi_weakreflist; + PyObject *classobj; + PyObject *yieldfrom; + PyObject *gi_name; + PyObject *gi_qualname; + int resume_label; + char is_running; +} __pyx_GeneratorObject; +static __pyx_GeneratorObject *__Pyx_Generator_New(__pyx_generator_body_t body, + PyObject *closure, PyObject *name, PyObject *qualname); +static int __pyx_Generator_init(void); +static int __Pyx_Generator_clear(PyObject* self); +#if 1 || PY_VERSION_HEX < 0x030300B0 +static int __Pyx_PyGen_FetchStopIterationValue(PyObject **pvalue); +#else +#define __Pyx_PyGen_FetchStopIterationValue(pvalue) PyGen_FetchStopIterationValue(pvalue) +#endif + +static int __Pyx_check_binary_version(void); + +#if !defined(__Pyx_PyIdentifier_FromString) +#if PY_MAJOR_VERSION < 3 + #define __Pyx_PyIdentifier_FromString(s) PyString_FromString(s) +#else + #define __Pyx_PyIdentifier_FromString(s) PyUnicode_FromString(s) +#endif +#endif + +static PyObject *__Pyx_ImportModule(const char *name); + +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name, size_t size, int strict); + +static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); + + +/* Module declarations from 'cpython.buffer' */ + +/* Module declarations from 'cpython.ref' */ + +/* Module declarations from 'libc.string' */ + +/* Module declarations from 'libc.stdio' */ + +/* Module declarations from 'cpython.object' */ + +/* Module declarations from '__builtin__' */ + +/* Module declarations from 'cpython.type' */ +static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0; + +/* Module declarations from 'libc.stdlib' */ + +/* Module declarations from 'numpy' */ + +/* Module declarations from 'numpy' */ +static PyTypeObject *__pyx_ptype_5numpy_dtype = 0; +static PyTypeObject *__pyx_ptype_5numpy_flatiter = 0; +static PyTypeObject *__pyx_ptype_5numpy_broadcast = 0; +static PyTypeObject *__pyx_ptype_5numpy_ndarray = 0; +static PyTypeObject *__pyx_ptype_5numpy_ufunc = 0; +static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *, char *, char *, int *); /*proto*/ + +/* Module declarations from 'libc.math' */ + +/* Module declarations from 'ml' */ +static PyTypeObject *__pyx_ptype_2ml___pyx_scope_struct__ml = 0; +static PyTypeObject *__pyx_ptype_2ml___pyx_scope_struct_1_genexpr = 0; +static __pyx_t_2ml_DTYPE_t __pyx_f_2ml_weight_success(int, int, __pyx_t_2ml_DTYPE_t, __pyx_t_2ml_DTYPE_t, __pyx_t_2ml_DTYPE_t); /*proto*/ +static __pyx_t_2ml_DTYPE_t __pyx_f_2ml_weight_failure(int, int, __pyx_t_2ml_DTYPE_t, __pyx_t_2ml_DTYPE_t, __pyx_t_2ml_DTYPE_t); /*proto*/ +static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_2ml_DTYPE_t = { "DTYPE_t", NULL, sizeof(__pyx_t_2ml_DTYPE_t), { 0 }, 0, 'R', 0, 0 }; +#define __Pyx_MODULE_NAME "ml" +int __pyx_module_is_main_ml = 0; + +/* Implementation of 'ml' */ +static PyObject *__pyx_builtin_enumerate; +static PyObject *__pyx_builtin_sum; +static PyObject *__pyx_builtin_max; +static PyObject *__pyx_builtin_xrange; +static PyObject *__pyx_builtin_ValueError; +static PyObject *__pyx_builtin_range; +static PyObject *__pyx_builtin_RuntimeError; +static PyObject *__pyx_pf_2ml_2ml_genexpr(PyObject *__pyx_self); /* proto */ +static PyObject *__pyx_pf_2ml_ml(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_root_victims, PyObject *__pyx_v_victims, PyObject *__pyx_v_non_victims, __pyx_t_2ml_DTYPE_t __pyx_v_age, __pyx_t_2ml_DTYPE_t __pyx_v_alpha, __pyx_t_2ml_DTYPE_t __pyx_v_delta, __pyx_t_2ml_DTYPE_t __pyx_v_gamma); /* proto */ +static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /* proto */ +static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info); /* proto */ +static PyObject *__pyx_tp_new_2ml___pyx_scope_struct__ml(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_2ml___pyx_scope_struct_1_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static char __pyx_k_B[] = "B"; +static char __pyx_k_H[] = "H"; +static char __pyx_k_I[] = "I"; +static char __pyx_k_L[] = "L"; +static char __pyx_k_O[] = "O"; +static char __pyx_k_Q[] = "Q"; +static char __pyx_k_b[] = "b"; +static char __pyx_k_d[] = "d"; +static char __pyx_k_f[] = "f"; +static char __pyx_k_g[] = "g"; +static char __pyx_k_h[] = "h"; +static char __pyx_k_i[] = "i"; +static char __pyx_k_l[] = "l"; +static char __pyx_k_q[] = "q"; +static char __pyx_k_t[] = "t"; +static char __pyx_k_Zd[] = "Zd"; +static char __pyx_k_Zf[] = "Zf"; +static char __pyx_k_Zg[] = "Zg"; +static char __pyx_k_dt[] = "dt"; +static char __pyx_k_ll[] = "ll"; +static char __pyx_k_ml[] = "ml"; +static char __pyx_k_np[] = "np"; +static char __pyx_k_age[] = "age"; +static char __pyx_k_end[] = "end"; +static char __pyx_k_max[] = "max"; +static char __pyx_k_sum[] = "sum"; +static char __pyx_k_args[] = "args"; +static char __pyx_k_beta[] = "beta"; +static char __pyx_k_cums[] = "cums"; +static char __pyx_k_dist[] = "dist"; +static char __pyx_k_file[] = "file"; +static char __pyx_k_main[] = "__main__"; +static char __pyx_k_send[] = "send"; +static char __pyx_k_sort[] = "sort"; +static char __pyx_k_test[] = "__test__"; +static char __pyx_k_DTYPE[] = "DTYPE"; +static char __pyx_k_alpha[] = "alpha"; +static char __pyx_k_beta2[] = "beta2"; +static char __pyx_k_close[] = "close"; +static char __pyx_k_delta[] = "delta"; +static char __pyx_k_dtype[] = "dtype"; +static char __pyx_k_gamma[] = "gamma"; +static char __pyx_k_numpy[] = "numpy"; +static char __pyx_k_print[] = "print"; +static char __pyx_k_probs[] = "probs"; +static char __pyx_k_range[] = "range"; +static char __pyx_k_roots[] = "roots"; +static char __pyx_k_throw[] = "throw"; +static char __pyx_k_zeros[] = "zeros"; +static char __pyx_k_cumsum[] = "cumsum"; +static char __pyx_k_format[] = "format"; +static char __pyx_k_import[] = "__import__"; +static char __pyx_k_xrange[] = "xrange"; +static char __pyx_k_float64[] = "float64"; +static char __pyx_k_genexpr[] = "genexpr"; +static char __pyx_k_n_nodes[] = "n_nodes"; +static char __pyx_k_n_roots[] = "n_roots"; +static char __pyx_k_parents[] = "parents"; +static char __pyx_k_victims[] = "victims"; +static char __pyx_k_failures[] = "failures"; +static char __pyx_k_probs_nv[] = "probs_nv"; +static char __pyx_k_enumerate[] = "enumerate"; +static char __pyx_k_n_victims[] = "n_victims"; +static char __pyx_k_successes[] = "successes"; +static char __pyx_k_ValueError[] = "ValueError"; +static char __pyx_k_itervalues[] = "itervalues"; +static char __pyx_k_probs_fail[] = "probs_fail"; +static char __pyx_k_non_victims[] = "non_victims"; +static char __pyx_k_RuntimeError[] = "RuntimeError"; +static char __pyx_k_all_failures[] = "all_failures"; +static char __pyx_k_root_victims[] = "root_victims"; +static char __pyx_k_ml_locals_genexpr[] = "ml.<locals>.genexpr"; +static char __pyx_k_ndarray_is_not_C_contiguous[] = "ndarray is not C contiguous"; +static char __pyx_k_Users_ben_Documents_Cascade_Pro[] = "/Users/ben/Documents/Cascade Project/criminal_cascades/experiments/ml.pyx"; +static char __pyx_k_unknown_dtype_code_in_numpy_pxd[] = "unknown dtype code in numpy.pxd (%d)"; +static char __pyx_k_Format_string_allocated_too_shor[] = "Format string allocated too short, see comment in numpy.pxd"; +static char __pyx_k_Non_native_byte_order_not_suppor[] = "Non-native byte order not supported"; +static char __pyx_k_alpha_0_delta_1_Everyone_is_a_ro[] = "alpha: {0}, delta: {1}. Everyone is a root"; +static char __pyx_k_ndarray_is_not_Fortran_contiguou[] = "ndarray is not Fortran contiguous"; +static char __pyx_k_Format_string_allocated_too_shor_2[] = "Format string allocated too short."; +static PyObject *__pyx_n_s_DTYPE; +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor; +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor_2; +static PyObject *__pyx_kp_u_Non_native_byte_order_not_suppor; +static PyObject *__pyx_n_s_RuntimeError; +static PyObject *__pyx_kp_s_Users_ben_Documents_Cascade_Pro; +static PyObject *__pyx_n_s_ValueError; +static PyObject *__pyx_n_s_age; +static PyObject *__pyx_n_s_all_failures; +static PyObject *__pyx_n_s_alpha; +static PyObject *__pyx_kp_s_alpha_0_delta_1_Everyone_is_a_ro; +static PyObject *__pyx_n_s_args; +static PyObject *__pyx_n_s_beta; +static PyObject *__pyx_n_s_beta2; +static PyObject *__pyx_n_s_close; +static PyObject *__pyx_n_s_cums; +static PyObject *__pyx_n_s_cumsum; +static PyObject *__pyx_n_s_delta; +static PyObject *__pyx_n_s_dist; +static PyObject *__pyx_n_s_dt; +static PyObject *__pyx_n_s_dtype; +static PyObject *__pyx_n_s_end; +static PyObject *__pyx_n_s_enumerate; +static PyObject *__pyx_n_s_failures; +static PyObject *__pyx_n_s_file; +static PyObject *__pyx_n_s_float64; +static PyObject *__pyx_n_s_format; +static PyObject *__pyx_n_s_gamma; +static PyObject *__pyx_n_s_genexpr; +static PyObject *__pyx_n_s_i; +static PyObject *__pyx_n_s_import; +static PyObject *__pyx_n_s_itervalues; +static PyObject *__pyx_n_s_l; +static PyObject *__pyx_n_s_ll; +static PyObject *__pyx_n_s_main; +static PyObject *__pyx_n_s_max; +static PyObject *__pyx_n_s_ml; +static PyObject *__pyx_n_s_ml_locals_genexpr; +static PyObject *__pyx_n_s_n_nodes; +static PyObject *__pyx_n_s_n_roots; +static PyObject *__pyx_n_s_n_victims; +static PyObject *__pyx_kp_u_ndarray_is_not_C_contiguous; +static PyObject *__pyx_kp_u_ndarray_is_not_Fortran_contiguou; +static PyObject *__pyx_n_s_non_victims; +static PyObject *__pyx_n_s_np; +static PyObject *__pyx_n_s_numpy; +static PyObject *__pyx_n_s_parents; +static PyObject *__pyx_n_s_print; +static PyObject *__pyx_n_s_probs; +static PyObject *__pyx_n_s_probs_fail; +static PyObject *__pyx_n_s_probs_nv; +static PyObject *__pyx_n_s_range; +static PyObject *__pyx_n_s_root_victims; +static PyObject *__pyx_n_s_roots; +static PyObject *__pyx_n_s_send; +static PyObject *__pyx_n_s_sort; +static PyObject *__pyx_n_s_successes; +static PyObject *__pyx_n_s_sum; +static PyObject *__pyx_n_s_t; +static PyObject *__pyx_n_s_test; +static PyObject *__pyx_n_s_throw; +static PyObject *__pyx_kp_u_unknown_dtype_code_in_numpy_pxd; +static PyObject *__pyx_n_s_victims; +static PyObject *__pyx_n_s_xrange; +static PyObject *__pyx_n_s_zeros; +static PyObject *__pyx_int_neg_1; +static PyObject *__pyx_slice_; +static PyObject *__pyx_tuple__2; +static PyObject *__pyx_tuple__3; +static PyObject *__pyx_tuple__4; +static PyObject *__pyx_tuple__5; +static PyObject *__pyx_tuple__6; +static PyObject *__pyx_tuple__7; +static PyObject *__pyx_tuple__8; +static PyObject *__pyx_codeobj__9; + +/* "ml.pyx":10 + * + * + * cdef DTYPE_t weight_success(int dist, int dt, DTYPE_t alpha, # <<<<<<<<<<<<<< + * DTYPE_t delta, DTYPE_t gamma): + * """weight for successful infection, exponential time model""" + */ + +static __pyx_t_2ml_DTYPE_t __pyx_f_2ml_weight_success(int __pyx_v_dist, int __pyx_v_dt, __pyx_t_2ml_DTYPE_t __pyx_v_alpha, __pyx_t_2ml_DTYPE_t __pyx_v_delta, CYTHON_UNUSED __pyx_t_2ml_DTYPE_t __pyx_v_gamma) { + __pyx_t_2ml_DTYPE_t __pyx_v_structural; + __pyx_t_2ml_DTYPE_t __pyx_v_temporal; + __pyx_t_2ml_DTYPE_t __pyx_v_result; + __pyx_t_2ml_DTYPE_t __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("weight_success", 0); + + /* "ml.pyx":14 + * """weight for successful infection, exponential time model""" + * cdef DTYPE_t structural, temporal, result + * structural = delta ** (dist) # <<<<<<<<<<<<<< + * temporal = exp(-alpha * dt) * (1 - exp(-alpha)) + * result = log(structural * temporal) + */ + __pyx_v_structural = pow(__pyx_v_delta, ((__pyx_t_2ml_DTYPE_t)__pyx_v_dist)); + + /* "ml.pyx":15 + * cdef DTYPE_t structural, temporal, result + * structural = delta ** (dist) + * temporal = exp(-alpha * dt) * (1 - exp(-alpha)) # <<<<<<<<<<<<<< + * result = log(structural * temporal) + * return result + */ + __pyx_v_temporal = (exp(((-__pyx_v_alpha) * __pyx_v_dt)) * (1.0 - exp((-__pyx_v_alpha)))); + + /* "ml.pyx":16 + * structural = delta ** (dist) + * temporal = exp(-alpha * dt) * (1 - exp(-alpha)) + * result = log(structural * temporal) # <<<<<<<<<<<<<< + * return result + * + */ + __pyx_v_result = log((__pyx_v_structural * __pyx_v_temporal)); + + /* "ml.pyx":17 + * temporal = exp(-alpha * dt) * (1 - exp(-alpha)) + * result = log(structural * temporal) + * return result # <<<<<<<<<<<<<< + * + * + */ + __pyx_r = __pyx_v_result; + goto __pyx_L0; + + /* "ml.pyx":10 + * + * + * cdef DTYPE_t weight_success(int dist, int dt, DTYPE_t alpha, # <<<<<<<<<<<<<< + * DTYPE_t delta, DTYPE_t gamma): + * """weight for successful infection, exponential time model""" + */ + + /* function exit code */ + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "ml.pyx":20 + * + * + * cdef DTYPE_t weight_success_power(int dist, int dt, DTYPE_t alpha, # <<<<<<<<<<<<<< + * DTYPE_t delta, DTYPE_t gamma): + * """weight for successful infection, power-law time model""" + */ + +static __pyx_t_2ml_DTYPE_t __pyx_f_2ml_weight_success_power(int __pyx_v_dist, int __pyx_v_dt, __pyx_t_2ml_DTYPE_t __pyx_v_alpha, __pyx_t_2ml_DTYPE_t __pyx_v_delta, CYTHON_UNUSED __pyx_t_2ml_DTYPE_t __pyx_v_gamma) { + __pyx_t_2ml_DTYPE_t __pyx_v_structural; + __pyx_t_2ml_DTYPE_t __pyx_v_temporal; + __pyx_t_2ml_DTYPE_t __pyx_v_result; + __pyx_t_2ml_DTYPE_t __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("weight_success_power", 0); + + /* "ml.pyx":24 + * """weight for successful infection, power-law time model""" + * cdef DTYPE_t structural, temporal, result + * structural = delta ** (dist) # <<<<<<<<<<<<<< + * temporal = 1. / (1. + (dt - 1.)/alpha)**0.01 - 1. / (1. + dt/alpha)**0.01 + * result = log(structural * temporal) + */ + __pyx_v_structural = pow(__pyx_v_delta, ((__pyx_t_2ml_DTYPE_t)__pyx_v_dist)); + + /* "ml.pyx":25 + * cdef DTYPE_t structural, temporal, result + * structural = delta ** (dist) + * temporal = 1. / (1. + (dt - 1.)/alpha)**0.01 - 1. / (1. + dt/alpha)**0.01 # <<<<<<<<<<<<<< + * result = log(structural * temporal) + * return result + */ + __pyx_v_temporal = ((1. / pow(((double)(1. + ((__pyx_v_dt - 1.) / __pyx_v_alpha))), 0.01)) - (1. / pow(((double)(1. + (__pyx_v_dt / __pyx_v_alpha))), 0.01))); + + /* "ml.pyx":26 + * structural = delta ** (dist) + * temporal = 1. / (1. + (dt - 1.)/alpha)**0.01 - 1. / (1. + dt/alpha)**0.01 + * result = log(structural * temporal) # <<<<<<<<<<<<<< + * return result + * + */ + __pyx_v_result = log((__pyx_v_structural * __pyx_v_temporal)); + + /* "ml.pyx":27 + * temporal = 1. / (1. + (dt - 1.)/alpha)**0.01 - 1. / (1. + dt/alpha)**0.01 + * result = log(structural * temporal) + * return result # <<<<<<<<<<<<<< + * + * + */ + __pyx_r = __pyx_v_result; + goto __pyx_L0; + + /* "ml.pyx":20 + * + * + * cdef DTYPE_t weight_success_power(int dist, int dt, DTYPE_t alpha, # <<<<<<<<<<<<<< + * DTYPE_t delta, DTYPE_t gamma): + * """weight for successful infection, power-law time model""" + */ + + /* function exit code */ + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "ml.pyx":30 + * + * + * cdef DTYPE_t weight_failure(int dist, int dt, DTYPE_t alpha, # <<<<<<<<<<<<<< + * DTYPE_t delta, DTYPE_t gamma): + * """weight for failed infection, exponential time model""" + */ + +static __pyx_t_2ml_DTYPE_t __pyx_f_2ml_weight_failure(int __pyx_v_dist, int __pyx_v_dt, __pyx_t_2ml_DTYPE_t __pyx_v_alpha, __pyx_t_2ml_DTYPE_t __pyx_v_delta, CYTHON_UNUSED __pyx_t_2ml_DTYPE_t __pyx_v_gamma) { + __pyx_t_2ml_DTYPE_t __pyx_v_structural; + __pyx_t_2ml_DTYPE_t __pyx_v_temporal; + __pyx_t_2ml_DTYPE_t __pyx_v_result; + __pyx_t_2ml_DTYPE_t __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("weight_failure", 0); + + /* "ml.pyx":34 + * """weight for failed infection, exponential time model""" + * cdef DTYPE_t structural, temporal, result + * structural = delta ** (dist) # <<<<<<<<<<<<<< + * temporal = 1. - exp(-alpha * dt) + * #result = log(1. - structural) + */ + __pyx_v_structural = pow(__pyx_v_delta, ((__pyx_t_2ml_DTYPE_t)__pyx_v_dist)); + + /* "ml.pyx":35 + * cdef DTYPE_t structural, temporal, result + * structural = delta ** (dist) + * temporal = 1. - exp(-alpha * dt) # <<<<<<<<<<<<<< + * #result = log(1. - structural) + * result = log(1. - structural * temporal) + */ + __pyx_v_temporal = (1. - exp(((-__pyx_v_alpha) * __pyx_v_dt))); + + /* "ml.pyx":37 + * temporal = 1. - exp(-alpha * dt) + * #result = log(1. - structural) + * result = log(1. - structural * temporal) # <<<<<<<<<<<<<< + * return result + * + */ + __pyx_v_result = log((1. - (__pyx_v_structural * __pyx_v_temporal))); + + /* "ml.pyx":38 + * #result = log(1. - structural) + * result = log(1. - structural * temporal) + * return result # <<<<<<<<<<<<<< + * + * + */ + __pyx_r = __pyx_v_result; + goto __pyx_L0; + + /* "ml.pyx":30 + * + * + * cdef DTYPE_t weight_failure(int dist, int dt, DTYPE_t alpha, # <<<<<<<<<<<<<< + * DTYPE_t delta, DTYPE_t gamma): + * """weight for failed infection, exponential time model""" + */ + + /* function exit code */ + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "ml.pyx":41 + * + * + * cdef DTYPE_t weight_failure_power(int dist, int dt, DTYPE_t alpha, # <<<<<<<<<<<<<< + * DTYPE_t delta, DTYPE_t gamma): + * """weight for failed infection, power-law time model""" + */ + +static __pyx_t_2ml_DTYPE_t __pyx_f_2ml_weight_failure_power(int __pyx_v_dist, int __pyx_v_dt, __pyx_t_2ml_DTYPE_t __pyx_v_alpha, __pyx_t_2ml_DTYPE_t __pyx_v_delta, CYTHON_UNUSED __pyx_t_2ml_DTYPE_t __pyx_v_gamma) { + __pyx_t_2ml_DTYPE_t __pyx_v_structural; + __pyx_t_2ml_DTYPE_t __pyx_v_temporal; + __pyx_t_2ml_DTYPE_t __pyx_v_result; + __pyx_t_2ml_DTYPE_t __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("weight_failure_power", 0); + + /* "ml.pyx":45 + * """weight for failed infection, power-law time model""" + * cdef DTYPE_t structural, temporal, result + * structural = delta ** (dist) # <<<<<<<<<<<<<< + * temporal = 1. - 1. / (1. + dt/alpha)**0.01 + * result = log(1. - structural * temporal) + */ + __pyx_v_structural = pow(__pyx_v_delta, ((__pyx_t_2ml_DTYPE_t)__pyx_v_dist)); + + /* "ml.pyx":46 + * cdef DTYPE_t structural, temporal, result + * structural = delta ** (dist) + * temporal = 1. - 1. / (1. + dt/alpha)**0.01 # <<<<<<<<<<<<<< + * result = log(1. - structural * temporal) + * return result + */ + __pyx_v_temporal = (1. - (1. / pow(((double)(1. + (__pyx_v_dt / __pyx_v_alpha))), 0.01))); + + /* "ml.pyx":47 + * structural = delta ** (dist) + * temporal = 1. - 1. / (1. + dt/alpha)**0.01 + * result = log(1. - structural * temporal) # <<<<<<<<<<<<<< + * return result + * + */ + __pyx_v_result = log((1. - (__pyx_v_structural * __pyx_v_temporal))); + + /* "ml.pyx":48 + * temporal = 1. - 1. / (1. + dt/alpha)**0.01 + * result = log(1. - structural * temporal) + * return result # <<<<<<<<<<<<<< + * + * def ml(dict root_victims, dict victims, dict non_victims, DTYPE_t age, + */ + __pyx_r = __pyx_v_result; + goto __pyx_L0; + + /* "ml.pyx":41 + * + * + * cdef DTYPE_t weight_failure_power(int dist, int dt, DTYPE_t alpha, # <<<<<<<<<<<<<< + * DTYPE_t delta, DTYPE_t gamma): + * """weight for failed infection, power-law time model""" + */ + + /* function exit code */ + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "ml.pyx":50 + * return result + * + * def ml(dict root_victims, dict victims, dict non_victims, DTYPE_t age, # <<<<<<<<<<<<<< + * DTYPE_t alpha, DTYPE_t delta, DTYPE_t gamma=10): + * cdef: + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_2ml_1ml(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static PyMethodDef __pyx_mdef_2ml_1ml = {"ml", (PyCFunction)__pyx_pw_2ml_1ml, METH_VARARGS|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_2ml_1ml(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + PyObject *__pyx_v_root_victims = 0; + PyObject *__pyx_v_victims = 0; + PyObject *__pyx_v_non_victims = 0; + __pyx_t_2ml_DTYPE_t __pyx_v_age; + __pyx_t_2ml_DTYPE_t __pyx_v_alpha; + __pyx_t_2ml_DTYPE_t __pyx_v_delta; + __pyx_t_2ml_DTYPE_t __pyx_v_gamma; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ml (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_root_victims,&__pyx_n_s_victims,&__pyx_n_s_non_victims,&__pyx_n_s_age,&__pyx_n_s_alpha,&__pyx_n_s_delta,&__pyx_n_s_gamma,0}; + PyObject* values[7] = {0,0,0,0,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 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_root_victims)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + case 1: + if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_victims)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ml", 0, 6, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } + case 2: + if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_non_victims)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ml", 0, 6, 7, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } + case 3: + if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_age)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ml", 0, 6, 7, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } + case 4: + if (likely((values[4] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ml", 0, 6, 7, 4); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } + case 5: + if (likely((values[5] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_delta)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ml", 0, 6, 7, 5); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } + case 6: + if (kw_args > 0) { + PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gamma); + if (value) { values[6] = value; kw_args--; } + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ml") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + values[3] = PyTuple_GET_ITEM(__pyx_args, 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_root_victims = ((PyObject*)values[0]); + __pyx_v_victims = ((PyObject*)values[1]); + __pyx_v_non_victims = ((PyObject*)values[2]); + __pyx_v_age = __pyx_PyFloat_AsDouble(values[3]); if (unlikely((__pyx_v_age == (npy_double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_alpha = __pyx_PyFloat_AsDouble(values[4]); if (unlikely((__pyx_v_alpha == (npy_double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_delta = __pyx_PyFloat_AsDouble(values[5]); if (unlikely((__pyx_v_delta == (npy_double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (values[6]) { + __pyx_v_gamma = __pyx_PyFloat_AsDouble(values[6]); if (unlikely((__pyx_v_gamma == (npy_double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } else { + __pyx_v_gamma = ((__pyx_t_2ml_DTYPE_t)10.0); + } + } + goto __pyx_L4_argument_unpacking_done; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("ml", 0, 6, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_L3_error:; + __Pyx_AddTraceback("ml.ml", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_root_victims), (&PyDict_Type), 1, "root_victims", 1))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_victims), (&PyDict_Type), 1, "victims", 1))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_non_victims), (&PyDict_Type), 1, "non_victims", 1))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_r = __pyx_pf_2ml_ml(__pyx_self, __pyx_v_root_victims, __pyx_v_victims, __pyx_v_non_victims, __pyx_v_age, __pyx_v_alpha, __pyx_v_delta, __pyx_v_gamma); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} +static PyObject *__pyx_gb_2ml_2ml_2generator(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */ + +/* "ml.pyx":71 + * successes = [weight_success(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] + * probs[i] = max(s - failures[l] for l, s in enumerate(successes)) # <<<<<<<<<<<<<< + * probs_fail[i] = all_failures + * + */ + +static PyObject *__pyx_pf_2ml_2ml_genexpr(PyObject *__pyx_self) { + struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *__pyx_cur_scope; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("genexpr", 0); + __pyx_cur_scope = (struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *)__pyx_tp_new_2ml___pyx_scope_struct_1_genexpr(__pyx_ptype_2ml___pyx_scope_struct_1_genexpr, __pyx_empty_tuple, NULL); + if (unlikely(!__pyx_cur_scope)) { + __Pyx_RefNannyFinishContext(); + return NULL; + } + __Pyx_GOTREF(__pyx_cur_scope); + __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_2ml___pyx_scope_struct__ml *) __pyx_self; + __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope)); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope); + { + __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_2ml_2ml_2generator, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_ml_locals_genexpr); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_cur_scope); + __Pyx_RefNannyFinishContext(); + return (PyObject *) gen; + } + + /* function exit code */ + __pyx_L1_error:; + __Pyx_AddTraceback("ml.ml.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_gb_2ml_2ml_2generator(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */ +{ + struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *__pyx_cur_scope = ((struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *)__pyx_generator->closure); + PyObject *__pyx_r = NULL; + Py_ssize_t __pyx_t_1; + PyObject *__pyx_t_2 = NULL; + Py_ssize_t __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("None", 0); + switch (__pyx_generator->resume_label) { + case 0: goto __pyx_L3_first_run; + case 1: goto __pyx_L6_resume_from_yield; + default: /* CPython raises the right error here */ + __Pyx_RefNannyFinishContext(); + return NULL; + } + __pyx_L3_first_run:; + if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = 0; + if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_successes)) { __Pyx_RaiseClosureNameError("successes"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } + __pyx_t_2 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_successes; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; + for (;;) { + if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; + #if CYTHON_COMPILING_IN_CPYTHON + __pyx_t_4 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_4); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #else + __pyx_t_4 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_s); + __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_s, __pyx_t_4); + __Pyx_GIVEREF(__pyx_t_4); + __pyx_t_4 = 0; + __pyx_cur_scope->__pyx_v_l = __pyx_t_1; + __pyx_t_1 = (__pyx_t_1 + 1); + if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_failures)) { __Pyx_RaiseClosureNameError("failures"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } + if (unlikely(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_failures == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_4 = __Pyx_GetItemInt_List(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_failures, __pyx_cur_scope->__pyx_v_l, Py_ssize_t, 1, PyInt_FromSsize_t, 1, 1, 0); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = PyNumber_Subtract(__pyx_cur_scope->__pyx_v_s, __pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_r = __pyx_t_5; + __pyx_t_5 = 0; + __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; + __Pyx_XGIVEREF(__pyx_t_2); + __pyx_cur_scope->__pyx_t_1 = __pyx_t_2; + __pyx_cur_scope->__pyx_t_2 = __pyx_t_3; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + /* return from generator, yielding value */ + __pyx_generator->resume_label = 1; + return __pyx_r; + __pyx_L6_resume_from_yield:; + __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; + __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; + __pyx_cur_scope->__pyx_t_1 = 0; + __Pyx_XGOTREF(__pyx_t_2); + __pyx_t_3 = __pyx_cur_scope->__pyx_t_2; + if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* function exit code */ + PyErr_SetNone(PyExc_StopIteration); + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_L0:; + __Pyx_XDECREF(__pyx_r); + __pyx_generator->resume_label = -1; + __Pyx_Generator_clear((PyObject*)__pyx_generator); + __Pyx_RefNannyFinishContext(); + return NULL; +} + +/* "ml.pyx":50 + * return result + * + * def ml(dict root_victims, dict victims, dict non_victims, DTYPE_t age, # <<<<<<<<<<<<<< + * DTYPE_t alpha, DTYPE_t delta, DTYPE_t gamma=10): + * cdef: + */ + +static PyObject *__pyx_pf_2ml_ml(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_root_victims, PyObject *__pyx_v_victims, PyObject *__pyx_v_non_victims, __pyx_t_2ml_DTYPE_t __pyx_v_age, __pyx_t_2ml_DTYPE_t __pyx_v_alpha, __pyx_t_2ml_DTYPE_t __pyx_v_delta, __pyx_t_2ml_DTYPE_t __pyx_v_gamma) { + struct __pyx_obj_2ml___pyx_scope_struct__ml *__pyx_cur_scope; + int __pyx_v_n_roots; + int __pyx_v_n_victims; + CYTHON_UNUSED int __pyx_v_n_nodes; + int __pyx_v_roots; + int __pyx_v_i; + int __pyx_v_dist; + int __pyx_v_dt; + __pyx_t_2ml_DTYPE_t __pyx_v_beta; + __pyx_t_2ml_DTYPE_t __pyx_v_all_failures; + __pyx_t_2ml_DTYPE_t __pyx_v_ll; + PyObject *__pyx_v_parents = 0; + PyArrayObject *__pyx_v_probs = 0; + PyArrayObject *__pyx_v_probs_fail = 0; + PyArrayObject *__pyx_v_probs_nv = 0; + PyArrayObject *__pyx_v_cums = 0; + __Pyx_LocalBuf_ND __pyx_pybuffernd_cums; + __Pyx_Buffer __pyx_pybuffer_cums; + __Pyx_LocalBuf_ND __pyx_pybuffernd_probs; + __Pyx_Buffer __pyx_pybuffer_probs; + __Pyx_LocalBuf_ND __pyx_pybuffernd_probs_fail; + __Pyx_Buffer __pyx_pybuffer_probs_fail; + __Pyx_LocalBuf_ND __pyx_pybuffernd_probs_nv; + __Pyx_Buffer __pyx_pybuffer_probs_nv; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + Py_ssize_t __pyx_t_1; + Py_ssize_t __pyx_t_2; + PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyArrayObject *__pyx_t_7 = NULL; + PyArrayObject *__pyx_t_8 = NULL; + PyArrayObject *__pyx_t_9 = NULL; + int __pyx_t_10; + int __pyx_t_11; + int __pyx_t_12; + Py_ssize_t __pyx_t_13; + PyObject *__pyx_t_14 = NULL; + PyObject *__pyx_t_15 = NULL; + PyObject *__pyx_t_16 = NULL; + PyObject *(*__pyx_t_17)(PyObject *); + int __pyx_t_18; + __pyx_t_2ml_DTYPE_t __pyx_t_19; + int __pyx_t_20; + int __pyx_t_21; + PyObject *__pyx_t_22 = NULL; + PyObject *__pyx_t_23 = NULL; + PyObject *__pyx_t_24 = NULL; + PyArrayObject *__pyx_t_25 = NULL; + int __pyx_t_26; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ml", 0); + __pyx_cur_scope = (struct __pyx_obj_2ml___pyx_scope_struct__ml *)__pyx_tp_new_2ml___pyx_scope_struct__ml(__pyx_ptype_2ml___pyx_scope_struct__ml, __pyx_empty_tuple, NULL); + if (unlikely(!__pyx_cur_scope)) { + __Pyx_RefNannyFinishContext(); + return NULL; + } + __Pyx_GOTREF(__pyx_cur_scope); + __pyx_pybuffer_probs.pybuffer.buf = NULL; + __pyx_pybuffer_probs.refcount = 0; + __pyx_pybuffernd_probs.data = NULL; + __pyx_pybuffernd_probs.rcbuffer = &__pyx_pybuffer_probs; + __pyx_pybuffer_probs_fail.pybuffer.buf = NULL; + __pyx_pybuffer_probs_fail.refcount = 0; + __pyx_pybuffernd_probs_fail.data = NULL; + __pyx_pybuffernd_probs_fail.rcbuffer = &__pyx_pybuffer_probs_fail; + __pyx_pybuffer_probs_nv.pybuffer.buf = NULL; + __pyx_pybuffer_probs_nv.refcount = 0; + __pyx_pybuffernd_probs_nv.data = NULL; + __pyx_pybuffernd_probs_nv.rcbuffer = &__pyx_pybuffer_probs_nv; + __pyx_pybuffer_cums.pybuffer.buf = NULL; + __pyx_pybuffer_cums.refcount = 0; + __pyx_pybuffernd_cums.data = NULL; + __pyx_pybuffernd_cums.rcbuffer = &__pyx_pybuffer_cums; + + /* "ml.pyx":56 + * DTYPE_t beta, all_failures, ll, beta2 + * list parents, failures, successes + * n_roots, n_victims = len(root_victims), len(victims) # <<<<<<<<<<<<<< + * n_nodes = n_victims + len(non_victims) + n_roots + * cdef: + */ + if (unlikely(__pyx_v_root_victims == Py_None)) { + PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_1 = PyDict_Size(__pyx_v_root_victims); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(__pyx_v_victims == Py_None)) { + PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_2 = PyDict_Size(__pyx_v_victims); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_v_n_roots = __pyx_t_1; + __pyx_v_n_victims = __pyx_t_2; + + /* "ml.pyx":57 + * list parents, failures, successes + * n_roots, n_victims = len(root_victims), len(victims) + * n_nodes = n_victims + len(non_victims) + n_roots # <<<<<<<<<<<<<< + * cdef: + * np.ndarray[DTYPE_t] probs = np.zeros(n_victims, dtype=DTYPE) + */ + if (unlikely(__pyx_v_non_victims == Py_None)) { + PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_2 = PyDict_Size(__pyx_v_non_victims); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_v_n_nodes = ((__pyx_v_n_victims + __pyx_t_2) + __pyx_v_n_roots); + + /* "ml.pyx":59 + * n_nodes = n_victims + len(non_victims) + n_roots + * cdef: + * np.ndarray[DTYPE_t] probs = np.zeros(n_victims, dtype=DTYPE) # <<<<<<<<<<<<<< + * np.ndarray[DTYPE_t] probs_fail = np.zeros(n_victims, dtype=DTYPE) + * np.ndarray[DTYPE_t] probs_nv = np.zeros(len(non_victims), dtype=DTYPE) + */ + __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_n_victims); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); + __Pyx_GIVEREF(__pyx_t_3); + __pyx_t_3 = 0; + __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_DTYPE); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_dtype, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = ((PyArrayObject *)__pyx_t_6); + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_probs.rcbuffer->pybuffer, (PyObject*)__pyx_t_7, &__Pyx_TypeInfo_nn___pyx_t_2ml_DTYPE_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { + __pyx_v_probs = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_probs.rcbuffer->pybuffer.buf = NULL; + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } else {__pyx_pybuffernd_probs.diminfo[0].strides = __pyx_pybuffernd_probs.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_probs.diminfo[0].shape = __pyx_pybuffernd_probs.rcbuffer->pybuffer.shape[0]; + } + } + __pyx_t_7 = 0; + __pyx_v_probs = ((PyArrayObject *)__pyx_t_6); + __pyx_t_6 = 0; + + /* "ml.pyx":60 + * cdef: + * np.ndarray[DTYPE_t] probs = np.zeros(n_victims, dtype=DTYPE) + * np.ndarray[DTYPE_t] probs_fail = np.zeros(n_victims, dtype=DTYPE) # <<<<<<<<<<<<<< + * np.ndarray[DTYPE_t] probs_nv = np.zeros(len(non_victims), dtype=DTYPE) + * for i, parents in enumerate(victims.itervalues()): + */ + __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_v_n_victims); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); + __Pyx_GIVEREF(__pyx_t_6); + __pyx_t_6 = 0; + __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_DTYPE); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_8 = ((PyArrayObject *)__pyx_t_4); + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_probs_fail.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_2ml_DTYPE_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { + __pyx_v_probs_fail = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_probs_fail.rcbuffer->pybuffer.buf = NULL; + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } else {__pyx_pybuffernd_probs_fail.diminfo[0].strides = __pyx_pybuffernd_probs_fail.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_probs_fail.diminfo[0].shape = __pyx_pybuffernd_probs_fail.rcbuffer->pybuffer.shape[0]; + } + } + __pyx_t_8 = 0; + __pyx_v_probs_fail = ((PyArrayObject *)__pyx_t_4); + __pyx_t_4 = 0; + + /* "ml.pyx":61 + * np.ndarray[DTYPE_t] probs = np.zeros(n_victims, dtype=DTYPE) + * np.ndarray[DTYPE_t] probs_fail = np.zeros(n_victims, dtype=DTYPE) + * np.ndarray[DTYPE_t] probs_nv = np.zeros(len(non_victims), dtype=DTYPE) # <<<<<<<<<<<<<< + * for i, parents in enumerate(victims.itervalues()): + * # for each victim node i, compute the probability that all its parents + */ + __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(__pyx_v_non_victims == Py_None)) { + PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_2 = PyDict_Size(__pyx_v_non_victims); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); + __Pyx_GIVEREF(__pyx_t_4); + __pyx_t_4 = 0; + __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_DTYPE); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_5numpy_ndarray))))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = ((PyArrayObject *)__pyx_t_3); + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_probs_nv.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_2ml_DTYPE_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { + __pyx_v_probs_nv = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_probs_nv.rcbuffer->pybuffer.buf = NULL; + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } else {__pyx_pybuffernd_probs_nv.diminfo[0].strides = __pyx_pybuffernd_probs_nv.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_probs_nv.diminfo[0].shape = __pyx_pybuffernd_probs_nv.rcbuffer->pybuffer.shape[0]; + } + } + __pyx_t_9 = 0; + __pyx_v_probs_nv = ((PyArrayObject *)__pyx_t_3); + __pyx_t_3 = 0; + + /* "ml.pyx":62 + * np.ndarray[DTYPE_t] probs_fail = np.zeros(n_victims, dtype=DTYPE) + * np.ndarray[DTYPE_t] probs_nv = np.zeros(len(non_victims), dtype=DTYPE) + * for i, parents in enumerate(victims.itervalues()): # <<<<<<<<<<<<<< + * # for each victim node i, compute the probability that all its parents + * # fail to infect it, also computes the probability that its most + */ + __pyx_t_10 = 0; + __pyx_t_2 = 0; + if (unlikely(__pyx_v_victims == Py_None)) { + PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "itervalues"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_4 = __Pyx_dict_iterator(__pyx_v_victims, 1, __pyx_n_s_itervalues, (&__pyx_t_1), (&__pyx_t_11)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_3); + __pyx_t_3 = __pyx_t_4; + __pyx_t_4 = 0; + while (1) { + __pyx_t_12 = __Pyx_dict_iter_next(__pyx_t_3, __pyx_t_1, &__pyx_t_2, NULL, &__pyx_t_4, NULL, __pyx_t_11); + if (unlikely(__pyx_t_12 == 0)) break; + if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + if (!(likely(PyList_CheckExact(__pyx_t_4))||((__pyx_t_4) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "list", Py_TYPE(__pyx_t_4)->tp_name), 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_XDECREF_SET(__pyx_v_parents, ((PyObject*)__pyx_t_4)); + __pyx_t_4 = 0; + __pyx_v_i = __pyx_t_10; + __pyx_t_10 = (__pyx_t_10 + 1); + + /* "ml.pyx":66 + * # fail to infect it, also computes the probability that its most + * # likely parent infects it + * failures = [weight_failure(dist, dt, alpha, delta, gamma) # <<<<<<<<<<<<<< + * for (dist, dt) in parents] + * all_failures = sum(failures) + */ + __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + + /* "ml.pyx":67 + * # likely parent infects it + * failures = [weight_failure(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] # <<<<<<<<<<<<<< + * all_failures = sum(failures) + * successes = [weight_success(dist, dt, alpha, delta, gamma) + */ + if (unlikely(__pyx_v_parents == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_5 = __pyx_v_parents; __Pyx_INCREF(__pyx_t_5); __pyx_t_13 = 0; + for (;;) { + if (__pyx_t_13 >= PyList_GET_SIZE(__pyx_t_5)) break; + #if CYTHON_COMPILING_IN_CPYTHON + __pyx_t_6 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_13); __Pyx_INCREF(__pyx_t_6); __pyx_t_13++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #else + __pyx_t_6 = PySequence_ITEM(__pyx_t_5, __pyx_t_13); __pyx_t_13++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { + PyObject* sequence = __pyx_t_6; + #if CYTHON_COMPILING_IN_CPYTHON + Py_ssize_t size = Py_SIZE(sequence); + #else + Py_ssize_t size = PySequence_Size(sequence); + #endif + if (unlikely(size != 2)) { + if (size > 2) __Pyx_RaiseTooManyValuesError(2); + else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + #if CYTHON_COMPILING_IN_CPYTHON + if (likely(PyTuple_CheckExact(sequence))) { + __pyx_t_14 = PyTuple_GET_ITEM(sequence, 0); + __pyx_t_15 = PyTuple_GET_ITEM(sequence, 1); + } else { + __pyx_t_14 = PyList_GET_ITEM(sequence, 0); + __pyx_t_15 = PyList_GET_ITEM(sequence, 1); + } + __Pyx_INCREF(__pyx_t_14); + __Pyx_INCREF(__pyx_t_15); + #else + __pyx_t_14 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_14); + __pyx_t_15 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_15); + #endif + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + } else { + Py_ssize_t index = -1; + __pyx_t_16 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_16); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_17 = Py_TYPE(__pyx_t_16)->tp_iternext; + index = 0; __pyx_t_14 = __pyx_t_17(__pyx_t_16); if (unlikely(!__pyx_t_14)) goto __pyx_L7_unpacking_failed; + __Pyx_GOTREF(__pyx_t_14); + index = 1; __pyx_t_15 = __pyx_t_17(__pyx_t_16); if (unlikely(!__pyx_t_15)) goto __pyx_L7_unpacking_failed; + __Pyx_GOTREF(__pyx_t_15); + if (__Pyx_IternextUnpackEndCheck(__pyx_t_17(__pyx_t_16), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_17 = NULL; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + goto __pyx_L8_unpacking_done; + __pyx_L7_unpacking_failed:; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + __pyx_t_17 = NULL; + if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_L8_unpacking_done:; + } + __pyx_t_12 = __Pyx_PyInt_As_int(__pyx_t_14); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __pyx_t_18 = __Pyx_PyInt_As_int(__pyx_t_15); if (unlikely((__pyx_t_18 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_v_dist = __pyx_t_12; + __pyx_v_dt = __pyx_t_18; + + /* "ml.pyx":66 + * # fail to infect it, also computes the probability that its most + * # likely parent infects it + * failures = [weight_failure(dist, dt, alpha, delta, gamma) # <<<<<<<<<<<<<< + * for (dist, dt) in parents] + * all_failures = sum(failures) + */ + __pyx_t_6 = PyFloat_FromDouble(__pyx_f_2ml_weight_failure(__pyx_v_dist, __pyx_v_dt, __pyx_v_alpha, __pyx_v_delta, __pyx_v_gamma)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_6))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + + /* "ml.pyx":67 + * # likely parent infects it + * failures = [weight_failure(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] # <<<<<<<<<<<<<< + * all_failures = sum(failures) + * successes = [weight_success(dist, dt, alpha, delta, gamma) + */ + } + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_failures); + __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_failures, ((PyObject*)__pyx_t_4)); + __Pyx_GIVEREF(__pyx_t_4); + __pyx_t_4 = 0; + + /* "ml.pyx":68 + * failures = [weight_failure(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] + * all_failures = sum(failures) # <<<<<<<<<<<<<< + * successes = [weight_success(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] + */ + __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_failures); + PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_cur_scope->__pyx_v_failures); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_failures); + __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_sum, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_19 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_19 == (npy_double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_v_all_failures = __pyx_t_19; + + /* "ml.pyx":69 + * for (dist, dt) in parents] + * all_failures = sum(failures) + * successes = [weight_success(dist, dt, alpha, delta, gamma) # <<<<<<<<<<<<<< + * for (dist, dt) in parents] + * probs[i] = max(s - failures[l] for l, s in enumerate(successes)) + */ + __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + + /* "ml.pyx":70 + * all_failures = sum(failures) + * successes = [weight_success(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] # <<<<<<<<<<<<<< + * probs[i] = max(s - failures[l] for l, s in enumerate(successes)) + * probs_fail[i] = all_failures + */ + if (unlikely(__pyx_v_parents == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_4 = __pyx_v_parents; __Pyx_INCREF(__pyx_t_4); __pyx_t_13 = 0; + for (;;) { + if (__pyx_t_13 >= PyList_GET_SIZE(__pyx_t_4)) break; + #if CYTHON_COMPILING_IN_CPYTHON + __pyx_t_6 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_13); __Pyx_INCREF(__pyx_t_6); __pyx_t_13++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #else + __pyx_t_6 = PySequence_ITEM(__pyx_t_4, __pyx_t_13); __pyx_t_13++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { + PyObject* sequence = __pyx_t_6; + #if CYTHON_COMPILING_IN_CPYTHON + Py_ssize_t size = Py_SIZE(sequence); + #else + Py_ssize_t size = PySequence_Size(sequence); + #endif + if (unlikely(size != 2)) { + if (size > 2) __Pyx_RaiseTooManyValuesError(2); + else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + #if CYTHON_COMPILING_IN_CPYTHON + if (likely(PyTuple_CheckExact(sequence))) { + __pyx_t_15 = PyTuple_GET_ITEM(sequence, 0); + __pyx_t_14 = PyTuple_GET_ITEM(sequence, 1); + } else { + __pyx_t_15 = PyList_GET_ITEM(sequence, 0); + __pyx_t_14 = PyList_GET_ITEM(sequence, 1); + } + __Pyx_INCREF(__pyx_t_15); + __Pyx_INCREF(__pyx_t_14); + #else + __pyx_t_15 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_15); + __pyx_t_14 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_14); + #endif + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + } else { + Py_ssize_t index = -1; + __pyx_t_16 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_16); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_17 = Py_TYPE(__pyx_t_16)->tp_iternext; + index = 0; __pyx_t_15 = __pyx_t_17(__pyx_t_16); if (unlikely(!__pyx_t_15)) goto __pyx_L11_unpacking_failed; + __Pyx_GOTREF(__pyx_t_15); + index = 1; __pyx_t_14 = __pyx_t_17(__pyx_t_16); if (unlikely(!__pyx_t_14)) goto __pyx_L11_unpacking_failed; + __Pyx_GOTREF(__pyx_t_14); + if (__Pyx_IternextUnpackEndCheck(__pyx_t_17(__pyx_t_16), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_17 = NULL; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + goto __pyx_L12_unpacking_done; + __pyx_L11_unpacking_failed:; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + __pyx_t_17 = NULL; + if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_L12_unpacking_done:; + } + __pyx_t_18 = __Pyx_PyInt_As_int(__pyx_t_15); if (unlikely((__pyx_t_18 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_t_12 = __Pyx_PyInt_As_int(__pyx_t_14); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __pyx_v_dist = __pyx_t_18; + __pyx_v_dt = __pyx_t_12; + + /* "ml.pyx":69 + * for (dist, dt) in parents] + * all_failures = sum(failures) + * successes = [weight_success(dist, dt, alpha, delta, gamma) # <<<<<<<<<<<<<< + * for (dist, dt) in parents] + * probs[i] = max(s - failures[l] for l, s in enumerate(successes)) + */ + __pyx_t_6 = PyFloat_FromDouble(__pyx_f_2ml_weight_success(__pyx_v_dist, __pyx_v_dt, __pyx_v_alpha, __pyx_v_delta, __pyx_v_gamma)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + if (unlikely(__Pyx_ListComp_Append(__pyx_t_5, (PyObject*)__pyx_t_6))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + + /* "ml.pyx":70 + * all_failures = sum(failures) + * successes = [weight_success(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] # <<<<<<<<<<<<<< + * probs[i] = max(s - failures[l] for l, s in enumerate(successes)) + * probs_fail[i] = all_failures + */ + } + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_successes); + __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_successes, ((PyObject*)__pyx_t_5)); + __Pyx_GIVEREF(__pyx_t_5); + __pyx_t_5 = 0; + + /* "ml.pyx":71 + * successes = [weight_success(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] + * probs[i] = max(s - failures[l] for l, s in enumerate(successes)) # <<<<<<<<<<<<<< + * probs_fail[i] = all_failures + * + */ + __pyx_t_5 = __pyx_pf_2ml_2ml_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); + __Pyx_GIVEREF(__pyx_t_5); + __pyx_t_5 = 0; + __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_max, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_19 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_19 == (npy_double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_12 = __pyx_v_i; + if (__pyx_t_12 < 0) __pyx_t_12 += __pyx_pybuffernd_probs.diminfo[0].shape; + *__Pyx_BufPtrStrided1d(__pyx_t_2ml_DTYPE_t *, __pyx_pybuffernd_probs.rcbuffer->pybuffer.buf, __pyx_t_12, __pyx_pybuffernd_probs.diminfo[0].strides) = __pyx_t_19; + + /* "ml.pyx":72 + * for (dist, dt) in parents] + * probs[i] = max(s - failures[l] for l, s in enumerate(successes)) + * probs_fail[i] = all_failures # <<<<<<<<<<<<<< + * + * for i, parents in enumerate(non_victims.itervalues()): + */ + __pyx_t_18 = __pyx_v_i; + if (__pyx_t_18 < 0) __pyx_t_18 += __pyx_pybuffernd_probs_fail.diminfo[0].shape; + *__Pyx_BufPtrStrided1d(__pyx_t_2ml_DTYPE_t *, __pyx_pybuffernd_probs_fail.rcbuffer->pybuffer.buf, __pyx_t_18, __pyx_pybuffernd_probs_fail.diminfo[0].strides) = __pyx_v_all_failures; + } + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + + /* "ml.pyx":74 + * probs_fail[i] = all_failures + * + * for i, parents in enumerate(non_victims.itervalues()): # <<<<<<<<<<<<<< + * # for each non victim node, compute the probability that all its + * # parents fail to infect it + */ + __pyx_t_10 = 0; + __pyx_t_1 = 0; + if (unlikely(__pyx_v_non_victims == Py_None)) { + PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "itervalues"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_5 = __Pyx_dict_iterator(__pyx_v_non_victims, 1, __pyx_n_s_itervalues, (&__pyx_t_2), (&__pyx_t_11)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_3); + __pyx_t_3 = __pyx_t_5; + __pyx_t_5 = 0; + while (1) { + __pyx_t_20 = __Pyx_dict_iter_next(__pyx_t_3, __pyx_t_2, &__pyx_t_1, NULL, &__pyx_t_5, NULL, __pyx_t_11); + if (unlikely(__pyx_t_20 == 0)) break; + if (unlikely(__pyx_t_20 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + if (!(likely(PyList_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "list", Py_TYPE(__pyx_t_5)->tp_name), 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_XDECREF_SET(__pyx_v_parents, ((PyObject*)__pyx_t_5)); + __pyx_t_5 = 0; + __pyx_v_i = __pyx_t_10; + __pyx_t_10 = (__pyx_t_10 + 1); + + /* "ml.pyx":77 + * # for each non victim node, compute the probability that all its + * # parents fail to infect it + * failures = [weight_failure(dist, dt, alpha, delta, gamma) # <<<<<<<<<<<<<< + * for (dist, dt) in parents] + * probs_nv[i] = sum(failures) + */ + __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + + /* "ml.pyx":78 + * # parents fail to infect it + * failures = [weight_failure(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] # <<<<<<<<<<<<<< + * probs_nv[i] = sum(failures) + * probs.sort() + */ + if (unlikely(__pyx_v_parents == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_4 = __pyx_v_parents; __Pyx_INCREF(__pyx_t_4); __pyx_t_13 = 0; + for (;;) { + if (__pyx_t_13 >= PyList_GET_SIZE(__pyx_t_4)) break; + #if CYTHON_COMPILING_IN_CPYTHON + __pyx_t_6 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_13); __Pyx_INCREF(__pyx_t_6); __pyx_t_13++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #else + __pyx_t_6 = PySequence_ITEM(__pyx_t_4, __pyx_t_13); __pyx_t_13++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { + PyObject* sequence = __pyx_t_6; + #if CYTHON_COMPILING_IN_CPYTHON + Py_ssize_t size = Py_SIZE(sequence); + #else + Py_ssize_t size = PySequence_Size(sequence); + #endif + if (unlikely(size != 2)) { + if (size > 2) __Pyx_RaiseTooManyValuesError(2); + else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + #if CYTHON_COMPILING_IN_CPYTHON + if (likely(PyTuple_CheckExact(sequence))) { + __pyx_t_14 = PyTuple_GET_ITEM(sequence, 0); + __pyx_t_15 = PyTuple_GET_ITEM(sequence, 1); + } else { + __pyx_t_14 = PyList_GET_ITEM(sequence, 0); + __pyx_t_15 = PyList_GET_ITEM(sequence, 1); + } + __Pyx_INCREF(__pyx_t_14); + __Pyx_INCREF(__pyx_t_15); + #else + __pyx_t_14 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_14); + __pyx_t_15 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_15); + #endif + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + } else { + Py_ssize_t index = -1; + __pyx_t_16 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_16); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_17 = Py_TYPE(__pyx_t_16)->tp_iternext; + index = 0; __pyx_t_14 = __pyx_t_17(__pyx_t_16); if (unlikely(!__pyx_t_14)) goto __pyx_L17_unpacking_failed; + __Pyx_GOTREF(__pyx_t_14); + index = 1; __pyx_t_15 = __pyx_t_17(__pyx_t_16); if (unlikely(!__pyx_t_15)) goto __pyx_L17_unpacking_failed; + __Pyx_GOTREF(__pyx_t_15); + if (__Pyx_IternextUnpackEndCheck(__pyx_t_17(__pyx_t_16), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_17 = NULL; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + goto __pyx_L18_unpacking_done; + __pyx_L17_unpacking_failed:; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + __pyx_t_17 = NULL; + if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_L18_unpacking_done:; + } + __pyx_t_20 = __Pyx_PyInt_As_int(__pyx_t_14); if (unlikely((__pyx_t_20 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __pyx_t_21 = __Pyx_PyInt_As_int(__pyx_t_15); if (unlikely((__pyx_t_21 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_v_dist = __pyx_t_20; + __pyx_v_dt = __pyx_t_21; + + /* "ml.pyx":77 + * # for each non victim node, compute the probability that all its + * # parents fail to infect it + * failures = [weight_failure(dist, dt, alpha, delta, gamma) # <<<<<<<<<<<<<< + * for (dist, dt) in parents] + * probs_nv[i] = sum(failures) + */ + __pyx_t_6 = PyFloat_FromDouble(__pyx_f_2ml_weight_failure(__pyx_v_dist, __pyx_v_dt, __pyx_v_alpha, __pyx_v_delta, __pyx_v_gamma)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + if (unlikely(__Pyx_ListComp_Append(__pyx_t_5, (PyObject*)__pyx_t_6))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + + /* "ml.pyx":78 + * # parents fail to infect it + * failures = [weight_failure(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] # <<<<<<<<<<<<<< + * probs_nv[i] = sum(failures) + * probs.sort() + */ + } + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_failures); + __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_failures, ((PyObject*)__pyx_t_5)); + __Pyx_GIVEREF(__pyx_t_5); + __pyx_t_5 = 0; + + /* "ml.pyx":79 + * failures = [weight_failure(dist, dt, alpha, delta, gamma) + * for (dist, dt) in parents] + * probs_nv[i] = sum(failures) # <<<<<<<<<<<<<< + * probs.sort() + * probs = probs[::-1] + */ + __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_failures); + PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_cur_scope->__pyx_v_failures); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_failures); + __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_sum, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_19 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_19 == (npy_double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_21 = __pyx_v_i; + if (__pyx_t_21 < 0) __pyx_t_21 += __pyx_pybuffernd_probs_nv.diminfo[0].shape; + *__Pyx_BufPtrStrided1d(__pyx_t_2ml_DTYPE_t *, __pyx_pybuffernd_probs_nv.rcbuffer->pybuffer.buf, __pyx_t_21, __pyx_pybuffernd_probs_nv.diminfo[0].strides) = __pyx_t_19; + } + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + + /* "ml.pyx":80 + * for (dist, dt) in parents] + * probs_nv[i] = sum(failures) + * probs.sort() # <<<<<<<<<<<<<< + * probs = probs[::-1] + * cdef: + */ + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_probs), __pyx_n_s_sort); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = NULL; + if (CYTHON_COMPILING_IN_CPYTHON && 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_5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + } else { + __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __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; + + /* "ml.pyx":81 + * probs_nv[i] = sum(failures) + * probs.sort() + * probs = probs[::-1] # <<<<<<<<<<<<<< + * cdef: + * np.ndarray[DTYPE_t] cums = probs.cumsum() + */ + __pyx_t_3 = PyObject_GetItem(((PyObject *)__pyx_v_probs), __pyx_slice_); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __Pyx_GOTREF(__pyx_t_3); + if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_5numpy_ndarray))))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = ((PyArrayObject *)__pyx_t_3); + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_probs.rcbuffer->pybuffer); + __pyx_t_10 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_probs.rcbuffer->pybuffer, (PyObject*)__pyx_t_7, &__Pyx_TypeInfo_nn___pyx_t_2ml_DTYPE_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); + if (unlikely(__pyx_t_10 < 0)) { + PyErr_Fetch(&__pyx_t_22, &__pyx_t_23, &__pyx_t_24); + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_probs.rcbuffer->pybuffer, (PyObject*)__pyx_v_probs, &__Pyx_TypeInfo_nn___pyx_t_2ml_DTYPE_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { + Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_24); + __Pyx_RaiseBufferFallbackError(); + } else { + PyErr_Restore(__pyx_t_22, __pyx_t_23, __pyx_t_24); + } + } + __pyx_pybuffernd_probs.diminfo[0].strides = __pyx_pybuffernd_probs.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_probs.diminfo[0].shape = __pyx_pybuffernd_probs.rcbuffer->pybuffer.shape[0]; + if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_7 = 0; + __Pyx_DECREF_SET(__pyx_v_probs, ((PyArrayObject *)__pyx_t_3)); + __pyx_t_3 = 0; + + /* "ml.pyx":83 + * probs = probs[::-1] + * cdef: + * np.ndarray[DTYPE_t] cums = probs.cumsum() # <<<<<<<<<<<<<< + * ll = probs_fail.sum() + * ll += probs_nv.sum() + */ + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_probs), __pyx_n_s_cumsum); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = NULL; + if (CYTHON_COMPILING_IN_CPYTHON && 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_5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + } else { + __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_5numpy_ndarray))))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_25 = ((PyArrayObject *)__pyx_t_3); + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_cums.rcbuffer->pybuffer, (PyObject*)__pyx_t_25, &__Pyx_TypeInfo_nn___pyx_t_2ml_DTYPE_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { + __pyx_v_cums = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_cums.rcbuffer->pybuffer.buf = NULL; + {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } else {__pyx_pybuffernd_cums.diminfo[0].strides = __pyx_pybuffernd_cums.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_cums.diminfo[0].shape = __pyx_pybuffernd_cums.rcbuffer->pybuffer.shape[0]; + } + } + __pyx_t_25 = 0; + __pyx_v_cums = ((PyArrayObject *)__pyx_t_3); + __pyx_t_3 = 0; + + /* "ml.pyx":84 + * cdef: + * np.ndarray[DTYPE_t] cums = probs.cumsum() + * ll = probs_fail.sum() # <<<<<<<<<<<<<< + * ll += probs_nv.sum() + * + */ + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_probs_fail), __pyx_n_s_sum); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = NULL; + if (CYTHON_COMPILING_IN_CPYTHON && 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_5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + } else { + __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_19 = __pyx_PyFloat_AsDouble(__pyx_t_3); if (unlikely((__pyx_t_19 == (npy_double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_v_ll = __pyx_t_19; + + /* "ml.pyx":85 + * np.ndarray[DTYPE_t] cums = probs.cumsum() + * ll = probs_fail.sum() + * ll += probs_nv.sum() # <<<<<<<<<<<<<< + * + * for i in xrange(n_victims - 1, 0, -1): + */ + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_ll); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_probs_nv), __pyx_n_s_sum); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_COMPILING_IN_CPYTHON && likely(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_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + } else { + __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_19 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_19 == (npy_double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_v_ll = __pyx_t_19; + + /* "ml.pyx":87 + * ll += probs_nv.sum() + * + * for i in xrange(n_victims - 1, 0, -1): # <<<<<<<<<<<<<< + * # iterate over all victim nodes to find the optimal threshold + * roots = n_roots + n_victims - 1 - i + */ + for (__pyx_t_10 = (__pyx_v_n_victims - 1); __pyx_t_10 > 0; __pyx_t_10-=1) { + __pyx_v_i = __pyx_t_10; + + /* "ml.pyx":89 + * for i in xrange(n_victims - 1, 0, -1): + * # iterate over all victim nodes to find the optimal threshold + * roots = n_roots + n_victims - 1 - i # <<<<<<<<<<<<<< + * beta = 1. / (1. + exp(-probs[i])) + * if beta > float(roots) / age: + */ + __pyx_v_roots = (((__pyx_v_n_roots + __pyx_v_n_victims) - 1) - __pyx_v_i); + + /* "ml.pyx":90 + * # iterate over all victim nodes to find the optimal threshold + * roots = n_roots + n_victims - 1 - i + * beta = 1. / (1. + exp(-probs[i])) # <<<<<<<<<<<<<< + * if beta > float(roots) / age: + * break + */ + __pyx_t_11 = __pyx_v_i; + if (__pyx_t_11 < 0) __pyx_t_11 += __pyx_pybuffernd_probs.diminfo[0].shape; + __pyx_v_beta = (1. / (1. + exp((-(*__Pyx_BufPtrStrided1d(__pyx_t_2ml_DTYPE_t *, __pyx_pybuffernd_probs.rcbuffer->pybuffer.buf, __pyx_t_11, __pyx_pybuffernd_probs.diminfo[0].strides)))))); + + /* "ml.pyx":91 + * roots = n_roots + n_victims - 1 - i + * beta = 1. / (1. + exp(-probs[i])) + * if beta > float(roots) / age: # <<<<<<<<<<<<<< + * break + * else: + */ + __pyx_t_26 = ((__pyx_v_beta > (((double)__pyx_v_roots) / __pyx_v_age)) != 0); + if (__pyx_t_26) { + + /* "ml.pyx":92 + * beta = 1. / (1. + exp(-probs[i])) + * if beta > float(roots) / age: + * break # <<<<<<<<<<<<<< + * else: + * print "alpha: {0}, delta: {1}. Everyone is a root".format(alpha, delta) + */ + goto __pyx_L20_break; + } + } + /*else*/ { + + /* "ml.pyx":94 + * break + * else: + * print "alpha: {0}, delta: {1}. Everyone is a root".format(alpha, delta) # <<<<<<<<<<<<<< + * roots = n_victims + n_roots + * i = -1 + */ + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_alpha_0_delta_1_Everyone_is_a_ro, __pyx_n_s_format); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_alpha); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_delta); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_15 = NULL; + __pyx_t_2 = 0; + if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_4); + if (likely(__pyx_t_15)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_15); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_4, function); + __pyx_t_2 = 1; + } + } + __pyx_t_14 = PyTuple_New(2+__pyx_t_2); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_14); + if (__pyx_t_15) { + PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_15); __Pyx_GIVEREF(__pyx_t_15); __pyx_t_15 = NULL; + } + PyTuple_SET_ITEM(__pyx_t_14, 0+__pyx_t_2, __pyx_t_3); + __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_14, 1+__pyx_t_2, __pyx_t_6); + __Pyx_GIVEREF(__pyx_t_6); + __pyx_t_3 = 0; + __pyx_t_6 = 0; + __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_14, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__Pyx_PrintOne(0, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + + /* "ml.pyx":95 + * else: + * print "alpha: {0}, delta: {1}. Everyone is a root".format(alpha, delta) + * roots = n_victims + n_roots # <<<<<<<<<<<<<< + * i = -1 + * beta = float(roots) / age + */ + __pyx_v_roots = (__pyx_v_n_victims + __pyx_v_n_roots); + + /* "ml.pyx":96 + * print "alpha: {0}, delta: {1}. Everyone is a root".format(alpha, delta) + * roots = n_victims + n_roots + * i = -1 # <<<<<<<<<<<<<< + * beta = float(roots) / age + * for i in xrange(n_victims - 1, 0, -1): + */ + __pyx_v_i = -1; + } + __pyx_L20_break:; + + /* "ml.pyx":97 + * roots = n_victims + n_roots + * i = -1 + * beta = float(roots) / age # <<<<<<<<<<<<<< + * for i in xrange(n_victims - 1, 0, -1): + * if probs[i] >= log(beta/(1.- beta)): + */ + __pyx_v_beta = (((double)__pyx_v_roots) / __pyx_v_age); + + /* "ml.pyx":98 + * i = -1 + * beta = float(roots) / age + * for i in xrange(n_victims - 1, 0, -1): # <<<<<<<<<<<<<< + * if probs[i] >= log(beta/(1.- beta)): + * break + */ + for (__pyx_t_10 = (__pyx_v_n_victims - 1); __pyx_t_10 > 0; __pyx_t_10-=1) { + __pyx_v_i = __pyx_t_10; + + /* "ml.pyx":99 + * beta = float(roots) / age + * for i in xrange(n_victims - 1, 0, -1): + * if probs[i] >= log(beta/(1.- beta)): # <<<<<<<<<<<<<< + * break + * ll += age * log(1 - beta) + */ + __pyx_t_20 = __pyx_v_i; + if (__pyx_t_20 < 0) __pyx_t_20 += __pyx_pybuffernd_probs.diminfo[0].shape; + __pyx_t_26 = (((*__Pyx_BufPtrStrided1d(__pyx_t_2ml_DTYPE_t *, __pyx_pybuffernd_probs.rcbuffer->pybuffer.buf, __pyx_t_20, __pyx_pybuffernd_probs.diminfo[0].strides)) >= log((__pyx_v_beta / (1. - __pyx_v_beta)))) != 0); + if (__pyx_t_26) { + + /* "ml.pyx":100 + * for i in xrange(n_victims - 1, 0, -1): + * if probs[i] >= log(beta/(1.- beta)): + * break # <<<<<<<<<<<<<< + * ll += age * log(1 - beta) + * if i >= 0: + */ + goto __pyx_L23_break; + } + } + __pyx_L23_break:; + + /* "ml.pyx":101 + * if probs[i] >= log(beta/(1.- beta)): + * break + * ll += age * log(1 - beta) # <<<<<<<<<<<<<< + * if i >= 0: + * ll += cums[i] + */ + __pyx_v_ll = (__pyx_v_ll + (__pyx_v_age * log((1.0 - __pyx_v_beta)))); + + /* "ml.pyx":102 + * break + * ll += age * log(1 - beta) + * if i >= 0: # <<<<<<<<<<<<<< + * ll += cums[i] + * if roots > 0: + */ + __pyx_t_26 = ((__pyx_v_i >= 0) != 0); + if (__pyx_t_26) { + + /* "ml.pyx":103 + * ll += age * log(1 - beta) + * if i >= 0: + * ll += cums[i] # <<<<<<<<<<<<<< + * if roots > 0: + * ll += roots * log(beta) - roots * log(1 - beta) + */ + __pyx_t_10 = __pyx_v_i; + if (__pyx_t_10 < 0) __pyx_t_10 += __pyx_pybuffernd_cums.diminfo[0].shape; + __pyx_v_ll = (__pyx_v_ll + (*__Pyx_BufPtrStrided1d(__pyx_t_2ml_DTYPE_t *, __pyx_pybuffernd_cums.rcbuffer->pybuffer.buf, __pyx_t_10, __pyx_pybuffernd_cums.diminfo[0].strides))); + goto __pyx_L25; + } + __pyx_L25:; + + /* "ml.pyx":104 + * if i >= 0: + * ll += cums[i] + * if roots > 0: # <<<<<<<<<<<<<< + * ll += roots * log(beta) - roots * log(1 - beta) + * return (beta, roots, ll) + */ + __pyx_t_26 = ((__pyx_v_roots > 0) != 0); + if (__pyx_t_26) { + + /* "ml.pyx":105 + * ll += cums[i] + * if roots > 0: + * ll += roots * log(beta) - roots * log(1 - beta) # <<<<<<<<<<<<<< + * return (beta, roots, ll) + */ + __pyx_v_ll = (__pyx_v_ll + ((__pyx_v_roots * log(__pyx_v_beta)) - (__pyx_v_roots * log((1.0 - __pyx_v_beta))))); + goto __pyx_L26; + } + __pyx_L26:; + + /* "ml.pyx":106 + * if roots > 0: + * ll += roots * log(beta) - roots * log(1 - beta) + * return (beta, roots, ll) # <<<<<<<<<<<<<< + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_5 = PyFloat_FromDouble(__pyx_v_beta); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_roots); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_14 = PyFloat_FromDouble(__pyx_v_ll); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_14); + __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); + __Pyx_GIVEREF(__pyx_t_5); + PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_4); + __Pyx_GIVEREF(__pyx_t_4); + PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_14); + __Pyx_GIVEREF(__pyx_t_14); + __pyx_t_5 = 0; + __pyx_t_4 = 0; + __pyx_t_14 = 0; + __pyx_r = __pyx_t_6; + __pyx_t_6 = 0; + goto __pyx_L0; + + /* "ml.pyx":50 + * return result + * + * def ml(dict root_victims, dict victims, dict non_victims, DTYPE_t age, # <<<<<<<<<<<<<< + * DTYPE_t alpha, DTYPE_t delta, DTYPE_t gamma=10): + * cdef: + */ + + /* 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_14); + __Pyx_XDECREF(__pyx_t_15); + __Pyx_XDECREF(__pyx_t_16); + { PyObject *__pyx_type, *__pyx_value, *__pyx_tb; + __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_cums.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_probs.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_probs_fail.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_probs_nv.rcbuffer->pybuffer); + __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);} + __Pyx_AddTraceback("ml.ml", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + goto __pyx_L2; + __pyx_L0:; + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_cums.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_probs.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_probs_fail.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_probs_nv.rcbuffer->pybuffer); + __pyx_L2:; + __Pyx_XDECREF(__pyx_v_parents); + __Pyx_XDECREF((PyObject *)__pyx_v_probs); + __Pyx_XDECREF((PyObject *)__pyx_v_probs_fail); + __Pyx_XDECREF((PyObject *)__pyx_v_probs_nv); + __Pyx_XDECREF((PyObject *)__pyx_v_cums); + __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":197 + * # experimental exception made for __getbuffer__ and __releasebuffer__ + * # -- the details of this may change. + * def __getbuffer__(ndarray self, Py_buffer* info, int flags): # <<<<<<<<<<<<<< + * # This implementation of getbuffer is geared towards Cython + * # requirements, and does not yet fullfill the PEP. + */ + +/* Python wrapper */ +static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /*proto*/ +static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getbuffer__ (wrapper)", 0); + __pyx_r = __pyx_pf_5numpy_7ndarray___getbuffer__(((PyArrayObject *)__pyx_v_self), ((Py_buffer *)__pyx_v_info), ((int)__pyx_v_flags)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) { + int __pyx_v_copy_shape; + int __pyx_v_i; + int __pyx_v_ndim; + int __pyx_v_endian_detector; + int __pyx_v_little_endian; + int __pyx_v_t; + char *__pyx_v_f; + PyArray_Descr *__pyx_v_descr = 0; + int __pyx_v_offset; + int __pyx_v_hasfields; + int __pyx_r; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; + PyObject *__pyx_t_3 = NULL; + int __pyx_t_4; + int __pyx_t_5; + PyObject *__pyx_t_6 = NULL; + char *__pyx_t_7; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getbuffer__", 0); + if (__pyx_v_info != NULL) { + __pyx_v_info->obj = Py_None; __Pyx_INCREF(Py_None); + __Pyx_GIVEREF(__pyx_v_info->obj); + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":203 + * # of flags + * + * if info == NULL: return # <<<<<<<<<<<<<< + * + * cdef int copy_shape, i, ndim + */ + __pyx_t_1 = ((__pyx_v_info == NULL) != 0); + if (__pyx_t_1) { + __pyx_r = 0; + goto __pyx_L0; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":206 + * + * cdef int copy_shape, i, ndim + * cdef int endian_detector = 1 # <<<<<<<<<<<<<< + * cdef bint little_endian = ((<char*>&endian_detector)[0] != 0) + * + */ + __pyx_v_endian_detector = 1; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":207 + * cdef int copy_shape, i, ndim + * cdef int endian_detector = 1 + * cdef bint little_endian = ((<char*>&endian_detector)[0] != 0) # <<<<<<<<<<<<<< + * + * ndim = PyArray_NDIM(self) + */ + __pyx_v_little_endian = ((((char *)(&__pyx_v_endian_detector))[0]) != 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":209 + * cdef bint little_endian = ((<char*>&endian_detector)[0] != 0) + * + * ndim = PyArray_NDIM(self) # <<<<<<<<<<<<<< + * + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + */ + __pyx_v_ndim = PyArray_NDIM(__pyx_v_self); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":211 + * ndim = PyArray_NDIM(self) + * + * if sizeof(npy_intp) != sizeof(Py_ssize_t): # <<<<<<<<<<<<<< + * copy_shape = 1 + * else: + */ + __pyx_t_1 = (((sizeof(npy_intp)) != (sizeof(Py_ssize_t))) != 0); + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":212 + * + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + * copy_shape = 1 # <<<<<<<<<<<<<< + * else: + * copy_shape = 0 + */ + __pyx_v_copy_shape = 1; + goto __pyx_L4; + } + /*else*/ { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":214 + * copy_shape = 1 + * else: + * copy_shape = 0 # <<<<<<<<<<<<<< + * + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) + */ + __pyx_v_copy_shape = 0; + } + __pyx_L4:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":216 + * copy_shape = 0 + * + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) # <<<<<<<<<<<<<< + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): + * raise ValueError(u"ndarray is not C contiguous") + */ + __pyx_t_2 = (((__pyx_v_flags & PyBUF_C_CONTIGUOUS) == PyBUF_C_CONTIGUOUS) != 0); + if (__pyx_t_2) { + } else { + __pyx_t_1 = __pyx_t_2; + goto __pyx_L6_bool_binop_done; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":217 + * + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): # <<<<<<<<<<<<<< + * raise ValueError(u"ndarray is not C contiguous") + * + */ + __pyx_t_2 = ((!(PyArray_CHKFLAGS(__pyx_v_self, NPY_C_CONTIGUOUS) != 0)) != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L6_bool_binop_done:; + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":218 + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): + * raise ValueError(u"ndarray is not C contiguous") # <<<<<<<<<<<<<< + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":220 + * raise ValueError(u"ndarray is not C contiguous") + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) # <<<<<<<<<<<<<< + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): + * raise ValueError(u"ndarray is not Fortran contiguous") + */ + __pyx_t_2 = (((__pyx_v_flags & PyBUF_F_CONTIGUOUS) == PyBUF_F_CONTIGUOUS) != 0); + if (__pyx_t_2) { + } else { + __pyx_t_1 = __pyx_t_2; + goto __pyx_L9_bool_binop_done; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":221 + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): # <<<<<<<<<<<<<< + * raise ValueError(u"ndarray is not Fortran contiguous") + * + */ + __pyx_t_2 = ((!(PyArray_CHKFLAGS(__pyx_v_self, NPY_F_CONTIGUOUS) != 0)) != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L9_bool_binop_done:; + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":222 + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): + * raise ValueError(u"ndarray is not Fortran contiguous") # <<<<<<<<<<<<<< + * + * info.buf = PyArray_DATA(self) + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":224 + * raise ValueError(u"ndarray is not Fortran contiguous") + * + * info.buf = PyArray_DATA(self) # <<<<<<<<<<<<<< + * info.ndim = ndim + * if copy_shape: + */ + __pyx_v_info->buf = PyArray_DATA(__pyx_v_self); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":225 + * + * info.buf = PyArray_DATA(self) + * info.ndim = ndim # <<<<<<<<<<<<<< + * if copy_shape: + * # Allocate new buffer for strides and shape info. + */ + __pyx_v_info->ndim = __pyx_v_ndim; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":226 + * info.buf = PyArray_DATA(self) + * info.ndim = ndim + * if copy_shape: # <<<<<<<<<<<<<< + * # Allocate new buffer for strides and shape info. + * # This is allocated as one block, strides first. + */ + __pyx_t_1 = (__pyx_v_copy_shape != 0); + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":229 + * # Allocate new buffer for strides and shape info. + * # This is allocated as one block, strides first. + * info.strides = <Py_ssize_t*>stdlib.malloc(sizeof(Py_ssize_t) * <size_t>ndim * 2) # <<<<<<<<<<<<<< + * info.shape = info.strides + ndim + * for i in range(ndim): + */ + __pyx_v_info->strides = ((Py_ssize_t *)malloc((((sizeof(Py_ssize_t)) * ((size_t)__pyx_v_ndim)) * 2))); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":230 + * # This is allocated as one block, strides first. + * info.strides = <Py_ssize_t*>stdlib.malloc(sizeof(Py_ssize_t) * <size_t>ndim * 2) + * info.shape = info.strides + ndim # <<<<<<<<<<<<<< + * for i in range(ndim): + * info.strides[i] = PyArray_STRIDES(self)[i] + */ + __pyx_v_info->shape = (__pyx_v_info->strides + __pyx_v_ndim); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":231 + * info.strides = <Py_ssize_t*>stdlib.malloc(sizeof(Py_ssize_t) * <size_t>ndim * 2) + * info.shape = info.strides + ndim + * for i in range(ndim): # <<<<<<<<<<<<<< + * info.strides[i] = PyArray_STRIDES(self)[i] + * info.shape[i] = PyArray_DIMS(self)[i] + */ + __pyx_t_4 = __pyx_v_ndim; + for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) { + __pyx_v_i = __pyx_t_5; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":232 + * info.shape = info.strides + ndim + * for i in range(ndim): + * info.strides[i] = PyArray_STRIDES(self)[i] # <<<<<<<<<<<<<< + * info.shape[i] = PyArray_DIMS(self)[i] + * else: + */ + (__pyx_v_info->strides[__pyx_v_i]) = (PyArray_STRIDES(__pyx_v_self)[__pyx_v_i]); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":233 + * for i in range(ndim): + * info.strides[i] = PyArray_STRIDES(self)[i] + * info.shape[i] = PyArray_DIMS(self)[i] # <<<<<<<<<<<<<< + * else: + * info.strides = <Py_ssize_t*>PyArray_STRIDES(self) + */ + (__pyx_v_info->shape[__pyx_v_i]) = (PyArray_DIMS(__pyx_v_self)[__pyx_v_i]); + } + goto __pyx_L11; + } + /*else*/ { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":235 + * info.shape[i] = PyArray_DIMS(self)[i] + * else: + * info.strides = <Py_ssize_t*>PyArray_STRIDES(self) # <<<<<<<<<<<<<< + * info.shape = <Py_ssize_t*>PyArray_DIMS(self) + * info.suboffsets = NULL + */ + __pyx_v_info->strides = ((Py_ssize_t *)PyArray_STRIDES(__pyx_v_self)); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":236 + * else: + * info.strides = <Py_ssize_t*>PyArray_STRIDES(self) + * info.shape = <Py_ssize_t*>PyArray_DIMS(self) # <<<<<<<<<<<<<< + * info.suboffsets = NULL + * info.itemsize = PyArray_ITEMSIZE(self) + */ + __pyx_v_info->shape = ((Py_ssize_t *)PyArray_DIMS(__pyx_v_self)); + } + __pyx_L11:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":237 + * info.strides = <Py_ssize_t*>PyArray_STRIDES(self) + * info.shape = <Py_ssize_t*>PyArray_DIMS(self) + * info.suboffsets = NULL # <<<<<<<<<<<<<< + * info.itemsize = PyArray_ITEMSIZE(self) + * info.readonly = not PyArray_ISWRITEABLE(self) + */ + __pyx_v_info->suboffsets = NULL; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":238 + * info.shape = <Py_ssize_t*>PyArray_DIMS(self) + * info.suboffsets = NULL + * info.itemsize = PyArray_ITEMSIZE(self) # <<<<<<<<<<<<<< + * info.readonly = not PyArray_ISWRITEABLE(self) + * + */ + __pyx_v_info->itemsize = PyArray_ITEMSIZE(__pyx_v_self); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":239 + * info.suboffsets = NULL + * info.itemsize = PyArray_ITEMSIZE(self) + * info.readonly = not PyArray_ISWRITEABLE(self) # <<<<<<<<<<<<<< + * + * cdef int t + */ + __pyx_v_info->readonly = (!(PyArray_ISWRITEABLE(__pyx_v_self) != 0)); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":242 + * + * cdef int t + * cdef char* f = NULL # <<<<<<<<<<<<<< + * cdef dtype descr = self.descr + * cdef list stack + */ + __pyx_v_f = NULL; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":243 + * cdef int t + * cdef char* f = NULL + * cdef dtype descr = self.descr # <<<<<<<<<<<<<< + * cdef list stack + * cdef int offset + */ + __pyx_t_3 = ((PyObject *)__pyx_v_self->descr); + __Pyx_INCREF(__pyx_t_3); + __pyx_v_descr = ((PyArray_Descr *)__pyx_t_3); + __pyx_t_3 = 0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":247 + * cdef int offset + * + * cdef bint hasfields = PyDataType_HASFIELDS(descr) # <<<<<<<<<<<<<< + * + * if not hasfields and not copy_shape: + */ + __pyx_v_hasfields = PyDataType_HASFIELDS(__pyx_v_descr); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":249 + * cdef bint hasfields = PyDataType_HASFIELDS(descr) + * + * if not hasfields and not copy_shape: # <<<<<<<<<<<<<< + * # do not call releasebuffer + * info.obj = None + */ + __pyx_t_2 = ((!(__pyx_v_hasfields != 0)) != 0); + if (__pyx_t_2) { + } else { + __pyx_t_1 = __pyx_t_2; + goto __pyx_L15_bool_binop_done; + } + __pyx_t_2 = ((!(__pyx_v_copy_shape != 0)) != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L15_bool_binop_done:; + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":251 + * if not hasfields and not copy_shape: + * # do not call releasebuffer + * info.obj = None # <<<<<<<<<<<<<< + * else: + * # need to call releasebuffer + */ + __Pyx_INCREF(Py_None); + __Pyx_GIVEREF(Py_None); + __Pyx_GOTREF(__pyx_v_info->obj); + __Pyx_DECREF(__pyx_v_info->obj); + __pyx_v_info->obj = Py_None; + goto __pyx_L14; + } + /*else*/ { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":254 + * else: + * # need to call releasebuffer + * info.obj = self # <<<<<<<<<<<<<< + * + * if not hasfields: + */ + __Pyx_INCREF(((PyObject *)__pyx_v_self)); + __Pyx_GIVEREF(((PyObject *)__pyx_v_self)); + __Pyx_GOTREF(__pyx_v_info->obj); + __Pyx_DECREF(__pyx_v_info->obj); + __pyx_v_info->obj = ((PyObject *)__pyx_v_self); + } + __pyx_L14:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":256 + * info.obj = self + * + * if not hasfields: # <<<<<<<<<<<<<< + * t = descr.type_num + * if ((descr.byteorder == c'>' and little_endian) or + */ + __pyx_t_1 = ((!(__pyx_v_hasfields != 0)) != 0); + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":257 + * + * if not hasfields: + * t = descr.type_num # <<<<<<<<<<<<<< + * if ((descr.byteorder == c'>' and little_endian) or + * (descr.byteorder == c'<' and not little_endian)): + */ + __pyx_t_4 = __pyx_v_descr->type_num; + __pyx_v_t = __pyx_t_4; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":258 + * if not hasfields: + * t = descr.type_num + * if ((descr.byteorder == c'>' and little_endian) or # <<<<<<<<<<<<<< + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + */ + __pyx_t_2 = ((__pyx_v_descr->byteorder == '>') != 0); + if (!__pyx_t_2) { + goto __pyx_L20_next_or; + } else { + } + __pyx_t_2 = (__pyx_v_little_endian != 0); + if (!__pyx_t_2) { + } else { + __pyx_t_1 = __pyx_t_2; + goto __pyx_L19_bool_binop_done; + } + __pyx_L20_next_or:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":259 + * t = descr.type_num + * if ((descr.byteorder == c'>' and little_endian) or + * (descr.byteorder == c'<' and not little_endian)): # <<<<<<<<<<<<<< + * raise ValueError(u"Non-native byte order not supported") + * if t == NPY_BYTE: f = "b" + */ + __pyx_t_2 = ((__pyx_v_descr->byteorder == '<') != 0); + if (__pyx_t_2) { + } else { + __pyx_t_1 = __pyx_t_2; + goto __pyx_L19_bool_binop_done; + } + __pyx_t_2 = ((!(__pyx_v_little_endian != 0)) != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L19_bool_binop_done:; + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":260 + * if ((descr.byteorder == c'>' and little_endian) or + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") # <<<<<<<<<<<<<< + * if t == NPY_BYTE: f = "b" + * elif t == NPY_UBYTE: f = "B" + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":277 + * elif t == NPY_CDOUBLE: f = "Zd" + * elif t == NPY_CLONGDOUBLE: f = "Zg" + * elif t == NPY_OBJECT: f = "O" # <<<<<<<<<<<<<< + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + */ + switch (__pyx_v_t) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":261 + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + * if t == NPY_BYTE: f = "b" # <<<<<<<<<<<<<< + * elif t == NPY_UBYTE: f = "B" + * elif t == NPY_SHORT: f = "h" + */ + case NPY_BYTE: + __pyx_v_f = __pyx_k_b; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":262 + * raise ValueError(u"Non-native byte order not supported") + * if t == NPY_BYTE: f = "b" + * elif t == NPY_UBYTE: f = "B" # <<<<<<<<<<<<<< + * elif t == NPY_SHORT: f = "h" + * elif t == NPY_USHORT: f = "H" + */ + case NPY_UBYTE: + __pyx_v_f = __pyx_k_B; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":263 + * if t == NPY_BYTE: f = "b" + * elif t == NPY_UBYTE: f = "B" + * elif t == NPY_SHORT: f = "h" # <<<<<<<<<<<<<< + * elif t == NPY_USHORT: f = "H" + * elif t == NPY_INT: f = "i" + */ + case NPY_SHORT: + __pyx_v_f = __pyx_k_h; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":264 + * elif t == NPY_UBYTE: f = "B" + * elif t == NPY_SHORT: f = "h" + * elif t == NPY_USHORT: f = "H" # <<<<<<<<<<<<<< + * elif t == NPY_INT: f = "i" + * elif t == NPY_UINT: f = "I" + */ + case NPY_USHORT: + __pyx_v_f = __pyx_k_H; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":265 + * elif t == NPY_SHORT: f = "h" + * elif t == NPY_USHORT: f = "H" + * elif t == NPY_INT: f = "i" # <<<<<<<<<<<<<< + * elif t == NPY_UINT: f = "I" + * elif t == NPY_LONG: f = "l" + */ + case NPY_INT: + __pyx_v_f = __pyx_k_i; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":266 + * elif t == NPY_USHORT: f = "H" + * elif t == NPY_INT: f = "i" + * elif t == NPY_UINT: f = "I" # <<<<<<<<<<<<<< + * elif t == NPY_LONG: f = "l" + * elif t == NPY_ULONG: f = "L" + */ + case NPY_UINT: + __pyx_v_f = __pyx_k_I; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":267 + * elif t == NPY_INT: f = "i" + * elif t == NPY_UINT: f = "I" + * elif t == NPY_LONG: f = "l" # <<<<<<<<<<<<<< + * elif t == NPY_ULONG: f = "L" + * elif t == NPY_LONGLONG: f = "q" + */ + case NPY_LONG: + __pyx_v_f = __pyx_k_l; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":268 + * elif t == NPY_UINT: f = "I" + * elif t == NPY_LONG: f = "l" + * elif t == NPY_ULONG: f = "L" # <<<<<<<<<<<<<< + * elif t == NPY_LONGLONG: f = "q" + * elif t == NPY_ULONGLONG: f = "Q" + */ + case NPY_ULONG: + __pyx_v_f = __pyx_k_L; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":269 + * elif t == NPY_LONG: f = "l" + * elif t == NPY_ULONG: f = "L" + * elif t == NPY_LONGLONG: f = "q" # <<<<<<<<<<<<<< + * elif t == NPY_ULONGLONG: f = "Q" + * elif t == NPY_FLOAT: f = "f" + */ + case NPY_LONGLONG: + __pyx_v_f = __pyx_k_q; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":270 + * elif t == NPY_ULONG: f = "L" + * elif t == NPY_LONGLONG: f = "q" + * elif t == NPY_ULONGLONG: f = "Q" # <<<<<<<<<<<<<< + * elif t == NPY_FLOAT: f = "f" + * elif t == NPY_DOUBLE: f = "d" + */ + case NPY_ULONGLONG: + __pyx_v_f = __pyx_k_Q; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":271 + * elif t == NPY_LONGLONG: f = "q" + * elif t == NPY_ULONGLONG: f = "Q" + * elif t == NPY_FLOAT: f = "f" # <<<<<<<<<<<<<< + * elif t == NPY_DOUBLE: f = "d" + * elif t == NPY_LONGDOUBLE: f = "g" + */ + case NPY_FLOAT: + __pyx_v_f = __pyx_k_f; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":272 + * elif t == NPY_ULONGLONG: f = "Q" + * elif t == NPY_FLOAT: f = "f" + * elif t == NPY_DOUBLE: f = "d" # <<<<<<<<<<<<<< + * elif t == NPY_LONGDOUBLE: f = "g" + * elif t == NPY_CFLOAT: f = "Zf" + */ + case NPY_DOUBLE: + __pyx_v_f = __pyx_k_d; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":273 + * elif t == NPY_FLOAT: f = "f" + * elif t == NPY_DOUBLE: f = "d" + * elif t == NPY_LONGDOUBLE: f = "g" # <<<<<<<<<<<<<< + * elif t == NPY_CFLOAT: f = "Zf" + * elif t == NPY_CDOUBLE: f = "Zd" + */ + case NPY_LONGDOUBLE: + __pyx_v_f = __pyx_k_g; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":274 + * elif t == NPY_DOUBLE: f = "d" + * elif t == NPY_LONGDOUBLE: f = "g" + * elif t == NPY_CFLOAT: f = "Zf" # <<<<<<<<<<<<<< + * elif t == NPY_CDOUBLE: f = "Zd" + * elif t == NPY_CLONGDOUBLE: f = "Zg" + */ + case NPY_CFLOAT: + __pyx_v_f = __pyx_k_Zf; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":275 + * elif t == NPY_LONGDOUBLE: f = "g" + * elif t == NPY_CFLOAT: f = "Zf" + * elif t == NPY_CDOUBLE: f = "Zd" # <<<<<<<<<<<<<< + * elif t == NPY_CLONGDOUBLE: f = "Zg" + * elif t == NPY_OBJECT: f = "O" + */ + case NPY_CDOUBLE: + __pyx_v_f = __pyx_k_Zd; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":276 + * elif t == NPY_CFLOAT: f = "Zf" + * elif t == NPY_CDOUBLE: f = "Zd" + * elif t == NPY_CLONGDOUBLE: f = "Zg" # <<<<<<<<<<<<<< + * elif t == NPY_OBJECT: f = "O" + * else: + */ + case NPY_CLONGDOUBLE: + __pyx_v_f = __pyx_k_Zg; + break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":277 + * elif t == NPY_CDOUBLE: f = "Zd" + * elif t == NPY_CLONGDOUBLE: f = "Zg" + * elif t == NPY_OBJECT: f = "O" # <<<<<<<<<<<<<< + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + */ + case NPY_OBJECT: + __pyx_v_f = __pyx_k_O; + break; + default: + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":279 + * elif t == NPY_OBJECT: f = "O" + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) # <<<<<<<<<<<<<< + * info.format = f + * return + */ + __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_t); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_6 = PyUnicode_Format(__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_t_3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_6); + __Pyx_GIVEREF(__pyx_t_6); + __pyx_t_6 = 0; + __pyx_t_6 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_Raise(__pyx_t_6, 0, 0, 0); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + break; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":280 + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + * info.format = f # <<<<<<<<<<<<<< + * return + * else: + */ + __pyx_v_info->format = __pyx_v_f; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":281 + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + * info.format = f + * return # <<<<<<<<<<<<<< + * else: + * info.format = <char*>stdlib.malloc(_buffer_format_string_len) + */ + __pyx_r = 0; + goto __pyx_L0; + } + /*else*/ { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":283 + * return + * else: + * info.format = <char*>stdlib.malloc(_buffer_format_string_len) # <<<<<<<<<<<<<< + * info.format[0] = c'^' # Native data types, manual alignment + * offset = 0 + */ + __pyx_v_info->format = ((char *)malloc(255)); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":284 + * else: + * info.format = <char*>stdlib.malloc(_buffer_format_string_len) + * info.format[0] = c'^' # Native data types, manual alignment # <<<<<<<<<<<<<< + * offset = 0 + * f = _util_dtypestring(descr, info.format + 1, + */ + (__pyx_v_info->format[0]) = '^'; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":285 + * info.format = <char*>stdlib.malloc(_buffer_format_string_len) + * info.format[0] = c'^' # Native data types, manual alignment + * offset = 0 # <<<<<<<<<<<<<< + * f = _util_dtypestring(descr, info.format + 1, + * info.format + _buffer_format_string_len, + */ + __pyx_v_offset = 0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":286 + * info.format[0] = c'^' # Native data types, manual alignment + * offset = 0 + * f = _util_dtypestring(descr, info.format + 1, # <<<<<<<<<<<<<< + * info.format + _buffer_format_string_len, + * &offset) + */ + __pyx_t_7 = __pyx_f_5numpy__util_dtypestring(__pyx_v_descr, (__pyx_v_info->format + 1), (__pyx_v_info->format + 255), (&__pyx_v_offset)); if (unlikely(__pyx_t_7 == NULL)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_v_f = __pyx_t_7; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":289 + * info.format + _buffer_format_string_len, + * &offset) + * f[0] = c'\0' # Terminate format string # <<<<<<<<<<<<<< + * + * def __releasebuffer__(ndarray self, Py_buffer* info): + */ + (__pyx_v_f[0]) = '\x00'; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":197 + * # experimental exception made for __getbuffer__ and __releasebuffer__ + * # -- the details of this may change. + * def __getbuffer__(ndarray self, Py_buffer* info, int flags): # <<<<<<<<<<<<<< + * # This implementation of getbuffer is geared towards Cython + * # requirements, and does not yet fullfill the PEP. + */ + + /* function exit code */ + __pyx_r = 0; + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_AddTraceback("numpy.ndarray.__getbuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = -1; + if (__pyx_v_info != NULL && __pyx_v_info->obj != NULL) { + __Pyx_GOTREF(__pyx_v_info->obj); + __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = NULL; + } + goto __pyx_L2; + __pyx_L0:; + if (__pyx_v_info != NULL && __pyx_v_info->obj == Py_None) { + __Pyx_GOTREF(Py_None); + __Pyx_DECREF(Py_None); __pyx_v_info->obj = NULL; + } + __pyx_L2:; + __Pyx_XDECREF((PyObject *)__pyx_v_descr); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":291 + * f[0] = c'\0' # Terminate format string + * + * def __releasebuffer__(ndarray self, Py_buffer* info): # <<<<<<<<<<<<<< + * if PyArray_HASFIELDS(self): + * stdlib.free(info.format) + */ + +/* Python wrapper */ +static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info); /*proto*/ +static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__releasebuffer__ (wrapper)", 0); + __pyx_pf_5numpy_7ndarray_2__releasebuffer__(((PyArrayObject *)__pyx_v_self), ((Py_buffer *)__pyx_v_info)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); +} + +static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info) { + __Pyx_RefNannyDeclarations + int __pyx_t_1; + __Pyx_RefNannySetupContext("__releasebuffer__", 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":292 + * + * def __releasebuffer__(ndarray self, Py_buffer* info): + * if PyArray_HASFIELDS(self): # <<<<<<<<<<<<<< + * stdlib.free(info.format) + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + */ + __pyx_t_1 = (PyArray_HASFIELDS(__pyx_v_self) != 0); + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":293 + * def __releasebuffer__(ndarray self, Py_buffer* info): + * if PyArray_HASFIELDS(self): + * stdlib.free(info.format) # <<<<<<<<<<<<<< + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + * stdlib.free(info.strides) + */ + free(__pyx_v_info->format); + goto __pyx_L3; + } + __pyx_L3:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":294 + * if PyArray_HASFIELDS(self): + * stdlib.free(info.format) + * if sizeof(npy_intp) != sizeof(Py_ssize_t): # <<<<<<<<<<<<<< + * stdlib.free(info.strides) + * # info.shape was stored after info.strides in the same block + */ + __pyx_t_1 = (((sizeof(npy_intp)) != (sizeof(Py_ssize_t))) != 0); + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":295 + * stdlib.free(info.format) + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + * stdlib.free(info.strides) # <<<<<<<<<<<<<< + * # info.shape was stored after info.strides in the same block + * + */ + free(__pyx_v_info->strides); + goto __pyx_L4; + } + __pyx_L4:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":291 + * f[0] = c'\0' # Terminate format string + * + * def __releasebuffer__(ndarray self, Py_buffer* info): # <<<<<<<<<<<<<< + * if PyArray_HASFIELDS(self): + * stdlib.free(info.format) + */ + + /* function exit code */ + __Pyx_RefNannyFinishContext(); +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":771 + * ctypedef npy_cdouble complex_t + * + * cdef inline object PyArray_MultiIterNew1(a): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(1, <void*>a) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew1", 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":772 + * + * cdef inline object PyArray_MultiIterNew1(a): + * return PyArray_MultiIterNew(1, <void*>a) # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew2(a, b): + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(1, ((void *)__pyx_v_a)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":771 + * ctypedef npy_cdouble complex_t + * + * cdef inline object PyArray_MultiIterNew1(a): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(1, <void*>a) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew1", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":774 + * return PyArray_MultiIterNew(1, <void*>a) + * + * cdef inline object PyArray_MultiIterNew2(a, b): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(2, <void*>a, <void*>b) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyObject *__pyx_v_b) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew2", 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":775 + * + * cdef inline object PyArray_MultiIterNew2(a, b): + * return PyArray_MultiIterNew(2, <void*>a, <void*>b) # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew3(a, b, c): + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(2, ((void *)__pyx_v_a), ((void *)__pyx_v_b)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 775; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":774 + * return PyArray_MultiIterNew(1, <void*>a) + * + * cdef inline object PyArray_MultiIterNew2(a, b): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(2, <void*>a, <void*>b) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew2", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":777 + * return PyArray_MultiIterNew(2, <void*>a, <void*>b) + * + * cdef inline object PyArray_MultiIterNew3(a, b, c): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(3, <void*>a, <void*>b, <void*> c) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew3", 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":778 + * + * cdef inline object PyArray_MultiIterNew3(a, b, c): + * return PyArray_MultiIterNew(3, <void*>a, <void*>b, <void*> c) # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew4(a, b, c, d): + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(3, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 778; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":777 + * return PyArray_MultiIterNew(2, <void*>a, <void*>b) + * + * cdef inline object PyArray_MultiIterNew3(a, b, c): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(3, <void*>a, <void*>b, <void*> c) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew3", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":780 + * return PyArray_MultiIterNew(3, <void*>a, <void*>b, <void*> c) + * + * cdef inline object PyArray_MultiIterNew4(a, b, c, d): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(4, <void*>a, <void*>b, <void*>c, <void*> d) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew4", 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":781 + * + * cdef inline object PyArray_MultiIterNew4(a, b, c, d): + * return PyArray_MultiIterNew(4, <void*>a, <void*>b, <void*>c, <void*> d) # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(4, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 781; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":780 + * return PyArray_MultiIterNew(3, <void*>a, <void*>b, <void*> c) + * + * cdef inline object PyArray_MultiIterNew4(a, b, c, d): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(4, <void*>a, <void*>b, <void*>c, <void*> d) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew4", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":783 + * return PyArray_MultiIterNew(4, <void*>a, <void*>b, <void*>c, <void*> d) + * + * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(5, <void*>a, <void*>b, <void*>c, <void*> d, <void*> e) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d, PyObject *__pyx_v_e) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew5", 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":784 + * + * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): + * return PyArray_MultiIterNew(5, <void*>a, <void*>b, <void*>c, <void*> d, <void*> e) # <<<<<<<<<<<<<< + * + * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL: + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(5, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d), ((void *)__pyx_v_e)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":783 + * return PyArray_MultiIterNew(4, <void*>a, <void*>b, <void*>c, <void*> d) + * + * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(5, <void*>a, <void*>b, <void*>c, <void*> d, <void*> e) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew5", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":786 + * return PyArray_MultiIterNew(5, <void*>a, <void*>b, <void*>c, <void*> d, <void*> e) + * + * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL: # <<<<<<<<<<<<<< + * # Recursive utility function used in __getbuffer__ to get format + * # string. The new location in the format string is returned. + */ + +static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *__pyx_v_descr, char *__pyx_v_f, char *__pyx_v_end, int *__pyx_v_offset) { + PyArray_Descr *__pyx_v_child = 0; + int __pyx_v_endian_detector; + int __pyx_v_little_endian; + PyObject *__pyx_v_fields = 0; + PyObject *__pyx_v_childname = NULL; + PyObject *__pyx_v_new_offset = NULL; + PyObject *__pyx_v_t = NULL; + char *__pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + Py_ssize_t __pyx_t_2; + PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4 = NULL; + int __pyx_t_5; + int __pyx_t_6; + int __pyx_t_7; + long __pyx_t_8; + char *__pyx_t_9; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("_util_dtypestring", 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":793 + * cdef int delta_offset + * cdef tuple i + * cdef int endian_detector = 1 # <<<<<<<<<<<<<< + * cdef bint little_endian = ((<char*>&endian_detector)[0] != 0) + * cdef tuple fields + */ + __pyx_v_endian_detector = 1; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":794 + * cdef tuple i + * cdef int endian_detector = 1 + * cdef bint little_endian = ((<char*>&endian_detector)[0] != 0) # <<<<<<<<<<<<<< + * cdef tuple fields + * + */ + __pyx_v_little_endian = ((((char *)(&__pyx_v_endian_detector))[0]) != 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":797 + * cdef tuple fields + * + * for childname in descr.names: # <<<<<<<<<<<<<< + * fields = descr.fields[childname] + * child, new_offset = fields + */ + if (unlikely(__pyx_v_descr->names == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 797; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_1 = __pyx_v_descr->names; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + for (;;) { + if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + #if CYTHON_COMPILING_IN_CPYTHON + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 797; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #else + __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 797; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + __Pyx_XDECREF_SET(__pyx_v_childname, __pyx_t_3); + __pyx_t_3 = 0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":798 + * + * for childname in descr.names: + * fields = descr.fields[childname] # <<<<<<<<<<<<<< + * child, new_offset = fields + * + */ + if (unlikely(__pyx_v_descr->fields == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 798; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_descr->fields, __pyx_v_childname); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 798; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __Pyx_GOTREF(__pyx_t_3); + if (!(likely(PyTuple_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_3)->tp_name), 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 798; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_XDECREF_SET(__pyx_v_fields, ((PyObject*)__pyx_t_3)); + __pyx_t_3 = 0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":799 + * for childname in descr.names: + * fields = descr.fields[childname] + * child, new_offset = fields # <<<<<<<<<<<<<< + * + * if (end - f) - <int>(new_offset - offset[0]) < 15: + */ + if (likely(__pyx_v_fields != Py_None)) { + PyObject* sequence = __pyx_v_fields; + #if CYTHON_COMPILING_IN_CPYTHON + Py_ssize_t size = Py_SIZE(sequence); + #else + Py_ssize_t size = PySequence_Size(sequence); + #endif + if (unlikely(size != 2)) { + if (size > 2) __Pyx_RaiseTooManyValuesError(2); + else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + #if CYTHON_COMPILING_IN_CPYTHON + __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_4); + #else + __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + #endif + } else { + __Pyx_RaiseNoneNotIterableError(); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_5numpy_dtype))))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_XDECREF_SET(__pyx_v_child, ((PyArray_Descr *)__pyx_t_3)); + __pyx_t_3 = 0; + __Pyx_XDECREF_SET(__pyx_v_new_offset, __pyx_t_4); + __pyx_t_4 = 0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":801 + * child, new_offset = fields + * + * if (end - f) - <int>(new_offset - offset[0]) < 15: # <<<<<<<<<<<<<< + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") + * + */ + __pyx_t_4 = __Pyx_PyInt_From_int((__pyx_v_offset[0])); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 801; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyNumber_Subtract(__pyx_v_new_offset, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 801; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 801; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = ((((__pyx_v_end - __pyx_v_f) - ((int)__pyx_t_5)) < 15) != 0); + if (__pyx_t_6) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":802 + * + * if (end - f) - <int>(new_offset - offset[0]) < 15: + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") # <<<<<<<<<<<<<< + * + * if ((child.byteorder == c'>' and little_endian) or + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 802; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 802; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":804 + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") + * + * if ((child.byteorder == c'>' and little_endian) or # <<<<<<<<<<<<<< + * (child.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + */ + __pyx_t_7 = ((__pyx_v_child->byteorder == '>') != 0); + if (!__pyx_t_7) { + goto __pyx_L8_next_or; + } else { + } + __pyx_t_7 = (__pyx_v_little_endian != 0); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L7_bool_binop_done; + } + __pyx_L8_next_or:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":805 + * + * if ((child.byteorder == c'>' and little_endian) or + * (child.byteorder == c'<' and not little_endian)): # <<<<<<<<<<<<<< + * raise ValueError(u"Non-native byte order not supported") + * # One could encode it in the format string and have Cython + */ + __pyx_t_7 = ((__pyx_v_child->byteorder == '<') != 0); + if (__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L7_bool_binop_done; + } + __pyx_t_7 = ((!(__pyx_v_little_endian != 0)) != 0); + __pyx_t_6 = __pyx_t_7; + __pyx_L7_bool_binop_done:; + if (__pyx_t_6) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":806 + * if ((child.byteorder == c'>' and little_endian) or + * (child.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") # <<<<<<<<<<<<<< + * # One could encode it in the format string and have Cython + * # complain instead, BUT: < and > in format strings also imply + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 806; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 806; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":816 + * + * # Output padding bytes + * while offset[0] < new_offset: # <<<<<<<<<<<<<< + * f[0] = 120 # "x"; pad byte + * f += 1 + */ + while (1) { + __pyx_t_3 = __Pyx_PyInt_From_int((__pyx_v_offset[0])); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, __pyx_v_new_offset, Py_LT); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (!__pyx_t_6) break; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":817 + * # Output padding bytes + * while offset[0] < new_offset: + * f[0] = 120 # "x"; pad byte # <<<<<<<<<<<<<< + * f += 1 + * offset[0] += 1 + */ + (__pyx_v_f[0]) = 120; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":818 + * while offset[0] < new_offset: + * f[0] = 120 # "x"; pad byte + * f += 1 # <<<<<<<<<<<<<< + * offset[0] += 1 + * + */ + __pyx_v_f = (__pyx_v_f + 1); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":819 + * f[0] = 120 # "x"; pad byte + * f += 1 + * offset[0] += 1 # <<<<<<<<<<<<<< + * + * offset[0] += child.itemsize + */ + __pyx_t_8 = 0; + (__pyx_v_offset[__pyx_t_8]) = ((__pyx_v_offset[__pyx_t_8]) + 1); + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":821 + * offset[0] += 1 + * + * offset[0] += child.itemsize # <<<<<<<<<<<<<< + * + * if not PyDataType_HASFIELDS(child): + */ + __pyx_t_8 = 0; + (__pyx_v_offset[__pyx_t_8]) = ((__pyx_v_offset[__pyx_t_8]) + __pyx_v_child->elsize); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":823 + * offset[0] += child.itemsize + * + * if not PyDataType_HASFIELDS(child): # <<<<<<<<<<<<<< + * t = child.type_num + * if end - f < 5: + */ + __pyx_t_6 = ((!(PyDataType_HASFIELDS(__pyx_v_child) != 0)) != 0); + if (__pyx_t_6) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":824 + * + * if not PyDataType_HASFIELDS(child): + * t = child.type_num # <<<<<<<<<<<<<< + * if end - f < 5: + * raise RuntimeError(u"Format string allocated too short.") + */ + __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_child->type_num); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 824; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __Pyx_XDECREF_SET(__pyx_v_t, __pyx_t_4); + __pyx_t_4 = 0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":825 + * if not PyDataType_HASFIELDS(child): + * t = child.type_num + * if end - f < 5: # <<<<<<<<<<<<<< + * raise RuntimeError(u"Format string allocated too short.") + * + */ + __pyx_t_6 = (((__pyx_v_end - __pyx_v_f) < 5) != 0); + if (__pyx_t_6) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":826 + * t = child.type_num + * if end - f < 5: + * raise RuntimeError(u"Format string allocated too short.") # <<<<<<<<<<<<<< + * + * # Until ticket #99 is fixed, use integers to avoid warnings + */ + __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__7, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __Pyx_Raise(__pyx_t_4, 0, 0, 0); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":829 + * + * # Until ticket #99 is fixed, use integers to avoid warnings + * if t == NPY_BYTE: f[0] = 98 #"b" # <<<<<<<<<<<<<< + * elif t == NPY_UBYTE: f[0] = 66 #"B" + * elif t == NPY_SHORT: f[0] = 104 #"h" + */ + __pyx_t_4 = PyInt_FromLong(NPY_BYTE); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 829; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 829; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 829; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 98; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":830 + * # Until ticket #99 is fixed, use integers to avoid warnings + * if t == NPY_BYTE: f[0] = 98 #"b" + * elif t == NPY_UBYTE: f[0] = 66 #"B" # <<<<<<<<<<<<<< + * elif t == NPY_SHORT: f[0] = 104 #"h" + * elif t == NPY_USHORT: f[0] = 72 #"H" + */ + __pyx_t_3 = PyInt_FromLong(NPY_UBYTE); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 830; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 830; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 830; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 66; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":831 + * if t == NPY_BYTE: f[0] = 98 #"b" + * elif t == NPY_UBYTE: f[0] = 66 #"B" + * elif t == NPY_SHORT: f[0] = 104 #"h" # <<<<<<<<<<<<<< + * elif t == NPY_USHORT: f[0] = 72 #"H" + * elif t == NPY_INT: f[0] = 105 #"i" + */ + __pyx_t_4 = PyInt_FromLong(NPY_SHORT); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 831; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 831; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 831; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 104; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":832 + * elif t == NPY_UBYTE: f[0] = 66 #"B" + * elif t == NPY_SHORT: f[0] = 104 #"h" + * elif t == NPY_USHORT: f[0] = 72 #"H" # <<<<<<<<<<<<<< + * elif t == NPY_INT: f[0] = 105 #"i" + * elif t == NPY_UINT: f[0] = 73 #"I" + */ + __pyx_t_3 = PyInt_FromLong(NPY_USHORT); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 832; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 832; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 832; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 72; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":833 + * elif t == NPY_SHORT: f[0] = 104 #"h" + * elif t == NPY_USHORT: f[0] = 72 #"H" + * elif t == NPY_INT: f[0] = 105 #"i" # <<<<<<<<<<<<<< + * elif t == NPY_UINT: f[0] = 73 #"I" + * elif t == NPY_LONG: f[0] = 108 #"l" + */ + __pyx_t_4 = PyInt_FromLong(NPY_INT); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 105; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":834 + * elif t == NPY_USHORT: f[0] = 72 #"H" + * elif t == NPY_INT: f[0] = 105 #"i" + * elif t == NPY_UINT: f[0] = 73 #"I" # <<<<<<<<<<<<<< + * elif t == NPY_LONG: f[0] = 108 #"l" + * elif t == NPY_ULONG: f[0] = 76 #"L" + */ + __pyx_t_3 = PyInt_FromLong(NPY_UINT); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 834; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 834; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 834; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 73; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":835 + * elif t == NPY_INT: f[0] = 105 #"i" + * elif t == NPY_UINT: f[0] = 73 #"I" + * elif t == NPY_LONG: f[0] = 108 #"l" # <<<<<<<<<<<<<< + * elif t == NPY_ULONG: f[0] = 76 #"L" + * elif t == NPY_LONGLONG: f[0] = 113 #"q" + */ + __pyx_t_4 = PyInt_FromLong(NPY_LONG); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 108; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":836 + * elif t == NPY_UINT: f[0] = 73 #"I" + * elif t == NPY_LONG: f[0] = 108 #"l" + * elif t == NPY_ULONG: f[0] = 76 #"L" # <<<<<<<<<<<<<< + * elif t == NPY_LONGLONG: f[0] = 113 #"q" + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" + */ + __pyx_t_3 = PyInt_FromLong(NPY_ULONG); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 836; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 836; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 836; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 76; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":837 + * elif t == NPY_LONG: f[0] = 108 #"l" + * elif t == NPY_ULONG: f[0] = 76 #"L" + * elif t == NPY_LONGLONG: f[0] = 113 #"q" # <<<<<<<<<<<<<< + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" + * elif t == NPY_FLOAT: f[0] = 102 #"f" + */ + __pyx_t_4 = PyInt_FromLong(NPY_LONGLONG); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 113; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":838 + * elif t == NPY_ULONG: f[0] = 76 #"L" + * elif t == NPY_LONGLONG: f[0] = 113 #"q" + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" # <<<<<<<<<<<<<< + * elif t == NPY_FLOAT: f[0] = 102 #"f" + * elif t == NPY_DOUBLE: f[0] = 100 #"d" + */ + __pyx_t_3 = PyInt_FromLong(NPY_ULONGLONG); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 838; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 838; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 838; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 81; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":839 + * elif t == NPY_LONGLONG: f[0] = 113 #"q" + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" + * elif t == NPY_FLOAT: f[0] = 102 #"f" # <<<<<<<<<<<<<< + * elif t == NPY_DOUBLE: f[0] = 100 #"d" + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" + */ + __pyx_t_4 = PyInt_FromLong(NPY_FLOAT); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 839; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 839; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 839; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 102; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":840 + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" + * elif t == NPY_FLOAT: f[0] = 102 #"f" + * elif t == NPY_DOUBLE: f[0] = 100 #"d" # <<<<<<<<<<<<<< + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf + */ + __pyx_t_3 = PyInt_FromLong(NPY_DOUBLE); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 840; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 840; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 840; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 100; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":841 + * elif t == NPY_FLOAT: f[0] = 102 #"f" + * elif t == NPY_DOUBLE: f[0] = 100 #"d" + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" # <<<<<<<<<<<<<< + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd + */ + __pyx_t_4 = PyInt_FromLong(NPY_LONGDOUBLE); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 841; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 841; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 841; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 103; + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":842 + * elif t == NPY_DOUBLE: f[0] = 100 #"d" + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf # <<<<<<<<<<<<<< + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd + * elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg + */ + __pyx_t_3 = PyInt_FromLong(NPY_CFLOAT); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 90; + (__pyx_v_f[1]) = 102; + __pyx_v_f = (__pyx_v_f + 1); + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":843 + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd # <<<<<<<<<<<<<< + * elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg + * elif t == NPY_OBJECT: f[0] = 79 #"O" + */ + __pyx_t_4 = PyInt_FromLong(NPY_CDOUBLE); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 843; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 843; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 843; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 90; + (__pyx_v_f[1]) = 100; + __pyx_v_f = (__pyx_v_f + 1); + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":844 + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd + * elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg # <<<<<<<<<<<<<< + * elif t == NPY_OBJECT: f[0] = 79 #"O" + * else: + */ + __pyx_t_3 = PyInt_FromLong(NPY_CLONGDOUBLE); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 844; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 844; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 844; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 90; + (__pyx_v_f[1]) = 103; + __pyx_v_f = (__pyx_v_f + 1); + goto __pyx_L15; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":845 + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd + * elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg + * elif t == NPY_OBJECT: f[0] = 79 #"O" # <<<<<<<<<<<<<< + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + */ + __pyx_t_4 = PyInt_FromLong(NPY_OBJECT); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 79; + goto __pyx_L15; + } + /*else*/ { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":847 + * elif t == NPY_OBJECT: f[0] = 79 #"O" + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) # <<<<<<<<<<<<<< + * f += 1 + * else: + */ + __pyx_t_3 = PyUnicode_Format(__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_v_t); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_4); + PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); + __Pyx_GIVEREF(__pyx_t_3); + __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + {__pyx_filename = __pyx_f[1]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + __pyx_L15:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":848 + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + * f += 1 # <<<<<<<<<<<<<< + * else: + * # Cython ignores struct boundary information ("T{...}"), + */ + __pyx_v_f = (__pyx_v_f + 1); + goto __pyx_L13; + } + /*else*/ { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":852 + * # Cython ignores struct boundary information ("T{...}"), + * # so don't output it + * f = _util_dtypestring(child, f, end, offset) # <<<<<<<<<<<<<< + * return f + * + */ + __pyx_t_9 = __pyx_f_5numpy__util_dtypestring(__pyx_v_child, __pyx_v_f, __pyx_v_end, __pyx_v_offset); if (unlikely(__pyx_t_9 == NULL)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 852; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_v_f = __pyx_t_9; + } + __pyx_L13:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":797 + * cdef tuple fields + * + * for childname in descr.names: # <<<<<<<<<<<<<< + * fields = descr.fields[childname] + * child, new_offset = fields + */ + } + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":853 + * # so don't output it + * f = _util_dtypestring(child, f, end, offset) + * return f # <<<<<<<<<<<<<< + * + * + */ + __pyx_r = __pyx_v_f; + goto __pyx_L0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":786 + * return PyArray_MultiIterNew(5, <void*>a, <void*>b, <void*>c, <void*> d, <void*> e) + * + * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL: # <<<<<<<<<<<<<< + * # Recursive utility function used in __getbuffer__ to get format + * # string. The new location in the format string is returned. + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_AddTraceback("numpy._util_dtypestring", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __pyx_L0:; + __Pyx_XDECREF((PyObject *)__pyx_v_child); + __Pyx_XDECREF(__pyx_v_fields); + __Pyx_XDECREF(__pyx_v_childname); + __Pyx_XDECREF(__pyx_v_new_offset); + __Pyx_XDECREF(__pyx_v_t); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":969 + * + * + * cdef inline void set_array_base(ndarray arr, object base): # <<<<<<<<<<<<<< + * cdef PyObject* baseptr + * if base is None: + */ + +static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObject *__pyx_v_base) { + PyObject *__pyx_v_baseptr; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; + __Pyx_RefNannySetupContext("set_array_base", 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":971 + * cdef inline void set_array_base(ndarray arr, object base): + * cdef PyObject* baseptr + * if base is None: # <<<<<<<<<<<<<< + * baseptr = NULL + * else: + */ + __pyx_t_1 = (__pyx_v_base == Py_None); + __pyx_t_2 = (__pyx_t_1 != 0); + if (__pyx_t_2) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":972 + * cdef PyObject* baseptr + * if base is None: + * baseptr = NULL # <<<<<<<<<<<<<< + * else: + * Py_INCREF(base) # important to do this before decref below! + */ + __pyx_v_baseptr = NULL; + goto __pyx_L3; + } + /*else*/ { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":974 + * baseptr = NULL + * else: + * Py_INCREF(base) # important to do this before decref below! # <<<<<<<<<<<<<< + * baseptr = <PyObject*>base + * Py_XDECREF(arr.base) + */ + Py_INCREF(__pyx_v_base); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":975 + * else: + * Py_INCREF(base) # important to do this before decref below! + * baseptr = <PyObject*>base # <<<<<<<<<<<<<< + * Py_XDECREF(arr.base) + * arr.base = baseptr + */ + __pyx_v_baseptr = ((PyObject *)__pyx_v_base); + } + __pyx_L3:; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":976 + * Py_INCREF(base) # important to do this before decref below! + * baseptr = <PyObject*>base + * Py_XDECREF(arr.base) # <<<<<<<<<<<<<< + * arr.base = baseptr + * + */ + Py_XDECREF(__pyx_v_arr->base); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":977 + * baseptr = <PyObject*>base + * Py_XDECREF(arr.base) + * arr.base = baseptr # <<<<<<<<<<<<<< + * + * cdef inline object get_array_base(ndarray arr): + */ + __pyx_v_arr->base = __pyx_v_baseptr; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":969 + * + * + * cdef inline void set_array_base(ndarray arr, object base): # <<<<<<<<<<<<<< + * cdef PyObject* baseptr + * if base is None: + */ + + /* function exit code */ + __Pyx_RefNannyFinishContext(); +} + +/* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":979 + * arr.base = baseptr + * + * cdef inline object get_array_base(ndarray arr): # <<<<<<<<<<<<<< + * if arr.base is NULL: + * return None + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + __Pyx_RefNannySetupContext("get_array_base", 0); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":980 + * + * cdef inline object get_array_base(ndarray arr): + * if arr.base is NULL: # <<<<<<<<<<<<<< + * return None + * else: + */ + __pyx_t_1 = ((__pyx_v_arr->base == NULL) != 0); + if (__pyx_t_1) { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":981 + * cdef inline object get_array_base(ndarray arr): + * if arr.base is NULL: + * return None # <<<<<<<<<<<<<< + * else: + * return <object>arr.base + */ + __Pyx_XDECREF(__pyx_r); + __Pyx_INCREF(Py_None); + __pyx_r = Py_None; + goto __pyx_L0; + } + /*else*/ { + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":983 + * return None + * else: + * return <object>arr.base # <<<<<<<<<<<<<< + */ + __Pyx_XDECREF(__pyx_r); + __Pyx_INCREF(((PyObject *)__pyx_v_arr->base)); + __pyx_r = ((PyObject *)__pyx_v_arr->base); + goto __pyx_L0; + } + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":979 + * arr.base = baseptr + * + * cdef inline object get_array_base(ndarray arr): # <<<<<<<<<<<<<< + * if arr.base is NULL: + * return None + */ + + /* function exit code */ + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static struct __pyx_obj_2ml___pyx_scope_struct__ml *__pyx_freelist_2ml___pyx_scope_struct__ml[8]; +static int __pyx_freecount_2ml___pyx_scope_struct__ml = 0; + +static PyObject *__pyx_tp_new_2ml___pyx_scope_struct__ml(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + if (CYTHON_COMPILING_IN_CPYTHON && likely((__pyx_freecount_2ml___pyx_scope_struct__ml > 0) & (t->tp_basicsize == sizeof(struct __pyx_obj_2ml___pyx_scope_struct__ml)))) { + o = (PyObject*)__pyx_freelist_2ml___pyx_scope_struct__ml[--__pyx_freecount_2ml___pyx_scope_struct__ml]; + memset(o, 0, sizeof(struct __pyx_obj_2ml___pyx_scope_struct__ml)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } + return o; +} + +static void __pyx_tp_dealloc_2ml___pyx_scope_struct__ml(PyObject *o) { + struct __pyx_obj_2ml___pyx_scope_struct__ml *p = (struct __pyx_obj_2ml___pyx_scope_struct__ml *)o; + PyObject_GC_UnTrack(o); + Py_CLEAR(p->__pyx_v_failures); + Py_CLEAR(p->__pyx_v_successes); + if (CYTHON_COMPILING_IN_CPYTHON && ((__pyx_freecount_2ml___pyx_scope_struct__ml < 8) & (Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_2ml___pyx_scope_struct__ml)))) { + __pyx_freelist_2ml___pyx_scope_struct__ml[__pyx_freecount_2ml___pyx_scope_struct__ml++] = ((struct __pyx_obj_2ml___pyx_scope_struct__ml *)o); + } else { + (*Py_TYPE(o)->tp_free)(o); + } +} + +static int __pyx_tp_traverse_2ml___pyx_scope_struct__ml(PyObject *o, visitproc v, void *a) { + int e; + struct __pyx_obj_2ml___pyx_scope_struct__ml *p = (struct __pyx_obj_2ml___pyx_scope_struct__ml *)o; + if (p->__pyx_v_failures) { + e = (*v)(p->__pyx_v_failures, a); if (e) return e; + } + if (p->__pyx_v_successes) { + e = (*v)(p->__pyx_v_successes, a); if (e) return e; + } + return 0; +} + +static int __pyx_tp_clear_2ml___pyx_scope_struct__ml(PyObject *o) { + PyObject* tmp; + struct __pyx_obj_2ml___pyx_scope_struct__ml *p = (struct __pyx_obj_2ml___pyx_scope_struct__ml *)o; + tmp = ((PyObject*)p->__pyx_v_failures); + p->__pyx_v_failures = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->__pyx_v_successes); + p->__pyx_v_successes = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + return 0; +} + +static PyTypeObject __pyx_type_2ml___pyx_scope_struct__ml = { + PyVarObject_HEAD_INIT(0, 0) + "ml.__pyx_scope_struct__ml", /*tp_name*/ + sizeof(struct __pyx_obj_2ml___pyx_scope_struct__ml), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + __pyx_tp_dealloc_2ml___pyx_scope_struct__ml, /*tp_dealloc*/ + 0, /*tp_print*/ + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ + #if PY_MAJOR_VERSION < 3 + 0, /*tp_compare*/ + #else + 0, /*reserved*/ + #endif + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash*/ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_2ml___pyx_scope_struct__ml, /*tp_traverse*/ + __pyx_tp_clear_2ml___pyx_scope_struct__ml, /*tp_clear*/ + 0, /*tp_richcompare*/ + 0, /*tp_weaklistoffset*/ + 0, /*tp_iter*/ + 0, /*tp_iternext*/ + 0, /*tp_methods*/ + 0, /*tp_members*/ + 0, /*tp_getset*/ + 0, /*tp_base*/ + 0, /*tp_dict*/ + 0, /*tp_descr_get*/ + 0, /*tp_descr_set*/ + 0, /*tp_dictoffset*/ + 0, /*tp_init*/ + 0, /*tp_alloc*/ + __pyx_tp_new_2ml___pyx_scope_struct__ml, /*tp_new*/ + 0, /*tp_free*/ + 0, /*tp_is_gc*/ + 0, /*tp_bases*/ + 0, /*tp_mro*/ + 0, /*tp_cache*/ + 0, /*tp_subclasses*/ + 0, /*tp_weaklist*/ + 0, /*tp_del*/ + 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif +}; + +static struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *__pyx_freelist_2ml___pyx_scope_struct_1_genexpr[8]; +static int __pyx_freecount_2ml___pyx_scope_struct_1_genexpr = 0; + +static PyObject *__pyx_tp_new_2ml___pyx_scope_struct_1_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + if (CYTHON_COMPILING_IN_CPYTHON && likely((__pyx_freecount_2ml___pyx_scope_struct_1_genexpr > 0) & (t->tp_basicsize == sizeof(struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr)))) { + o = (PyObject*)__pyx_freelist_2ml___pyx_scope_struct_1_genexpr[--__pyx_freecount_2ml___pyx_scope_struct_1_genexpr]; + memset(o, 0, sizeof(struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } + return o; +} + +static void __pyx_tp_dealloc_2ml___pyx_scope_struct_1_genexpr(PyObject *o) { + struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *p = (struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *)o; + PyObject_GC_UnTrack(o); + Py_CLEAR(p->__pyx_outer_scope); + Py_CLEAR(p->__pyx_v_s); + Py_CLEAR(p->__pyx_t_1); + if (CYTHON_COMPILING_IN_CPYTHON && ((__pyx_freecount_2ml___pyx_scope_struct_1_genexpr < 8) & (Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr)))) { + __pyx_freelist_2ml___pyx_scope_struct_1_genexpr[__pyx_freecount_2ml___pyx_scope_struct_1_genexpr++] = ((struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *)o); + } else { + (*Py_TYPE(o)->tp_free)(o); + } +} + +static int __pyx_tp_traverse_2ml___pyx_scope_struct_1_genexpr(PyObject *o, visitproc v, void *a) { + int e; + struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *p = (struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *)o; + if (p->__pyx_outer_scope) { + e = (*v)(((PyObject*)p->__pyx_outer_scope), a); if (e) return e; + } + if (p->__pyx_v_s) { + e = (*v)(p->__pyx_v_s, a); if (e) return e; + } + if (p->__pyx_t_1) { + e = (*v)(p->__pyx_t_1, a); if (e) return e; + } + return 0; +} + +static int __pyx_tp_clear_2ml___pyx_scope_struct_1_genexpr(PyObject *o) { + PyObject* tmp; + struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *p = (struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr *)o; + tmp = ((PyObject*)p->__pyx_outer_scope); + p->__pyx_outer_scope = ((struct __pyx_obj_2ml___pyx_scope_struct__ml *)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->__pyx_v_s); + p->__pyx_v_s = Py_None; Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->__pyx_t_1); + p->__pyx_t_1 = Py_None; Py_INCREF(Py_None); + Py_XDECREF(tmp); + return 0; +} + +static PyTypeObject __pyx_type_2ml___pyx_scope_struct_1_genexpr = { + PyVarObject_HEAD_INIT(0, 0) + "ml.__pyx_scope_struct_1_genexpr", /*tp_name*/ + sizeof(struct __pyx_obj_2ml___pyx_scope_struct_1_genexpr), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + __pyx_tp_dealloc_2ml___pyx_scope_struct_1_genexpr, /*tp_dealloc*/ + 0, /*tp_print*/ + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ + #if PY_MAJOR_VERSION < 3 + 0, /*tp_compare*/ + #else + 0, /*reserved*/ + #endif + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash*/ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_2ml___pyx_scope_struct_1_genexpr, /*tp_traverse*/ + __pyx_tp_clear_2ml___pyx_scope_struct_1_genexpr, /*tp_clear*/ + 0, /*tp_richcompare*/ + 0, /*tp_weaklistoffset*/ + 0, /*tp_iter*/ + 0, /*tp_iternext*/ + 0, /*tp_methods*/ + 0, /*tp_members*/ + 0, /*tp_getset*/ + 0, /*tp_base*/ + 0, /*tp_dict*/ + 0, /*tp_descr_get*/ + 0, /*tp_descr_set*/ + 0, /*tp_dictoffset*/ + 0, /*tp_init*/ + 0, /*tp_alloc*/ + __pyx_tp_new_2ml___pyx_scope_struct_1_genexpr, /*tp_new*/ + 0, /*tp_free*/ + 0, /*tp_is_gc*/ + 0, /*tp_bases*/ + 0, /*tp_mro*/ + 0, /*tp_cache*/ + 0, /*tp_subclasses*/ + 0, /*tp_weaklist*/ + 0, /*tp_del*/ + 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif +}; + +static PyMethodDef __pyx_methods[] = { + {0, 0, 0, 0} +}; + +#if PY_MAJOR_VERSION >= 3 +static struct PyModuleDef __pyx_moduledef = { + #if PY_VERSION_HEX < 0x03020000 + { PyObject_HEAD_INIT(NULL) NULL, 0, NULL }, + #else + PyModuleDef_HEAD_INIT, + #endif + "ml", + 0, /* m_doc */ + -1, /* m_size */ + __pyx_methods /* m_methods */, + NULL, /* m_reload */ + NULL, /* m_traverse */ + NULL, /* m_clear */ + NULL /* m_free */ +}; +#endif + +static __Pyx_StringTabEntry __pyx_string_tab[] = { + {&__pyx_n_s_DTYPE, __pyx_k_DTYPE, sizeof(__pyx_k_DTYPE), 0, 0, 1, 1}, + {&__pyx_kp_u_Format_string_allocated_too_shor, __pyx_k_Format_string_allocated_too_shor, sizeof(__pyx_k_Format_string_allocated_too_shor), 0, 1, 0, 0}, + {&__pyx_kp_u_Format_string_allocated_too_shor_2, __pyx_k_Format_string_allocated_too_shor_2, sizeof(__pyx_k_Format_string_allocated_too_shor_2), 0, 1, 0, 0}, + {&__pyx_kp_u_Non_native_byte_order_not_suppor, __pyx_k_Non_native_byte_order_not_suppor, sizeof(__pyx_k_Non_native_byte_order_not_suppor), 0, 1, 0, 0}, + {&__pyx_n_s_RuntimeError, __pyx_k_RuntimeError, sizeof(__pyx_k_RuntimeError), 0, 0, 1, 1}, + {&__pyx_kp_s_Users_ben_Documents_Cascade_Pro, __pyx_k_Users_ben_Documents_Cascade_Pro, sizeof(__pyx_k_Users_ben_Documents_Cascade_Pro), 0, 0, 1, 0}, + {&__pyx_n_s_ValueError, __pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 0, 1, 1}, + {&__pyx_n_s_age, __pyx_k_age, sizeof(__pyx_k_age), 0, 0, 1, 1}, + {&__pyx_n_s_all_failures, __pyx_k_all_failures, sizeof(__pyx_k_all_failures), 0, 0, 1, 1}, + {&__pyx_n_s_alpha, __pyx_k_alpha, sizeof(__pyx_k_alpha), 0, 0, 1, 1}, + {&__pyx_kp_s_alpha_0_delta_1_Everyone_is_a_ro, __pyx_k_alpha_0_delta_1_Everyone_is_a_ro, sizeof(__pyx_k_alpha_0_delta_1_Everyone_is_a_ro), 0, 0, 1, 0}, + {&__pyx_n_s_args, __pyx_k_args, sizeof(__pyx_k_args), 0, 0, 1, 1}, + {&__pyx_n_s_beta, __pyx_k_beta, sizeof(__pyx_k_beta), 0, 0, 1, 1}, + {&__pyx_n_s_beta2, __pyx_k_beta2, sizeof(__pyx_k_beta2), 0, 0, 1, 1}, + {&__pyx_n_s_close, __pyx_k_close, sizeof(__pyx_k_close), 0, 0, 1, 1}, + {&__pyx_n_s_cums, __pyx_k_cums, sizeof(__pyx_k_cums), 0, 0, 1, 1}, + {&__pyx_n_s_cumsum, __pyx_k_cumsum, sizeof(__pyx_k_cumsum), 0, 0, 1, 1}, + {&__pyx_n_s_delta, __pyx_k_delta, sizeof(__pyx_k_delta), 0, 0, 1, 1}, + {&__pyx_n_s_dist, __pyx_k_dist, sizeof(__pyx_k_dist), 0, 0, 1, 1}, + {&__pyx_n_s_dt, __pyx_k_dt, sizeof(__pyx_k_dt), 0, 0, 1, 1}, + {&__pyx_n_s_dtype, __pyx_k_dtype, sizeof(__pyx_k_dtype), 0, 0, 1, 1}, + {&__pyx_n_s_end, __pyx_k_end, sizeof(__pyx_k_end), 0, 0, 1, 1}, + {&__pyx_n_s_enumerate, __pyx_k_enumerate, sizeof(__pyx_k_enumerate), 0, 0, 1, 1}, + {&__pyx_n_s_failures, __pyx_k_failures, sizeof(__pyx_k_failures), 0, 0, 1, 1}, + {&__pyx_n_s_file, __pyx_k_file, sizeof(__pyx_k_file), 0, 0, 1, 1}, + {&__pyx_n_s_float64, __pyx_k_float64, sizeof(__pyx_k_float64), 0, 0, 1, 1}, + {&__pyx_n_s_format, __pyx_k_format, sizeof(__pyx_k_format), 0, 0, 1, 1}, + {&__pyx_n_s_gamma, __pyx_k_gamma, sizeof(__pyx_k_gamma), 0, 0, 1, 1}, + {&__pyx_n_s_genexpr, __pyx_k_genexpr, sizeof(__pyx_k_genexpr), 0, 0, 1, 1}, + {&__pyx_n_s_i, __pyx_k_i, sizeof(__pyx_k_i), 0, 0, 1, 1}, + {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1}, + {&__pyx_n_s_itervalues, __pyx_k_itervalues, sizeof(__pyx_k_itervalues), 0, 0, 1, 1}, + {&__pyx_n_s_l, __pyx_k_l, sizeof(__pyx_k_l), 0, 0, 1, 1}, + {&__pyx_n_s_ll, __pyx_k_ll, sizeof(__pyx_k_ll), 0, 0, 1, 1}, + {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1}, + {&__pyx_n_s_max, __pyx_k_max, sizeof(__pyx_k_max), 0, 0, 1, 1}, + {&__pyx_n_s_ml, __pyx_k_ml, sizeof(__pyx_k_ml), 0, 0, 1, 1}, + {&__pyx_n_s_ml_locals_genexpr, __pyx_k_ml_locals_genexpr, sizeof(__pyx_k_ml_locals_genexpr), 0, 0, 1, 1}, + {&__pyx_n_s_n_nodes, __pyx_k_n_nodes, sizeof(__pyx_k_n_nodes), 0, 0, 1, 1}, + {&__pyx_n_s_n_roots, __pyx_k_n_roots, sizeof(__pyx_k_n_roots), 0, 0, 1, 1}, + {&__pyx_n_s_n_victims, __pyx_k_n_victims, sizeof(__pyx_k_n_victims), 0, 0, 1, 1}, + {&__pyx_kp_u_ndarray_is_not_C_contiguous, __pyx_k_ndarray_is_not_C_contiguous, sizeof(__pyx_k_ndarray_is_not_C_contiguous), 0, 1, 0, 0}, + {&__pyx_kp_u_ndarray_is_not_Fortran_contiguou, __pyx_k_ndarray_is_not_Fortran_contiguou, sizeof(__pyx_k_ndarray_is_not_Fortran_contiguou), 0, 1, 0, 0}, + {&__pyx_n_s_non_victims, __pyx_k_non_victims, sizeof(__pyx_k_non_victims), 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_parents, __pyx_k_parents, sizeof(__pyx_k_parents), 0, 0, 1, 1}, + {&__pyx_n_s_print, __pyx_k_print, sizeof(__pyx_k_print), 0, 0, 1, 1}, + {&__pyx_n_s_probs, __pyx_k_probs, sizeof(__pyx_k_probs), 0, 0, 1, 1}, + {&__pyx_n_s_probs_fail, __pyx_k_probs_fail, sizeof(__pyx_k_probs_fail), 0, 0, 1, 1}, + {&__pyx_n_s_probs_nv, __pyx_k_probs_nv, sizeof(__pyx_k_probs_nv), 0, 0, 1, 1}, + {&__pyx_n_s_range, __pyx_k_range, sizeof(__pyx_k_range), 0, 0, 1, 1}, + {&__pyx_n_s_root_victims, __pyx_k_root_victims, sizeof(__pyx_k_root_victims), 0, 0, 1, 1}, + {&__pyx_n_s_roots, __pyx_k_roots, sizeof(__pyx_k_roots), 0, 0, 1, 1}, + {&__pyx_n_s_send, __pyx_k_send, sizeof(__pyx_k_send), 0, 0, 1, 1}, + {&__pyx_n_s_sort, __pyx_k_sort, sizeof(__pyx_k_sort), 0, 0, 1, 1}, + {&__pyx_n_s_successes, __pyx_k_successes, sizeof(__pyx_k_successes), 0, 0, 1, 1}, + {&__pyx_n_s_sum, __pyx_k_sum, sizeof(__pyx_k_sum), 0, 0, 1, 1}, + {&__pyx_n_s_t, __pyx_k_t, sizeof(__pyx_k_t), 0, 0, 1, 1}, + {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1}, + {&__pyx_n_s_throw, __pyx_k_throw, sizeof(__pyx_k_throw), 0, 0, 1, 1}, + {&__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_k_unknown_dtype_code_in_numpy_pxd, sizeof(__pyx_k_unknown_dtype_code_in_numpy_pxd), 0, 1, 0, 0}, + {&__pyx_n_s_victims, __pyx_k_victims, sizeof(__pyx_k_victims), 0, 0, 1, 1}, + {&__pyx_n_s_xrange, __pyx_k_xrange, sizeof(__pyx_k_xrange), 0, 0, 1, 1}, + {&__pyx_n_s_zeros, __pyx_k_zeros, sizeof(__pyx_k_zeros), 0, 0, 1, 1}, + {0, 0, 0, 0, 0, 0, 0} +}; +static int __Pyx_InitCachedBuiltins(void) { + __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_n_s_enumerate); if (!__pyx_builtin_enumerate) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_builtin_sum = __Pyx_GetBuiltinName(__pyx_n_s_sum); if (!__pyx_builtin_sum) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_builtin_max = __Pyx_GetBuiltinName(__pyx_n_s_max); if (!__pyx_builtin_max) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if PY_MAJOR_VERSION >= 3 + __pyx_builtin_xrange = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_xrange) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #else + __pyx_builtin_xrange = __Pyx_GetBuiltinName(__pyx_n_s_xrange); if (!__pyx_builtin_xrange) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_builtin_RuntimeError = __Pyx_GetBuiltinName(__pyx_n_s_RuntimeError); if (!__pyx_builtin_RuntimeError) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 802; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + return 0; + __pyx_L1_error:; + return -1; +} + +static int __Pyx_InitCachedConstants(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); + + /* "ml.pyx":81 + * probs_nv[i] = sum(failures) + * probs.sort() + * probs = probs[::-1] # <<<<<<<<<<<<<< + * cdef: + * np.ndarray[DTYPE_t] cums = probs.cumsum() + */ + __pyx_slice_ = PySlice_New(Py_None, Py_None, __pyx_int_neg_1); if (unlikely(!__pyx_slice_)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_slice_); + __Pyx_GIVEREF(__pyx_slice_); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":218 + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): + * raise ValueError(u"ndarray is not C contiguous") # <<<<<<<<<<<<<< + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + */ + __pyx_tuple__2 = PyTuple_Pack(1, __pyx_kp_u_ndarray_is_not_C_contiguous); if (unlikely(!__pyx_tuple__2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_tuple__2); + __Pyx_GIVEREF(__pyx_tuple__2); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":222 + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): + * raise ValueError(u"ndarray is not Fortran contiguous") # <<<<<<<<<<<<<< + * + * info.buf = PyArray_DATA(self) + */ + __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_u_ndarray_is_not_Fortran_contiguou); if (unlikely(!__pyx_tuple__3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_tuple__3); + __Pyx_GIVEREF(__pyx_tuple__3); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":260 + * if ((descr.byteorder == c'>' and little_endian) or + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") # <<<<<<<<<<<<<< + * if t == NPY_BYTE: f = "b" + * elif t == NPY_UBYTE: f = "B" + */ + __pyx_tuple__4 = PyTuple_Pack(1, __pyx_kp_u_Non_native_byte_order_not_suppor); if (unlikely(!__pyx_tuple__4)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_tuple__4); + __Pyx_GIVEREF(__pyx_tuple__4); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":802 + * + * if (end - f) - <int>(new_offset - offset[0]) < 15: + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") # <<<<<<<<<<<<<< + * + * if ((child.byteorder == c'>' and little_endian) or + */ + __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_u_Format_string_allocated_too_shor); if (unlikely(!__pyx_tuple__5)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 802; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_tuple__5); + __Pyx_GIVEREF(__pyx_tuple__5); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":806 + * if ((child.byteorder == c'>' and little_endian) or + * (child.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") # <<<<<<<<<<<<<< + * # One could encode it in the format string and have Cython + * # complain instead, BUT: < and > in format strings also imply + */ + __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_u_Non_native_byte_order_not_suppor); if (unlikely(!__pyx_tuple__6)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 806; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_tuple__6); + __Pyx_GIVEREF(__pyx_tuple__6); + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":826 + * t = child.type_num + * if end - f < 5: + * raise RuntimeError(u"Format string allocated too short.") # <<<<<<<<<<<<<< + * + * # Until ticket #99 is fixed, use integers to avoid warnings + */ + __pyx_tuple__7 = PyTuple_Pack(1, __pyx_kp_u_Format_string_allocated_too_shor_2); if (unlikely(!__pyx_tuple__7)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_tuple__7); + __Pyx_GIVEREF(__pyx_tuple__7); + + /* "ml.pyx":50 + * return result + * + * def ml(dict root_victims, dict victims, dict non_victims, DTYPE_t age, # <<<<<<<<<<<<<< + * DTYPE_t alpha, DTYPE_t delta, DTYPE_t gamma=10): + * cdef: + */ + __pyx_tuple__8 = PyTuple_Pack(29, __pyx_n_s_root_victims, __pyx_n_s_victims, __pyx_n_s_non_victims, __pyx_n_s_age, __pyx_n_s_alpha, __pyx_n_s_delta, __pyx_n_s_gamma, __pyx_n_s_n_roots, __pyx_n_s_n_victims, __pyx_n_s_n_nodes, __pyx_n_s_roots, __pyx_n_s_i, __pyx_n_s_dist, __pyx_n_s_dt, __pyx_n_s_t, __pyx_n_s_l, __pyx_n_s_beta, __pyx_n_s_all_failures, __pyx_n_s_ll, __pyx_n_s_beta2, __pyx_n_s_parents, __pyx_n_s_failures, __pyx_n_s_successes, __pyx_n_s_probs, __pyx_n_s_probs_fail, __pyx_n_s_probs_nv, __pyx_n_s_cums, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_tuple__8); + __Pyx_GIVEREF(__pyx_tuple__8); + __pyx_codeobj__9 = (PyObject*)__Pyx_PyCode_New(7, 0, 29, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__8, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Users_ben_Documents_Cascade_Pro, __pyx_n_s_ml, 50, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_RefNannyFinishContext(); + return 0; + __pyx_L1_error:; + __Pyx_RefNannyFinishContext(); + return -1; +} + +static int __Pyx_InitGlobals(void) { + if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_int_neg_1 = PyInt_FromLong(-1); if (unlikely(!__pyx_int_neg_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + return 0; + __pyx_L1_error:; + return -1; +} + +#if PY_MAJOR_VERSION < 3 +PyMODINIT_FUNC initml(void); /*proto*/ +PyMODINIT_FUNC initml(void) +#else +PyMODINIT_FUNC PyInit_ml(void); /*proto*/ +PyMODINIT_FUNC PyInit_ml(void) +#endif +{ + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannyDeclarations + #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("PyMODINIT_FUNC PyInit_ml(void)", 0); + if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #ifdef __Pyx_CyFunction_USED + if (__Pyx_CyFunction_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + #ifdef __Pyx_FusedFunction_USED + if (__pyx_FusedFunction_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + #ifdef __Pyx_Generator_USED + if (__pyx_Generator_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __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 PY_MAJOR_VERSION < 3 + __pyx_m = Py_InitModule4("ml", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m); + #else + __pyx_m = PyModule_Create(&__pyx_moduledef); + #endif + if (unlikely(!__pyx_m)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + Py_INCREF(__pyx_d); + __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_COMPILING_IN_PYPY + Py_INCREF(__pyx_b); + #endif + if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + /*--- Initialize various global constants etc. ---*/ + if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __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_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + if (__pyx_module_is_main_ml) { + if (PyObject_SetAttrString(__pyx_m, "__name__", __pyx_n_s_main) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + } + #if PY_MAJOR_VERSION >= 3 + { + PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (!PyDict_GetItemString(modules, "ml")) { + if (unlikely(PyDict_SetItemString(modules, "ml", __pyx_m) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + } + } + #endif + /*--- Builtin init code ---*/ + if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*--- Constants init code ---*/ + if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*--- Global init code ---*/ + /*--- Variable export code ---*/ + /*--- Function export code ---*/ + /*--- Type init code ---*/ + if (PyType_Ready(&__pyx_type_2ml___pyx_scope_struct__ml) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_type_2ml___pyx_scope_struct__ml.tp_print = 0; + __pyx_ptype_2ml___pyx_scope_struct__ml = &__pyx_type_2ml___pyx_scope_struct__ml; + if (PyType_Ready(&__pyx_type_2ml___pyx_scope_struct_1_genexpr) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_type_2ml___pyx_scope_struct_1_genexpr.tp_print = 0; + __pyx_ptype_2ml___pyx_scope_struct_1_genexpr = &__pyx_type_2ml___pyx_scope_struct_1_genexpr; + /*--- Type import code ---*/ + __pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__Pyx_BUILTIN_MODULE_NAME, "type", + #if CYTHON_COMPILING_IN_PYPY + sizeof(PyTypeObject), + #else + sizeof(PyHeapTypeObject), + #endif + 0); if (unlikely(!__pyx_ptype_7cpython_4type_type)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_ptype_5numpy_dtype = __Pyx_ImportType("numpy", "dtype", sizeof(PyArray_Descr), 0); if (unlikely(!__pyx_ptype_5numpy_dtype)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_ptype_5numpy_flatiter = __Pyx_ImportType("numpy", "flatiter", sizeof(PyArrayIterObject), 0); if (unlikely(!__pyx_ptype_5numpy_flatiter)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_ptype_5numpy_broadcast = __Pyx_ImportType("numpy", "broadcast", sizeof(PyArrayMultiIterObject), 0); if (unlikely(!__pyx_ptype_5numpy_broadcast)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_ptype_5numpy_ndarray = __Pyx_ImportType("numpy", "ndarray", sizeof(PyArrayObject), 0); if (unlikely(!__pyx_ptype_5numpy_ndarray)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_ptype_5numpy_ufunc = __Pyx_ImportType("numpy", "ufunc", sizeof(PyUFuncObject), 0); if (unlikely(!__pyx_ptype_5numpy_ufunc)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*--- Variable import code ---*/ + /*--- Function import code ---*/ + /*--- Execution code ---*/ + + /* "ml.pyx":2 + * # cython: boundscheck=False, cdivision=True + * import numpy as np # <<<<<<<<<<<<<< + * cimport numpy as np + * from libc.math cimport log, exp + */ + __pyx_t_1 = __Pyx_Import(__pyx_n_s_numpy, 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_np, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "ml.pyx":6 + * from libc.math cimport log, exp + * + * DTYPE = np.float64 # <<<<<<<<<<<<<< + * ctypedef np.float_t DTYPE_t + * + */ + __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem(__pyx_d, __pyx_n_s_DTYPE, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* "ml.pyx":50 + * return result + * + * def ml(dict root_victims, dict victims, dict non_victims, DTYPE_t age, # <<<<<<<<<<<<<< + * DTYPE_t alpha, DTYPE_t delta, DTYPE_t gamma=10): + * cdef: + */ + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_2ml_1ml, NULL, __pyx_n_s_ml); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ml, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* "ml.pyx":1 + * # cython: boundscheck=False, cdivision=True # <<<<<<<<<<<<<< + * import numpy as np + * cimport numpy as np + */ + __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* "../../../../Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd":979 + * arr.base = baseptr + * + * cdef inline object get_array_base(ndarray arr): # <<<<<<<<<<<<<< + * if arr.base is NULL: + * return None + */ + + /*--- Wrapped vars code ---*/ + + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + if (__pyx_m) { + if (__pyx_d) { + __Pyx_AddTraceback("init ml", __pyx_clineno, __pyx_lineno, __pyx_filename); + } + Py_DECREF(__pyx_m); __pyx_m = 0; + } else if (!PyErr_Occurred()) { + PyErr_SetString(PyExc_ImportError, "init ml"); + } + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + #if PY_MAJOR_VERSION < 3 + return; + #else + return __pyx_m; + #endif +} + +/* --- Runtime support code --- */ +#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 + +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; +} + +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); +} + +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 +} + +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; +} + +static void __Pyx_RaiseArgumentTypeInvalid(const char* name, PyObject *obj, PyTypeObject *type) { + PyErr_Format(PyExc_TypeError, + "Argument '%.200s' has incorrect type (expected %.200s, got %.200s)", + name, type->tp_name, Py_TYPE(obj)->tp_name); +} +static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed, + const char *name, int exact) +{ + if (unlikely(!type)) { + PyErr_SetString(PyExc_SystemError, "Missing type object"); + return 0; + } + if (none_allowed && obj == Py_None) return 1; + else if (exact) { + if (likely(Py_TYPE(obj) == type)) return 1; + #if PY_MAJOR_VERSION == 2 + else if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1; + #endif + } + else { + if (likely(PyObject_TypeCheck(obj, type))) return 1; + } + __Pyx_RaiseArgumentTypeInvalid(name, obj, type); + return 0; +} + +static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname) { + PyErr_Format(PyExc_NameError, "free variable '%s' referenced before assignment in enclosing scope", varname); +} + +static CYTHON_INLINE 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, + int wraparound, int boundscheck) { +#if CYTHON_COMPILING_IN_CPYTHON + if (wraparound & unlikely(i < 0)) i += PyList_GET_SIZE(o); + if ((!boundscheck) || likely((0 <= i) & (i < PyList_GET_SIZE(o)))) { + PyObject *r = PyList_GET_ITEM(o, 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, + int wraparound, int boundscheck) { +#if CYTHON_COMPILING_IN_CPYTHON + if (wraparound & unlikely(i < 0)) i += PyTuple_GET_SIZE(o); + if ((!boundscheck) || likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { + PyObject *r = PyTuple_GET_ITEM(o, 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, int wraparound, int boundscheck) { +#if CYTHON_COMPILING_IN_CPYTHON + 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)) + PyErr_Clear(); + else + return NULL; + } + } + 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)); +} + +static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name) { + PyObject *result; +#if CYTHON_COMPILING_IN_CPYTHON + result = PyDict_GetItem(__pyx_d, name); + if (likely(result)) { + Py_INCREF(result); + } else { +#else + result = PyObject_GetItem(__pyx_d, name); + if (!result) { + PyErr_Clear(); +#endif + result = __Pyx_GetBuiltinName(name); + } + return result; +} + +#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 + +static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { + if (unlikely(!type)) { + PyErr_SetString(PyExc_SystemError, "Missing type object"); + return 0; + } + if (likely(PyObject_TypeCheck(obj, type))) + return 1; + PyErr_Format(PyExc_TypeError, "Cannot convert %.200s to %.200s", + Py_TYPE(obj)->tp_name, type->tp_name); + return 0; +} + +static CYTHON_INLINE int __Pyx_IsLittleEndian(void) { + unsigned int n = 1; + return *(unsigned char*)(&n) != 0; +} +static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx, + __Pyx_BufFmt_StackElem* stack, + __Pyx_TypeInfo* type) { + stack[0].field = &ctx->root; + stack[0].parent_offset = 0; + ctx->root.type = type; + ctx->root.name = "buffer dtype"; + ctx->root.offset = 0; + ctx->head = stack; + ctx->head->field = &ctx->root; + ctx->fmt_offset = 0; + ctx->head->parent_offset = 0; + ctx->new_packmode = '@'; + ctx->enc_packmode = '@'; + ctx->new_count = 1; + ctx->enc_count = 0; + ctx->enc_type = 0; + ctx->is_complex = 0; + ctx->is_valid_array = 0; + ctx->struct_alignment = 0; + while (type->typegroup == 'S') { + ++ctx->head; + ctx->head->field = type->fields; + ctx->head->parent_offset = 0; + type = type->fields->type; + } +} +static int __Pyx_BufFmt_ParseNumber(const char** ts) { + int count; + const char* t = *ts; + if (*t < '0' || *t > '9') { + return -1; + } else { + count = *t++ - '0'; + while (*t >= '0' && *t < '9') { + count *= 10; + count += *t++ - '0'; + } + } + *ts = t; + return count; +} +static int __Pyx_BufFmt_ExpectNumber(const char **ts) { + int number = __Pyx_BufFmt_ParseNumber(ts); + if (number == -1) + PyErr_Format(PyExc_ValueError,\ + "Does not understand character buffer dtype format string ('%c')", **ts); + return number; +} +static void __Pyx_BufFmt_RaiseUnexpectedChar(char ch) { + PyErr_Format(PyExc_ValueError, + "Unexpected format string character: '%c'", ch); +} +static const char* __Pyx_BufFmt_DescribeTypeChar(char ch, int is_complex) { + switch (ch) { + case 'c': return "'char'"; + case 'b': return "'signed char'"; + case 'B': return "'unsigned char'"; + case 'h': return "'short'"; + case 'H': return "'unsigned short'"; + case 'i': return "'int'"; + case 'I': return "'unsigned int'"; + case 'l': return "'long'"; + case 'L': return "'unsigned long'"; + case 'q': return "'long long'"; + case 'Q': return "'unsigned long long'"; + case 'f': return (is_complex ? "'complex float'" : "'float'"); + case 'd': return (is_complex ? "'complex double'" : "'double'"); + case 'g': return (is_complex ? "'complex long double'" : "'long double'"); + case 'T': return "a struct"; + case 'O': return "Python object"; + case 'P': return "a pointer"; + case 's': case 'p': return "a string"; + case 0: return "end"; + default: return "unparseable format string"; + } +} +static size_t __Pyx_BufFmt_TypeCharToStandardSize(char ch, int is_complex) { + switch (ch) { + case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; + case 'h': case 'H': return 2; + case 'i': case 'I': case 'l': case 'L': return 4; + case 'q': case 'Q': return 8; + case 'f': return (is_complex ? 8 : 4); + case 'd': return (is_complex ? 16 : 8); + case 'g': { + PyErr_SetString(PyExc_ValueError, "Python does not define a standard format string size for long double ('g').."); + return 0; + } + case 'O': case 'P': return sizeof(void*); + default: + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } +} +static size_t __Pyx_BufFmt_TypeCharToNativeSize(char ch, int is_complex) { + switch (ch) { + case 'c': case 'b': case 'B': case 's': case 'p': return 1; + case 'h': case 'H': return sizeof(short); + case 'i': case 'I': return sizeof(int); + case 'l': case 'L': return sizeof(long); + #ifdef HAVE_LONG_LONG + case 'q': case 'Q': return sizeof(PY_LONG_LONG); + #endif + case 'f': return sizeof(float) * (is_complex ? 2 : 1); + case 'd': return sizeof(double) * (is_complex ? 2 : 1); + case 'g': return sizeof(long double) * (is_complex ? 2 : 1); + case 'O': case 'P': return sizeof(void*); + default: { + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } + } +} +typedef struct { char c; short x; } __Pyx_st_short; +typedef struct { char c; int x; } __Pyx_st_int; +typedef struct { char c; long x; } __Pyx_st_long; +typedef struct { char c; float x; } __Pyx_st_float; +typedef struct { char c; double x; } __Pyx_st_double; +typedef struct { char c; long double x; } __Pyx_st_longdouble; +typedef struct { char c; void *x; } __Pyx_st_void_p; +#ifdef HAVE_LONG_LONG +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong; +#endif +static size_t __Pyx_BufFmt_TypeCharToAlignment(char ch, CYTHON_UNUSED int is_complex) { + switch (ch) { + case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; + case 'h': case 'H': return sizeof(__Pyx_st_short) - sizeof(short); + case 'i': case 'I': return sizeof(__Pyx_st_int) - sizeof(int); + case 'l': case 'L': return sizeof(__Pyx_st_long) - sizeof(long); +#ifdef HAVE_LONG_LONG + case 'q': case 'Q': return sizeof(__Pyx_st_longlong) - sizeof(PY_LONG_LONG); +#endif + case 'f': return sizeof(__Pyx_st_float) - sizeof(float); + case 'd': return sizeof(__Pyx_st_double) - sizeof(double); + case 'g': return sizeof(__Pyx_st_longdouble) - sizeof(long double); + case 'P': case 'O': return sizeof(__Pyx_st_void_p) - sizeof(void*); + default: + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } +} +/* These are for computing the padding at the end of the struct to align + on the first member of the struct. This will probably the same as above, + but we don't have any guarantees. + */ +typedef struct { short x; char c; } __Pyx_pad_short; +typedef struct { int x; char c; } __Pyx_pad_int; +typedef struct { long x; char c; } __Pyx_pad_long; +typedef struct { float x; char c; } __Pyx_pad_float; +typedef struct { double x; char c; } __Pyx_pad_double; +typedef struct { long double x; char c; } __Pyx_pad_longdouble; +typedef struct { void *x; char c; } __Pyx_pad_void_p; +#ifdef HAVE_LONG_LONG +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong; +#endif +static size_t __Pyx_BufFmt_TypeCharToPadding(char ch, CYTHON_UNUSED int is_complex) { + switch (ch) { + case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; + case 'h': case 'H': return sizeof(__Pyx_pad_short) - sizeof(short); + case 'i': case 'I': return sizeof(__Pyx_pad_int) - sizeof(int); + case 'l': case 'L': return sizeof(__Pyx_pad_long) - sizeof(long); +#ifdef HAVE_LONG_LONG + case 'q': case 'Q': return sizeof(__Pyx_pad_longlong) - sizeof(PY_LONG_LONG); +#endif + case 'f': return sizeof(__Pyx_pad_float) - sizeof(float); + case 'd': return sizeof(__Pyx_pad_double) - sizeof(double); + case 'g': return sizeof(__Pyx_pad_longdouble) - sizeof(long double); + case 'P': case 'O': return sizeof(__Pyx_pad_void_p) - sizeof(void*); + default: + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } +} +static char __Pyx_BufFmt_TypeCharToGroup(char ch, int is_complex) { + switch (ch) { + case 'c': + return 'H'; + case 'b': case 'h': case 'i': + case 'l': case 'q': case 's': case 'p': + return 'I'; + case 'B': case 'H': case 'I': case 'L': case 'Q': + return 'U'; + case 'f': case 'd': case 'g': + return (is_complex ? 'C' : 'R'); + case 'O': + return 'O'; + case 'P': + return 'P'; + default: { + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } + } +} +static void __Pyx_BufFmt_RaiseExpected(__Pyx_BufFmt_Context* ctx) { + if (ctx->head == NULL || ctx->head->field == &ctx->root) { + const char* expected; + const char* quote; + if (ctx->head == NULL) { + expected = "end"; + quote = ""; + } else { + expected = ctx->head->field->type->name; + quote = "'"; + } + PyErr_Format(PyExc_ValueError, + "Buffer dtype mismatch, expected %s%s%s but got %s", + quote, expected, quote, + __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex)); + } else { + __Pyx_StructField* field = ctx->head->field; + __Pyx_StructField* parent = (ctx->head - 1)->field; + PyErr_Format(PyExc_ValueError, + "Buffer dtype mismatch, expected '%s' but got %s in '%s.%s'", + field->type->name, __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex), + parent->type->name, field->name); + } +} +static int __Pyx_BufFmt_ProcessTypeChunk(__Pyx_BufFmt_Context* ctx) { + char group; + size_t size, offset, arraysize = 1; + if (ctx->enc_type == 0) return 0; + if (ctx->head->field->type->arraysize[0]) { + int i, ndim = 0; + if (ctx->enc_type == 's' || ctx->enc_type == 'p') { + ctx->is_valid_array = ctx->head->field->type->ndim == 1; + ndim = 1; + if (ctx->enc_count != ctx->head->field->type->arraysize[0]) { + PyErr_Format(PyExc_ValueError, + "Expected a dimension of size %zu, got %zu", + ctx->head->field->type->arraysize[0], ctx->enc_count); + return -1; + } + } + if (!ctx->is_valid_array) { + PyErr_Format(PyExc_ValueError, "Expected %d dimensions, got %d", + ctx->head->field->type->ndim, ndim); + return -1; + } + for (i = 0; i < ctx->head->field->type->ndim; i++) { + arraysize *= ctx->head->field->type->arraysize[i]; + } + ctx->is_valid_array = 0; + ctx->enc_count = 1; + } + group = __Pyx_BufFmt_TypeCharToGroup(ctx->enc_type, ctx->is_complex); + do { + __Pyx_StructField* field = ctx->head->field; + __Pyx_TypeInfo* type = field->type; + if (ctx->enc_packmode == '@' || ctx->enc_packmode == '^') { + size = __Pyx_BufFmt_TypeCharToNativeSize(ctx->enc_type, ctx->is_complex); + } else { + size = __Pyx_BufFmt_TypeCharToStandardSize(ctx->enc_type, ctx->is_complex); + } + if (ctx->enc_packmode == '@') { + size_t align_at = __Pyx_BufFmt_TypeCharToAlignment(ctx->enc_type, ctx->is_complex); + size_t align_mod_offset; + if (align_at == 0) return -1; + align_mod_offset = ctx->fmt_offset % align_at; + if (align_mod_offset > 0) ctx->fmt_offset += align_at - align_mod_offset; + if (ctx->struct_alignment == 0) + ctx->struct_alignment = __Pyx_BufFmt_TypeCharToPadding(ctx->enc_type, + ctx->is_complex); + } + if (type->size != size || type->typegroup != group) { + if (type->typegroup == 'C' && type->fields != NULL) { + size_t parent_offset = ctx->head->parent_offset + field->offset; + ++ctx->head; + ctx->head->field = type->fields; + ctx->head->parent_offset = parent_offset; + continue; + } + if ((type->typegroup == 'H' || group == 'H') && type->size == size) { + } else { + __Pyx_BufFmt_RaiseExpected(ctx); + return -1; + } + } + offset = ctx->head->parent_offset + field->offset; + if (ctx->fmt_offset != offset) { + PyErr_Format(PyExc_ValueError, + "Buffer dtype mismatch; next field is at offset %" CYTHON_FORMAT_SSIZE_T "d but %" CYTHON_FORMAT_SSIZE_T "d expected", + (Py_ssize_t)ctx->fmt_offset, (Py_ssize_t)offset); + return -1; + } + ctx->fmt_offset += size; + if (arraysize) + ctx->fmt_offset += (arraysize - 1) * size; + --ctx->enc_count; + while (1) { + if (field == &ctx->root) { + ctx->head = NULL; + if (ctx->enc_count != 0) { + __Pyx_BufFmt_RaiseExpected(ctx); + return -1; + } + break; + } + ctx->head->field = ++field; + if (field->type == NULL) { + --ctx->head; + field = ctx->head->field; + continue; + } else if (field->type->typegroup == 'S') { + size_t parent_offset = ctx->head->parent_offset + field->offset; + if (field->type->fields->type == NULL) continue; + field = field->type->fields; + ++ctx->head; + ctx->head->field = field; + ctx->head->parent_offset = parent_offset; + break; + } else { + break; + } + } + } while (ctx->enc_count); + ctx->enc_type = 0; + ctx->is_complex = 0; + return 0; +} +static CYTHON_INLINE PyObject * +__pyx_buffmt_parse_array(__Pyx_BufFmt_Context* ctx, const char** tsp) +{ + const char *ts = *tsp; + int i = 0, number; + int ndim = ctx->head->field->type->ndim; +; + ++ts; + if (ctx->new_count != 1) { + PyErr_SetString(PyExc_ValueError, + "Cannot handle repeated arrays in format string"); + return NULL; + } + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + while (*ts && *ts != ')') { + switch (*ts) { + case ' ': case '\f': case '\r': case '\n': case '\t': case '\v': continue; + default: break; + } + number = __Pyx_BufFmt_ExpectNumber(&ts); + if (number == -1) return NULL; + if (i < ndim && (size_t) number != ctx->head->field->type->arraysize[i]) + return PyErr_Format(PyExc_ValueError, + "Expected a dimension of size %zu, got %d", + ctx->head->field->type->arraysize[i], number); + if (*ts != ',' && *ts != ')') + return PyErr_Format(PyExc_ValueError, + "Expected a comma in format string, got '%c'", *ts); + if (*ts == ',') ts++; + i++; + } + if (i != ndim) + return PyErr_Format(PyExc_ValueError, "Expected %d dimension(s), got %d", + ctx->head->field->type->ndim, i); + if (!*ts) { + PyErr_SetString(PyExc_ValueError, + "Unexpected end of format string, expected ')'"); + return NULL; + } + ctx->is_valid_array = 1; + ctx->new_count = 1; + *tsp = ++ts; + return Py_None; +} +static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts) { + int got_Z = 0; + while (1) { + switch(*ts) { + case 0: + if (ctx->enc_type != 0 && ctx->head == NULL) { + __Pyx_BufFmt_RaiseExpected(ctx); + return NULL; + } + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + if (ctx->head != NULL) { + __Pyx_BufFmt_RaiseExpected(ctx); + return NULL; + } + return ts; + case ' ': + case '\r': + case '\n': + ++ts; + break; + case '<': + if (!__Pyx_IsLittleEndian()) { + PyErr_SetString(PyExc_ValueError, "Little-endian buffer not supported on big-endian compiler"); + return NULL; + } + ctx->new_packmode = '='; + ++ts; + break; + case '>': + case '!': + if (__Pyx_IsLittleEndian()) { + PyErr_SetString(PyExc_ValueError, "Big-endian buffer not supported on little-endian compiler"); + return NULL; + } + ctx->new_packmode = '='; + ++ts; + break; + case '=': + case '@': + case '^': + ctx->new_packmode = *ts++; + break; + case 'T': + { + const char* ts_after_sub; + size_t i, struct_count = ctx->new_count; + size_t struct_alignment = ctx->struct_alignment; + ctx->new_count = 1; + ++ts; + if (*ts != '{') { + PyErr_SetString(PyExc_ValueError, "Buffer acquisition: Expected '{' after 'T'"); + return NULL; + } + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + ctx->enc_type = 0; + ctx->enc_count = 0; + ctx->struct_alignment = 0; + ++ts; + ts_after_sub = ts; + for (i = 0; i != struct_count; ++i) { + ts_after_sub = __Pyx_BufFmt_CheckString(ctx, ts); + if (!ts_after_sub) return NULL; + } + ts = ts_after_sub; + if (struct_alignment) ctx->struct_alignment = struct_alignment; + } + break; + case '}': + { + size_t alignment = ctx->struct_alignment; + ++ts; + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + ctx->enc_type = 0; + if (alignment && ctx->fmt_offset % alignment) { + ctx->fmt_offset += alignment - (ctx->fmt_offset % alignment); + } + } + return ts; + case 'x': + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + ctx->fmt_offset += ctx->new_count; + ctx->new_count = 1; + ctx->enc_count = 0; + ctx->enc_type = 0; + ctx->enc_packmode = ctx->new_packmode; + ++ts; + break; + case 'Z': + got_Z = 1; + ++ts; + if (*ts != 'f' && *ts != 'd' && *ts != 'g') { + __Pyx_BufFmt_RaiseUnexpectedChar('Z'); + return NULL; + } + case 'c': case 'b': case 'B': case 'h': case 'H': case 'i': case 'I': + case 'l': case 'L': case 'q': case 'Q': + case 'f': case 'd': case 'g': + case 'O': case 'p': + if (ctx->enc_type == *ts && got_Z == ctx->is_complex && + ctx->enc_packmode == ctx->new_packmode) { + ctx->enc_count += ctx->new_count; + ctx->new_count = 1; + got_Z = 0; + ++ts; + break; + } + case 's': + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + ctx->enc_count = ctx->new_count; + ctx->enc_packmode = ctx->new_packmode; + ctx->enc_type = *ts; + ctx->is_complex = got_Z; + ++ts; + ctx->new_count = 1; + got_Z = 0; + break; + case ':': + ++ts; + while(*ts != ':') ++ts; + ++ts; + break; + case '(': + if (!__pyx_buffmt_parse_array(ctx, &ts)) return NULL; + break; + default: + { + int number = __Pyx_BufFmt_ExpectNumber(&ts); + if (number == -1) return NULL; + ctx->new_count = (size_t)number; + } + } + } +} +static CYTHON_INLINE void __Pyx_ZeroBuffer(Py_buffer* buf) { + buf->buf = NULL; + buf->obj = NULL; + buf->strides = __Pyx_zeros; + buf->shape = __Pyx_zeros; + buf->suboffsets = __Pyx_minusones; +} +static CYTHON_INLINE int __Pyx_GetBufferAndValidate( + Py_buffer* buf, PyObject* obj, __Pyx_TypeInfo* dtype, int flags, + int nd, int cast, __Pyx_BufFmt_StackElem* stack) +{ + if (obj == Py_None || obj == NULL) { + __Pyx_ZeroBuffer(buf); + return 0; + } + buf->buf = NULL; + if (__Pyx_GetBuffer(obj, buf, flags) == -1) goto fail; + if (buf->ndim != nd) { + PyErr_Format(PyExc_ValueError, + "Buffer has wrong number of dimensions (expected %d, got %d)", + nd, buf->ndim); + goto fail; + } + if (!cast) { + __Pyx_BufFmt_Context ctx; + __Pyx_BufFmt_Init(&ctx, stack, dtype); + if (!__Pyx_BufFmt_CheckString(&ctx, buf->format)) goto fail; + } + if ((unsigned)buf->itemsize != dtype->size) { + PyErr_Format(PyExc_ValueError, + "Item size of buffer (%" CYTHON_FORMAT_SSIZE_T "d byte%s) does not match size of '%s' (%" CYTHON_FORMAT_SSIZE_T "d byte%s)", + buf->itemsize, (buf->itemsize > 1) ? "s" : "", + dtype->name, (Py_ssize_t)dtype->size, (dtype->size > 1) ? "s" : ""); + goto fail; + } + if (buf->suboffsets == NULL) buf->suboffsets = __Pyx_minusones; + return 0; +fail:; + __Pyx_ZeroBuffer(buf); + return -1; +} +static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info) { + if (info->buf == NULL) return; + if (info->suboffsets == __Pyx_minusones) info->suboffsets = NULL; + __Pyx_ReleaseBuffer(info); +} + +static CYTHON_INLINE int __Pyx_IterFinish(void) { +#if CYTHON_COMPILING_IN_CPYTHON + PyThreadState *tstate = PyThreadState_GET(); + PyObject* exc_type = tstate->curexc_type; + if (unlikely(exc_type)) { + if (likely(exc_type == PyExc_StopIteration) || 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 +} + +#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 + +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { +#ifdef __Pyx_CyFunction_USED + if (likely(PyCFunction_Check(func) || PyObject_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 + +#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) { +#ifdef __Pyx_CyFunction_USED + if (likely(PyCFunction_Check(func) || PyObject_TypeCheck(func, __pyx_CyFunctionType))) { +#else + if (likely(PyCFunction_Check(func))) { +#endif + if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) { + return __Pyx_PyObject_CallMethO(func, arg); + } + } + return __Pyx__PyObject_CallOneArg(func, arg); +} +#else +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { + PyObject* args = PyTuple_Pack(1, arg); + return (likely(args)) ? __Pyx_PyObject_Call(func, args, NULL) : NULL; +} +#endif + +static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name) { + PyObject *method, *result = NULL; + method = __Pyx_PyObject_GetAttrStr(obj, method_name); + if (unlikely(!method)) goto bad; +#if CYTHON_COMPILING_IN_CPYTHON + if (likely(PyMethod_Check(method))) { + PyObject *self = PyMethod_GET_SELF(method); + if (likely(self)) { + PyObject *function = PyMethod_GET_FUNCTION(method); + result = __Pyx_PyObject_CallOneArg(function, self); + Py_DECREF(method); + return result; + } + } +#endif + result = __Pyx_PyObject_CallNoArg(method); + Py_DECREF(method); +bad: + return result; +} + +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"); +} + +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); +} + +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; +} + +static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); +} + +static void __Pyx_UnpackTupleError(PyObject *t, Py_ssize_t index) { + if (t == Py_None) { + __Pyx_RaiseNoneNotIterableError(); + } else if (PyTuple_GET_SIZE(t) < index) { + __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(t)); + } else { + __Pyx_RaiseTooManyValuesError(index); + } +} + +static CYTHON_INLINE int __Pyx_unpack_tuple2(PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2, + int is_tuple, int has_known_size, int decref_tuple) { + Py_ssize_t index; + PyObject *value1 = NULL, *value2 = NULL, *iter = NULL; + if (!is_tuple && unlikely(!PyTuple_Check(tuple))) { + iternextfunc iternext; + iter = PyObject_GetIter(tuple); + if (unlikely(!iter)) goto bad; + if (decref_tuple) { Py_DECREF(tuple); tuple = NULL; } + iternext = Py_TYPE(iter)->tp_iternext; + value1 = iternext(iter); if (unlikely(!value1)) { index = 0; goto unpacking_failed; } + value2 = iternext(iter); if (unlikely(!value2)) { index = 1; goto unpacking_failed; } + if (!has_known_size && unlikely(__Pyx_IternextUnpackEndCheck(iternext(iter), 2))) goto bad; + Py_DECREF(iter); + } else { + if (!has_known_size && unlikely(PyTuple_GET_SIZE(tuple) != 2)) { + __Pyx_UnpackTupleError(tuple, 2); + goto bad; + } +#if CYTHON_COMPILING_IN_PYPY + value1 = PySequence_ITEM(tuple, 0); + if (unlikely(!value1)) goto bad; + value2 = PySequence_ITEM(tuple, 1); + if (unlikely(!value2)) goto bad; +#else + value1 = PyTuple_GET_ITEM(tuple, 0); + value2 = PyTuple_GET_ITEM(tuple, 1); + Py_INCREF(value1); + Py_INCREF(value2); +#endif + if (decref_tuple) { Py_DECREF(tuple); } + } + *pvalue1 = value1; + *pvalue2 = value2; + return 0; +unpacking_failed: + if (!has_known_size && __Pyx_IterFinish() == 0) + __Pyx_RaiseNeedMoreValuesError(index); +bad: + Py_XDECREF(iter); + Py_XDECREF(value1); + Py_XDECREF(value2); + if (decref_tuple) { Py_XDECREF(tuple); } + return -1; +} + +static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name, + Py_ssize_t* p_orig_length, int* p_source_is_dict) { + is_dict = is_dict || likely(PyDict_CheckExact(iterable)); + *p_source_is_dict = is_dict; +#if !CYTHON_COMPILING_IN_PYPY + if (is_dict) { + *p_orig_length = PyDict_Size(iterable); + Py_INCREF(iterable); + return iterable; + } +#endif + *p_orig_length = 0; + if (method_name) { + PyObject* iter; + iterable = __Pyx_PyObject_CallMethod0(iterable, method_name); + if (!iterable) + return NULL; +#if !CYTHON_COMPILING_IN_PYPY + if (PyTuple_CheckExact(iterable) || PyList_CheckExact(iterable)) + return iterable; +#endif + iter = PyObject_GetIter(iterable); + Py_DECREF(iterable); + return iter; + } + return PyObject_GetIter(iterable); +} +static CYTHON_INLINE int __Pyx_dict_iter_next(PyObject* iter_obj, Py_ssize_t orig_length, Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) { + PyObject* next_item; +#if !CYTHON_COMPILING_IN_PYPY + if (source_is_dict) { + PyObject *key, *value; + if (unlikely(orig_length != PyDict_Size(iter_obj))) { + PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); + return -1; + } + if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) { + return 0; + } + if (pitem) { + PyObject* tuple = PyTuple_New(2); + if (unlikely(!tuple)) { + return -1; + } + Py_INCREF(key); + Py_INCREF(value); + PyTuple_SET_ITEM(tuple, 0, key); + PyTuple_SET_ITEM(tuple, 1, value); + *pitem = tuple; + } else { + if (pkey) { + Py_INCREF(key); + *pkey = key; + } + if (pvalue) { + Py_INCREF(value); + *pvalue = value; + } + } + return 1; + } else if (PyTuple_CheckExact(iter_obj)) { + Py_ssize_t pos = *ppos; + if (unlikely(pos >= PyTuple_GET_SIZE(iter_obj))) return 0; + *ppos = pos + 1; + next_item = PyTuple_GET_ITEM(iter_obj, pos); + Py_INCREF(next_item); + } else if (PyList_CheckExact(iter_obj)) { + Py_ssize_t pos = *ppos; + if (unlikely(pos >= PyList_GET_SIZE(iter_obj))) return 0; + *ppos = pos + 1; + next_item = PyList_GET_ITEM(iter_obj, pos); + Py_INCREF(next_item); + } else +#endif + { + next_item = PyIter_Next(iter_obj); + if (unlikely(!next_item)) { + return __Pyx_IterFinish(); + } + } + if (pitem) { + *pitem = next_item; + } else if (pkey && pvalue) { + if (__Pyx_unpack_tuple2(next_item, pkey, pvalue, source_is_dict, source_is_dict, 1)) + return -1; + } else if (pkey) { + *pkey = next_item; + } else { + *pvalue = next_item; + } + return 1; +} + +static void __Pyx_RaiseBufferFallbackError(void) { + PyErr_SetString(PyExc_ValueError, + "Buffer acquisition failed on assignment; and then reacquiring the old buffer failed too!"); +} + +static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb) { +#if CYTHON_COMPILING_IN_CPYTHON + PyObject *tmp_type, *tmp_value, *tmp_tb; + PyThreadState *tstate = PyThreadState_GET(); + 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); +#else + PyErr_Restore(type, value, tb); +#endif +} +static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) { +#if CYTHON_COMPILING_IN_CPYTHON + PyThreadState *tstate = PyThreadState_GET(); + *type = tstate->curexc_type; + *value = tstate->curexc_value; + *tb = tstate->curexc_traceback; + tstate->curexc_type = 0; + tstate->curexc_value = 0; + tstate->curexc_traceback = 0; +#else + PyErr_Fetch(type, value, tb); +#endif +} + +#if PY_MAJOR_VERSION < 3 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, + CYTHON_UNUSED PyObject *cause) { + Py_XINCREF(type); + if (!value || value == Py_None) + value = NULL; + else + Py_INCREF(value); + if (!tb || tb == Py_None) + tb = NULL; + else { + Py_INCREF(tb); + if (!PyTraceBack_Check(tb)) { + PyErr_SetString(PyExc_TypeError, + "raise: arg 3 must be a traceback or None"); + goto raise_error; + } + } + if (PyType_Check(type)) { +#if CYTHON_COMPILING_IN_PYPY + if (!value) { + Py_INCREF(Py_None); + value = Py_None; + } +#endif + PyErr_NormalizeException(&type, &value, &tb); + } else { + if (value) { + PyErr_SetString(PyExc_TypeError, + "instance exception may not have a separate value"); + goto raise_error; + } + value = type; + type = (PyObject*) Py_TYPE(type); + Py_INCREF(type); + if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) { + PyErr_SetString(PyExc_TypeError, + "raise: exception class must be a subclass of BaseException"); + goto raise_error; + } + } + __Pyx_ErrRestore(type, value, tb); + return; +raise_error: + Py_XDECREF(value); + Py_XDECREF(type); + Py_XDECREF(tb); + return; +} +#else +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { + PyObject* owned_instance = NULL; + if (tb == Py_None) { + tb = 0; + } else if (tb && !PyTraceBack_Check(tb)) { + PyErr_SetString(PyExc_TypeError, + "raise: arg 3 must be a traceback or None"); + goto bad; + } + if (value == Py_None) + value = 0; + if (PyExceptionInstance_Check(type)) { + if (value) { + PyErr_SetString(PyExc_TypeError, + "instance exception may not have a separate value"); + goto bad; + } + value = type; + type = (PyObject*) Py_TYPE(value); + } else if (PyExceptionClass_Check(type)) { + PyObject *instance_class = NULL; + if (value && PyExceptionInstance_Check(value)) { + instance_class = (PyObject*) Py_TYPE(value); + if (instance_class != type) { + if (PyObject_IsSubclass(instance_class, type)) { + type = instance_class; + } else { + instance_class = NULL; + } + } + } + if (!instance_class) { + PyObject *args; + if (!value) + args = PyTuple_New(0); + else if (PyTuple_Check(value)) { + Py_INCREF(value); + args = value; + } else + args = PyTuple_Pack(1, value); + if (!args) + goto bad; + owned_instance = PyObject_Call(type, args, NULL); + Py_DECREF(args); + if (!owned_instance) + goto bad; + value = owned_instance; + if (!PyExceptionInstance_Check(value)) { + PyErr_Format(PyExc_TypeError, + "calling %R should have returned an instance of " + "BaseException, not %R", + type, Py_TYPE(value)); + goto bad; + } + } + } else { + PyErr_SetString(PyExc_TypeError, + "raise: exception class must be a subclass of BaseException"); + goto bad; + } +#if PY_VERSION_HEX >= 0x03030000 + if (cause) { +#else + if (cause && cause != Py_None) { +#endif + PyObject *fixed_cause; + if (cause == Py_None) { + fixed_cause = NULL; + } else if (PyExceptionClass_Check(cause)) { + fixed_cause = PyObject_CallObject(cause, NULL); + if (fixed_cause == NULL) + goto bad; + } else if (PyExceptionInstance_Check(cause)) { + fixed_cause = cause; + Py_INCREF(fixed_cause); + } else { + PyErr_SetString(PyExc_TypeError, + "exception causes must derive from " + "BaseException"); + goto bad; + } + PyException_SetCause(value, fixed_cause); + } + PyErr_SetObject(type, value); + if (tb) { +#if CYTHON_COMPILING_IN_PYPY + PyObject *tmp_type, *tmp_value, *tmp_tb; + PyErr_Fetch(tmp_type, tmp_value, tmp_tb); + Py_INCREF(tb); + PyErr_Restore(tmp_type, tmp_value, tb); + Py_XDECREF(tmp_tb); +#else + PyThreadState *tstate = PyThreadState_GET(); + PyObject* tmp_tb = tstate->curexc_traceback; + if (tb != tmp_tb) { + Py_INCREF(tb); + tstate->curexc_traceback = tb; + Py_XDECREF(tmp_tb); + } +#endif + } +bad: + Py_XDECREF(owned_instance); + return; +} +#endif + +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) / 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); +} + +#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; + 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( + PyThreadState_GET(), /*PyThreadState *tstate,*/ + py_code, /*PyCodeObject *code,*/ + __pyx_d, /*PyObject *globals,*/ + 0 /*PyObject *locals*/ + ); + if (!py_frame) goto bad; + py_frame->f_lineno = py_line; + PyTraceBack_Here(py_frame); +bad: + Py_XDECREF(py_code); + Py_XDECREF(py_frame); +} + +#if PY_MAJOR_VERSION < 3 +static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags) { + if (PyObject_CheckBuffer(obj)) return PyObject_GetBuffer(obj, view, flags); + if (PyObject_TypeCheck(obj, __pyx_ptype_5numpy_ndarray)) return __pyx_pw_5numpy_7ndarray_1__getbuffer__(obj, view, flags); + PyErr_Format(PyExc_TypeError, "'%.200s' does not have the buffer interface", Py_TYPE(obj)->tp_name); + return -1; +} +static void __Pyx_ReleaseBuffer(Py_buffer *view) { + PyObject *obj = view->obj; + if (!obj) return; + if (PyObject_CheckBuffer(obj)) { + PyBuffer_Release(view); + return; + } + if (PyObject_TypeCheck(obj, __pyx_ptype_5numpy_ndarray)) { __pyx_pw_5numpy_7ndarray_3__releasebuffer__(obj, view); return; } + Py_DECREF(obj); + view->obj = NULL; +} +#endif + + + 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_VERSION_HEX < 0x03030000 + 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, '.')) { + #if PY_VERSION_HEX < 0x03030000 + PyObject *py_level = PyInt_FromLong(1); + 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, 1); + #endif + if (!module) { + if (!PyErr_ExceptionMatches(PyExc_ImportError)) + goto bad; + PyErr_Clear(); + } + } + level = 0; + } + #endif + if (!module) { + #if PY_VERSION_HEX < 0x03030000 + 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_VERSION_HEX < 0x03030000 + Py_XDECREF(py_import); + #endif + Py_XDECREF(empty_list); + Py_XDECREF(empty_dict); + return module; +} + +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { + const int neg_one = (int) -1, const_zero = 0; + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(int) < sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(int) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); + } else if (sizeof(int) <= sizeof(unsigned long long)) { + return PyLong_FromUnsignedLongLong((unsigned long long) value); + } + } else { + if (sizeof(int) <= sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(int) <= sizeof(long long)) { + return PyLong_FromLongLong((long long) value); + } + } + { + int one = 1; int little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&value; + return _PyLong_FromByteArray(bytes, sizeof(int), + little, !is_unsigned); + } +} + +#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value) \ + { \ + 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 (is_unsigned && unlikely(value < zero)) \ + goto raise_neg_overflow; \ + else \ + goto raise_overflow; \ + } \ + } \ + return (target_type) value; \ + } + +#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 + #if CYTHON_USE_PYLONG_INTERNALS + #include "longintrepr.h" + #endif +#endif + +static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { + const int neg_one = (int) -1, const_zero = 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_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 + #if CYTHON_USE_PYLONG_INTERNALS + switch (Py_SIZE(x)) { + case 0: return 0; + case 1: __PYX_VERIFY_RETURN_INT(int, digit, ((PyLongObject*)x)->ob_digit[0]); + } + #endif +#endif + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } + if (sizeof(int) <= sizeof(unsigned long)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, PyLong_AsUnsignedLong(x)) + } else if (sizeof(int) <= sizeof(unsigned long long)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long long, PyLong_AsUnsignedLongLong(x)) + } + } else { +#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 + #if CYTHON_USE_PYLONG_INTERNALS + switch (Py_SIZE(x)) { + case 0: return 0; + case 1: __PYX_VERIFY_RETURN_INT(int, digit, +(((PyLongObject*)x)->ob_digit[0])); + case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, -(sdigit) ((PyLongObject*)x)->ob_digit[0]); + } + #endif +#endif + if (sizeof(int) <= sizeof(long)) { + __PYX_VERIFY_RETURN_INT(int, long, PyLong_AsLong(x)) + } else if (sizeof(int) <= sizeof(long long)) { + __PYX_VERIFY_RETURN_INT(int, long long, PyLong_AsLongLong(x)) + } + } + { +#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_Int(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_Int(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; +} + +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { + const long neg_one = (long) -1, const_zero = 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); + } else if (sizeof(long) <= sizeof(unsigned long long)) { + return PyLong_FromUnsignedLongLong((unsigned long long) value); + } + } else { + if (sizeof(long) <= sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(long) <= sizeof(long long)) { + return PyLong_FromLongLong((long long) value); + } + } + { + int one = 1; int little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&value; + return _PyLong_FromByteArray(bytes, sizeof(long), + little, !is_unsigned); + } +} + +#if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION < 3 +static PyObject *__Pyx_GetStdout(void) { + PyObject *f = PySys_GetObject((char *)"stdout"); + if (!f) { + PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); + } + return f; +} +static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { + int i; + if (!f) { + if (!(f = __Pyx_GetStdout())) + return -1; + } + Py_INCREF(f); + for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { + PyObject* v; + if (PyFile_SoftSpace(f, 1)) { + if (PyFile_WriteString(" ", f) < 0) + goto error; + } + v = PyTuple_GET_ITEM(arg_tuple, i); + if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) + goto error; + if (PyString_Check(v)) { + char *s = PyString_AsString(v); + Py_ssize_t len = PyString_Size(v); + if (len > 0) { + switch (s[len-1]) { + case ' ': break; + case '\f': case '\r': case '\n': case '\t': case '\v': + PyFile_SoftSpace(f, 0); + break; + default: break; + } + } + } + } + if (newline) { + if (PyFile_WriteString("\n", f) < 0) + goto error; + PyFile_SoftSpace(f, 0); + } + Py_DECREF(f); + return 0; +error: + Py_DECREF(f); + return -1; +} +#else +static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { + PyObject* kwargs = 0; + PyObject* result = 0; + PyObject* end_string; + if (unlikely(!__pyx_print)) { + __pyx_print = PyObject_GetAttr(__pyx_b, __pyx_n_s_print); + if (!__pyx_print) + return -1; + } + if (stream) { + kwargs = PyDict_New(); + if (unlikely(!kwargs)) + return -1; + if (unlikely(PyDict_SetItem(kwargs, __pyx_n_s_file, stream) < 0)) + goto bad; + if (!newline) { + end_string = PyUnicode_FromStringAndSize(" ", 1); + if (unlikely(!end_string)) + goto bad; + if (PyDict_SetItem(kwargs, __pyx_n_s_end, end_string) < 0) { + Py_DECREF(end_string); + goto bad; + } + Py_DECREF(end_string); + } + } else if (!newline) { + if (unlikely(!__pyx_print_kwargs)) { + __pyx_print_kwargs = PyDict_New(); + if (unlikely(!__pyx_print_kwargs)) + return -1; + end_string = PyUnicode_FromStringAndSize(" ", 1); + if (unlikely(!end_string)) + return -1; + if (PyDict_SetItem(__pyx_print_kwargs, __pyx_n_s_end, end_string) < 0) { + Py_DECREF(end_string); + return -1; + } + Py_DECREF(end_string); + } + kwargs = __pyx_print_kwargs; + } + result = PyObject_Call(__pyx_print, arg_tuple, kwargs); + if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) + Py_DECREF(kwargs); + if (!result) + return -1; + Py_DECREF(result); + return 0; +bad: + if (kwargs != __pyx_print_kwargs) + Py_XDECREF(kwargs); + return -1; +} +#endif + +#if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION < 3 +static int __Pyx_PrintOne(PyObject* f, PyObject *o) { + if (!f) { + if (!(f = __Pyx_GetStdout())) + return -1; + } + Py_INCREF(f); + if (PyFile_SoftSpace(f, 0)) { + if (PyFile_WriteString(" ", f) < 0) + goto error; + } + if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) + goto error; + if (PyFile_WriteString("\n", f) < 0) + goto error; + Py_DECREF(f); + return 0; +error: + Py_DECREF(f); + return -1; + /* the line below is just to avoid C compiler + * warnings about unused functions */ + return __Pyx_Print(f, NULL, 0); +} +#else +static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { + int res; + PyObject* arg_tuple = PyTuple_Pack(1, o); + if (unlikely(!arg_tuple)) + return -1; + res = __Pyx_Print(stream, arg_tuple, 1); + Py_DECREF(arg_tuple); + return res; +} +#endif + +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) { + return ::std::complex< float >(x, y); + } + #else + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) { + return x + y*(__pyx_t_float_complex)_Complex_I; + } + #endif +#else + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) { + __pyx_t_float_complex z; + z.real = x; + z.imag = y; + return z; + } +#endif + +#if CYTHON_CCOMPLEX +#else + static CYTHON_INLINE int __Pyx_c_eqf(__pyx_t_float_complex a, __pyx_t_float_complex b) { + return (a.real == b.real) && (a.imag == b.imag); + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sumf(__pyx_t_float_complex a, __pyx_t_float_complex b) { + __pyx_t_float_complex z; + z.real = a.real + b.real; + z.imag = a.imag + b.imag; + return z; + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_difff(__pyx_t_float_complex a, __pyx_t_float_complex b) { + __pyx_t_float_complex z; + z.real = a.real - b.real; + z.imag = a.imag - b.imag; + return z; + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prodf(__pyx_t_float_complex a, __pyx_t_float_complex b) { + __pyx_t_float_complex z; + z.real = a.real * b.real - a.imag * b.imag; + z.imag = a.real * b.imag + a.imag * b.real; + return z; + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quotf(__pyx_t_float_complex a, __pyx_t_float_complex b) { + __pyx_t_float_complex z; + float denom = b.real * b.real + b.imag * b.imag; + z.real = (a.real * b.real + a.imag * b.imag) / denom; + z.imag = (a.imag * b.real - a.real * b.imag) / denom; + return z; + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_negf(__pyx_t_float_complex a) { + __pyx_t_float_complex z; + z.real = -a.real; + z.imag = -a.imag; + return z; + } + static CYTHON_INLINE int __Pyx_c_is_zerof(__pyx_t_float_complex a) { + return (a.real == 0) && (a.imag == 0); + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conjf(__pyx_t_float_complex a) { + __pyx_t_float_complex z; + z.real = a.real; + z.imag = -a.imag; + return z; + } + #if 1 + static CYTHON_INLINE float __Pyx_c_absf(__pyx_t_float_complex z) { + #if !defined(HAVE_HYPOT) || defined(_MSC_VER) + return sqrtf(z.real*z.real + z.imag*z.imag); + #else + return hypotf(z.real, z.imag); + #endif + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_powf(__pyx_t_float_complex a, __pyx_t_float_complex b) { + __pyx_t_float_complex z; + float r, lnr, theta, z_r, z_theta; + if (b.imag == 0 && b.real == (int)b.real) { + if (b.real < 0) { + float denom = a.real * a.real + a.imag * a.imag; + a.real = a.real / denom; + a.imag = -a.imag / denom; + b.real = -b.real; + } + switch ((int)b.real) { + case 0: + z.real = 1; + z.imag = 0; + return z; + case 1: + return a; + case 2: + z = __Pyx_c_prodf(a, a); + return __Pyx_c_prodf(a, a); + case 3: + z = __Pyx_c_prodf(a, a); + return __Pyx_c_prodf(z, a); + case 4: + z = __Pyx_c_prodf(a, a); + return __Pyx_c_prodf(z, z); + } + } + if (a.imag == 0) { + if (a.real == 0) { + return a; + } + r = a.real; + theta = 0; + } else { + r = __Pyx_c_absf(a); + theta = atan2f(a.imag, a.real); + } + lnr = logf(r); + z_r = expf(lnr * b.real - theta * b.imag); + z_theta = theta * b.real + lnr * b.imag; + z.real = z_r * cosf(z_theta); + z.imag = z_r * sinf(z_theta); + return z; + } + #endif +#endif + +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) { + return ::std::complex< double >(x, y); + } + #else + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) { + return x + y*(__pyx_t_double_complex)_Complex_I; + } + #endif +#else + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) { + __pyx_t_double_complex z; + z.real = x; + z.imag = y; + return z; + } +#endif + +#if CYTHON_CCOMPLEX +#else + static CYTHON_INLINE int __Pyx_c_eq(__pyx_t_double_complex a, __pyx_t_double_complex b) { + return (a.real == b.real) && (a.imag == b.imag); + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum(__pyx_t_double_complex a, __pyx_t_double_complex b) { + __pyx_t_double_complex z; + z.real = a.real + b.real; + z.imag = a.imag + b.imag; + return z; + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff(__pyx_t_double_complex a, __pyx_t_double_complex b) { + __pyx_t_double_complex z; + z.real = a.real - b.real; + z.imag = a.imag - b.imag; + return z; + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod(__pyx_t_double_complex a, __pyx_t_double_complex b) { + __pyx_t_double_complex z; + z.real = a.real * b.real - a.imag * b.imag; + z.imag = a.real * b.imag + a.imag * b.real; + return z; + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot(__pyx_t_double_complex a, __pyx_t_double_complex b) { + __pyx_t_double_complex z; + double denom = b.real * b.real + b.imag * b.imag; + z.real = (a.real * b.real + a.imag * b.imag) / denom; + z.imag = (a.imag * b.real - a.real * b.imag) / denom; + return z; + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg(__pyx_t_double_complex a) { + __pyx_t_double_complex z; + z.real = -a.real; + z.imag = -a.imag; + return z; + } + static CYTHON_INLINE int __Pyx_c_is_zero(__pyx_t_double_complex a) { + return (a.real == 0) && (a.imag == 0); + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj(__pyx_t_double_complex a) { + __pyx_t_double_complex z; + z.real = a.real; + z.imag = -a.imag; + return z; + } + #if 1 + static CYTHON_INLINE double __Pyx_c_abs(__pyx_t_double_complex z) { + #if !defined(HAVE_HYPOT) || defined(_MSC_VER) + return sqrt(z.real*z.real + z.imag*z.imag); + #else + return hypot(z.real, z.imag); + #endif + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow(__pyx_t_double_complex a, __pyx_t_double_complex b) { + __pyx_t_double_complex z; + double r, lnr, theta, z_r, z_theta; + if (b.imag == 0 && b.real == (int)b.real) { + if (b.real < 0) { + double denom = a.real * a.real + a.imag * a.imag; + a.real = a.real / denom; + a.imag = -a.imag / denom; + b.real = -b.real; + } + switch ((int)b.real) { + case 0: + z.real = 1; + z.imag = 0; + return z; + case 1: + return a; + case 2: + z = __Pyx_c_prod(a, a); + return __Pyx_c_prod(a, a); + case 3: + z = __Pyx_c_prod(a, a); + return __Pyx_c_prod(z, a); + case 4: + z = __Pyx_c_prod(a, a); + return __Pyx_c_prod(z, z); + } + } + if (a.imag == 0) { + if (a.real == 0) { + return a; + } + r = a.real; + theta = 0; + } else { + r = __Pyx_c_abs(a); + theta = atan2(a.imag, a.real); + } + lnr = log(r); + z_r = exp(lnr * b.real - theta * b.imag); + z_theta = theta * b.real + lnr * b.imag; + z.real = z_r * cos(z_theta); + z.imag = z_r * sin(z_theta); + return z; + } + #endif +#endif + +static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { + const long neg_one = (long) -1, const_zero = 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_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 + #if CYTHON_USE_PYLONG_INTERNALS + switch (Py_SIZE(x)) { + case 0: return 0; + case 1: __PYX_VERIFY_RETURN_INT(long, digit, ((PyLongObject*)x)->ob_digit[0]); + } + #endif +#endif + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } + if (sizeof(long) <= sizeof(unsigned long)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, PyLong_AsUnsignedLong(x)) + } else if (sizeof(long) <= sizeof(unsigned long long)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long long, PyLong_AsUnsignedLongLong(x)) + } + } else { +#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 + #if CYTHON_USE_PYLONG_INTERNALS + switch (Py_SIZE(x)) { + case 0: return 0; + case 1: __PYX_VERIFY_RETURN_INT(long, digit, +(((PyLongObject*)x)->ob_digit[0])); + case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, -(sdigit) ((PyLongObject*)x)->ob_digit[0]); + } + #endif +#endif + if (sizeof(long) <= sizeof(long)) { + __PYX_VERIFY_RETURN_INT(long, long, PyLong_AsLong(x)) + } else if (sizeof(long) <= sizeof(long long)) { + __PYX_VERIFY_RETURN_INT(long, long long, PyLong_AsLongLong(x)) + } + } + { +#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_Int(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_Int(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; +} + +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; +} + +static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) { + PyObject *tmp_type, *tmp_value, *tmp_tb; +#if CYTHON_COMPILING_IN_CPYTHON + PyThreadState *tstate = PyThreadState_GET(); + 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; +#else + PyErr_GetExcInfo(&tmp_type, &tmp_value, &tmp_tb); + PyErr_SetExcInfo(*type, *value, *tb); +#endif + *type = tmp_type; + *value = tmp_value; + *tb = tmp_tb; +} + +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { + PyObject *method, *result = NULL; + method = __Pyx_PyObject_GetAttrStr(obj, method_name); + if (unlikely(!method)) goto bad; +#if CYTHON_COMPILING_IN_CPYTHON + if (likely(PyMethod_Check(method))) { + PyObject *self = PyMethod_GET_SELF(method); + if (likely(self)) { + PyObject *args; + PyObject *function = PyMethod_GET_FUNCTION(method); + args = PyTuple_New(2); + if (unlikely(!args)) goto bad; + Py_INCREF(self); + PyTuple_SET_ITEM(args, 0, self); + Py_INCREF(arg); + PyTuple_SET_ITEM(args, 1, arg); + Py_INCREF(function); + Py_DECREF(method); method = NULL; + result = __Pyx_PyObject_Call(function, args, NULL); + Py_DECREF(args); + Py_DECREF(function); + return result; + } + } +#endif + result = __Pyx_PyObject_CallOneArg(method, arg); +bad: + Py_XDECREF(method); + return result; +} + +static PyObject *__Pyx_Generator_Next(PyObject *self); +static PyObject *__Pyx_Generator_Send(PyObject *self, PyObject *value); +static PyObject *__Pyx_Generator_Close(PyObject *self); +static PyObject *__Pyx_Generator_Throw(PyObject *gen, PyObject *args); +static PyTypeObject *__pyx_GeneratorType = 0; +#define __Pyx_Generator_CheckExact(obj) (Py_TYPE(obj) == __pyx_GeneratorType) +#define __Pyx_Generator_Undelegate(gen) Py_CLEAR((gen)->yieldfrom) +#if 1 || PY_VERSION_HEX < 0x030300B0 +static int __Pyx_PyGen_FetchStopIterationValue(PyObject **pvalue) { + PyObject *et, *ev, *tb; + PyObject *value = NULL; + __Pyx_ErrFetch(&et, &ev, &tb); + if (!et) { + Py_XDECREF(tb); + Py_XDECREF(ev); + Py_INCREF(Py_None); + *pvalue = Py_None; + return 0; + } + if (unlikely(et != PyExc_StopIteration) && + unlikely(!PyErr_GivenExceptionMatches(et, PyExc_StopIteration))) { + __Pyx_ErrRestore(et, ev, tb); + return -1; + } + if (likely(et == PyExc_StopIteration)) { + if (likely(!ev) || !PyObject_IsInstance(ev, PyExc_StopIteration)) { + if (!ev) { + Py_INCREF(Py_None); + ev = Py_None; + } + Py_XDECREF(tb); + Py_DECREF(et); + *pvalue = ev; + return 0; + } + } + PyErr_NormalizeException(&et, &ev, &tb); + if (unlikely(!PyObject_IsInstance(ev, PyExc_StopIteration))) { + __Pyx_ErrRestore(et, ev, tb); + return -1; + } + Py_XDECREF(tb); + Py_DECREF(et); +#if PY_VERSION_HEX >= 0x030300A0 + value = ((PyStopIterationObject *)ev)->value; + Py_INCREF(value); + Py_DECREF(ev); +#else + { + PyObject* args = PyObject_GetAttr(ev, __pyx_n_s_args); + Py_DECREF(ev); + if (likely(args)) { + value = PyObject_GetItem(args, 0); + Py_DECREF(args); + } + if (unlikely(!value)) { + __Pyx_ErrRestore(NULL, NULL, NULL); + Py_INCREF(Py_None); + value = Py_None; + } + } +#endif + *pvalue = value; + return 0; +} +#endif +static CYTHON_INLINE +void __Pyx_Generator_ExceptionClear(__pyx_GeneratorObject *self) { + PyObject *exc_type = self->exc_type; + PyObject *exc_value = self->exc_value; + PyObject *exc_traceback = self->exc_traceback; + self->exc_type = NULL; + self->exc_value = NULL; + self->exc_traceback = NULL; + Py_XDECREF(exc_type); + Py_XDECREF(exc_value); + Py_XDECREF(exc_traceback); +} +static CYTHON_INLINE +int __Pyx_Generator_CheckRunning(__pyx_GeneratorObject *gen) { + if (unlikely(gen->is_running)) { + PyErr_SetString(PyExc_ValueError, + "generator already executing"); + return 1; + } + return 0; +} +static CYTHON_INLINE +PyObject *__Pyx_Generator_SendEx(__pyx_GeneratorObject *self, PyObject *value) { + PyObject *retval; + assert(!self->is_running); + if (unlikely(self->resume_label == 0)) { + if (unlikely(value && value != Py_None)) { + PyErr_SetString(PyExc_TypeError, + "can't send non-None value to a " + "just-started generator"); + return NULL; + } + } + if (unlikely(self->resume_label == -1)) { + PyErr_SetNone(PyExc_StopIteration); + return NULL; + } + if (value) { +#if CYTHON_COMPILING_IN_PYPY +#else + if (self->exc_traceback) { + PyThreadState *tstate = PyThreadState_GET(); + PyTracebackObject *tb = (PyTracebackObject *) self->exc_traceback; + PyFrameObject *f = tb->tb_frame; + Py_XINCREF(tstate->frame); + assert(f->f_back == NULL); + f->f_back = tstate->frame; + } +#endif + __Pyx_ExceptionSwap(&self->exc_type, &self->exc_value, + &self->exc_traceback); + } else { + __Pyx_Generator_ExceptionClear(self); + } + self->is_running = 1; + retval = self->body((PyObject *) self, value); + self->is_running = 0; + if (retval) { + __Pyx_ExceptionSwap(&self->exc_type, &self->exc_value, + &self->exc_traceback); +#if CYTHON_COMPILING_IN_PYPY +#else + if (self->exc_traceback) { + PyTracebackObject *tb = (PyTracebackObject *) self->exc_traceback; + PyFrameObject *f = tb->tb_frame; + Py_CLEAR(f->f_back); + } +#endif + } else { + __Pyx_Generator_ExceptionClear(self); + } + return retval; +} +static CYTHON_INLINE +PyObject *__Pyx_Generator_FinishDelegation(__pyx_GeneratorObject *gen) { + PyObject *ret; + PyObject *val = NULL; + __Pyx_Generator_Undelegate(gen); + __Pyx_PyGen_FetchStopIterationValue(&val); + ret = __Pyx_Generator_SendEx(gen, val); + Py_XDECREF(val); + return ret; +} +static PyObject *__Pyx_Generator_Next(PyObject *self) { + __pyx_GeneratorObject *gen = (__pyx_GeneratorObject*) self; + PyObject *yf = gen->yieldfrom; + if (unlikely(__Pyx_Generator_CheckRunning(gen))) + return NULL; + if (yf) { + PyObject *ret; + gen->is_running = 1; + ret = Py_TYPE(yf)->tp_iternext(yf); + gen->is_running = 0; + if (likely(ret)) { + return ret; + } + return __Pyx_Generator_FinishDelegation(gen); + } + return __Pyx_Generator_SendEx(gen, Py_None); +} +static PyObject *__Pyx_Generator_Send(PyObject *self, PyObject *value) { + __pyx_GeneratorObject *gen = (__pyx_GeneratorObject*) self; + PyObject *yf = gen->yieldfrom; + if (unlikely(__Pyx_Generator_CheckRunning(gen))) + return NULL; + if (yf) { + PyObject *ret; + gen->is_running = 1; + if (__Pyx_Generator_CheckExact(yf)) { + ret = __Pyx_Generator_Send(yf, value); + } else { + if (value == Py_None) + ret = PyIter_Next(yf); + else + ret = __Pyx_PyObject_CallMethod1(yf, __pyx_n_s_send, value); + } + gen->is_running = 0; + if (likely(ret)) { + return ret; + } + return __Pyx_Generator_FinishDelegation(gen); + } + return __Pyx_Generator_SendEx(gen, value); +} +static int __Pyx_Generator_CloseIter(__pyx_GeneratorObject *gen, PyObject *yf) { + PyObject *retval = NULL; + int err = 0; + if (__Pyx_Generator_CheckExact(yf)) { + retval = __Pyx_Generator_Close(yf); + if (!retval) + return -1; + } else { + PyObject *meth; + gen->is_running = 1; + meth = PyObject_GetAttr(yf, __pyx_n_s_close); + if (unlikely(!meth)) { + if (!PyErr_ExceptionMatches(PyExc_AttributeError)) { + PyErr_WriteUnraisable(yf); + } + PyErr_Clear(); + } else { + retval = PyObject_CallFunction(meth, NULL); + Py_DECREF(meth); + if (!retval) + err = -1; + } + gen->is_running = 0; + } + Py_XDECREF(retval); + return err; +} +static PyObject *__Pyx_Generator_Close(PyObject *self) { + __pyx_GeneratorObject *gen = (__pyx_GeneratorObject *) self; + PyObject *retval, *raised_exception; + PyObject *yf = gen->yieldfrom; + int err = 0; + if (unlikely(__Pyx_Generator_CheckRunning(gen))) + return NULL; + if (yf) { + Py_INCREF(yf); + err = __Pyx_Generator_CloseIter(gen, yf); + __Pyx_Generator_Undelegate(gen); + Py_DECREF(yf); + } + if (err == 0) + PyErr_SetNone(PyExc_GeneratorExit); + retval = __Pyx_Generator_SendEx(gen, NULL); + if (retval) { + Py_DECREF(retval); + PyErr_SetString(PyExc_RuntimeError, + "generator ignored GeneratorExit"); + return NULL; + } + raised_exception = PyErr_Occurred(); + if (!raised_exception + || raised_exception == PyExc_StopIteration + || raised_exception == PyExc_GeneratorExit + || PyErr_GivenExceptionMatches(raised_exception, PyExc_GeneratorExit) + || PyErr_GivenExceptionMatches(raised_exception, PyExc_StopIteration)) + { + if (raised_exception) PyErr_Clear(); + Py_INCREF(Py_None); + return Py_None; + } + return NULL; +} +static PyObject *__Pyx_Generator_Throw(PyObject *self, PyObject *args) { + __pyx_GeneratorObject *gen = (__pyx_GeneratorObject *) self; + PyObject *typ; + PyObject *tb = NULL; + PyObject *val = NULL; + PyObject *yf = gen->yieldfrom; + if (!PyArg_UnpackTuple(args, (char *)"throw", 1, 3, &typ, &val, &tb)) + return NULL; + if (unlikely(__Pyx_Generator_CheckRunning(gen))) + return NULL; + if (yf) { + PyObject *ret; + Py_INCREF(yf); + if (PyErr_GivenExceptionMatches(typ, PyExc_GeneratorExit)) { + int err = __Pyx_Generator_CloseIter(gen, yf); + Py_DECREF(yf); + __Pyx_Generator_Undelegate(gen); + if (err < 0) + return __Pyx_Generator_SendEx(gen, NULL); + goto throw_here; + } + gen->is_running = 1; + if (__Pyx_Generator_CheckExact(yf)) { + ret = __Pyx_Generator_Throw(yf, args); + } else { + PyObject *meth = PyObject_GetAttr(yf, __pyx_n_s_throw); + if (unlikely(!meth)) { + Py_DECREF(yf); + if (!PyErr_ExceptionMatches(PyExc_AttributeError)) { + gen->is_running = 0; + return NULL; + } + PyErr_Clear(); + __Pyx_Generator_Undelegate(gen); + gen->is_running = 0; + goto throw_here; + } + ret = PyObject_CallObject(meth, args); + Py_DECREF(meth); + } + gen->is_running = 0; + Py_DECREF(yf); + if (!ret) { + ret = __Pyx_Generator_FinishDelegation(gen); + } + return ret; + } +throw_here: + __Pyx_Raise(typ, val, tb, NULL); + return __Pyx_Generator_SendEx(gen, NULL); +} +static int __Pyx_Generator_traverse(PyObject *self, visitproc visit, void *arg) { + __pyx_GeneratorObject *gen = (__pyx_GeneratorObject *) self; + Py_VISIT(gen->closure); + Py_VISIT(gen->classobj); + Py_VISIT(gen->yieldfrom); + Py_VISIT(gen->exc_type); + Py_VISIT(gen->exc_value); + Py_VISIT(gen->exc_traceback); + return 0; +} +static int __Pyx_Generator_clear(PyObject *self) { + __pyx_GeneratorObject *gen = (__pyx_GeneratorObject *) self; + Py_CLEAR(gen->closure); + Py_CLEAR(gen->classobj); + Py_CLEAR(gen->yieldfrom); + Py_CLEAR(gen->exc_type); + Py_CLEAR(gen->exc_value); + Py_CLEAR(gen->exc_traceback); + Py_CLEAR(gen->gi_name); + Py_CLEAR(gen->gi_qualname); + return 0; +} +static void __Pyx_Generator_dealloc(PyObject *self) { + __pyx_GeneratorObject *gen = (__pyx_GeneratorObject *) self; + PyObject_GC_UnTrack(gen); + if (gen->gi_weakreflist != NULL) + PyObject_ClearWeakRefs(self); + if (gen->resume_label > 0) { + PyObject_GC_Track(self); +#if PY_VERSION_HEX >= 0x030400a1 + if (PyObject_CallFinalizerFromDealloc(self)) +#else + Py_TYPE(gen)->tp_del(self); + if (self->ob_refcnt > 0) +#endif + { + return; + } + PyObject_GC_UnTrack(self); + } + __Pyx_Generator_clear(self); + PyObject_GC_Del(gen); +} +static void __Pyx_Generator_del(PyObject *self) { + PyObject *res; + PyObject *error_type, *error_value, *error_traceback; + __pyx_GeneratorObject *gen = (__pyx_GeneratorObject *) self; + if (gen->resume_label <= 0) + return ; +#if PY_VERSION_HEX < 0x030400a1 + assert(self->ob_refcnt == 0); + self->ob_refcnt = 1; +#endif + __Pyx_ErrFetch(&error_type, &error_value, &error_traceback); + res = __Pyx_Generator_Close(self); + if (res == NULL) + PyErr_WriteUnraisable(self); + else + Py_DECREF(res); + __Pyx_ErrRestore(error_type, error_value, error_traceback); +#if PY_VERSION_HEX < 0x030400a1 + assert(self->ob_refcnt > 0); + if (--self->ob_refcnt == 0) { + return; + } + { + Py_ssize_t refcnt = self->ob_refcnt; + _Py_NewReference(self); + self->ob_refcnt = refcnt; + } +#if CYTHON_COMPILING_IN_CPYTHON + assert(PyType_IS_GC(self->ob_type) && + _Py_AS_GC(self)->gc.gc_refs != _PyGC_REFS_UNTRACKED); + _Py_DEC_REFTOTAL; +#endif +#ifdef COUNT_ALLOCS + --Py_TYPE(self)->tp_frees; + --Py_TYPE(self)->tp_allocs; +#endif +#endif +} +static PyObject * +__Pyx_Generator_get_name(__pyx_GeneratorObject *self) +{ + Py_INCREF(self->gi_name); + return self->gi_name; +} +static int +__Pyx_Generator_set_name(__pyx_GeneratorObject *self, 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 = self->gi_name; + Py_INCREF(value); + self->gi_name = value; + Py_XDECREF(tmp); + return 0; +} +static PyObject * +__Pyx_Generator_get_qualname(__pyx_GeneratorObject *self) +{ + Py_INCREF(self->gi_qualname); + return self->gi_qualname; +} +static int +__Pyx_Generator_set_qualname(__pyx_GeneratorObject *self, 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 = self->gi_qualname; + Py_INCREF(value); + self->gi_qualname = value; + Py_XDECREF(tmp); + return 0; +} +static PyGetSetDef __pyx_Generator_getsets[] = { + {(char *) "__name__", (getter)__Pyx_Generator_get_name, (setter)__Pyx_Generator_set_name, + (char*) PyDoc_STR("name of the generator"), 0}, + {(char *) "__qualname__", (getter)__Pyx_Generator_get_qualname, (setter)__Pyx_Generator_set_qualname, + (char*) PyDoc_STR("qualified name of the generator"), 0}, + {0, 0, 0, 0, 0} +}; +static PyMemberDef __pyx_Generator_memberlist[] = { + {(char *) "gi_running", T_BOOL, offsetof(__pyx_GeneratorObject, is_running), READONLY, NULL}, + {0, 0, 0, 0, 0} +}; +static PyMethodDef __pyx_Generator_methods[] = { + {"send", (PyCFunction) __Pyx_Generator_Send, METH_O, 0}, + {"throw", (PyCFunction) __Pyx_Generator_Throw, METH_VARARGS, 0}, + {"close", (PyCFunction) __Pyx_Generator_Close, METH_NOARGS, 0}, + {0, 0, 0, 0} +}; +static PyTypeObject __pyx_GeneratorType_type = { + PyVarObject_HEAD_INIT(0, 0) + "generator", + sizeof(__pyx_GeneratorObject), + 0, + (destructor) __Pyx_Generator_dealloc, + 0, + 0, + 0, +#if PY_MAJOR_VERSION < 3 + 0, +#else + 0, +#endif + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_HAVE_FINALIZE, + 0, + (traverseproc) __Pyx_Generator_traverse, + 0, + 0, + offsetof(__pyx_GeneratorObject, gi_weakreflist), + 0, + (iternextfunc) __Pyx_Generator_Next, + __pyx_Generator_methods, + __pyx_Generator_memberlist, + __pyx_Generator_getsets, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, +#if PY_VERSION_HEX >= 0x030400a1 + 0, +#else + __Pyx_Generator_del, +#endif + 0, +#if PY_VERSION_HEX >= 0x030400a1 + __Pyx_Generator_del, +#endif +}; +static __pyx_GeneratorObject *__Pyx_Generator_New(__pyx_generator_body_t body, + PyObject *closure, PyObject *name, PyObject *qualname) { + __pyx_GeneratorObject *gen = + PyObject_GC_New(__pyx_GeneratorObject, &__pyx_GeneratorType_type); + if (gen == NULL) + return NULL; + gen->body = body; + gen->closure = closure; + Py_XINCREF(closure); + gen->is_running = 0; + gen->resume_label = 0; + gen->classobj = NULL; + gen->yieldfrom = NULL; + gen->exc_type = NULL; + gen->exc_value = NULL; + gen->exc_traceback = NULL; + gen->gi_weakreflist = NULL; + Py_XINCREF(qualname); + gen->gi_qualname = qualname; + Py_XINCREF(name); + gen->gi_name = name; + PyObject_GC_Track(gen); + return gen; +} +static int __pyx_Generator_init(void) { + __pyx_GeneratorType_type.tp_getattro = PyObject_GenericGetAttr; + __pyx_GeneratorType_type.tp_iter = PyObject_SelfIter; + __pyx_GeneratorType = __Pyx_FetchCommonType(&__pyx_GeneratorType_type); + if (__pyx_GeneratorType == NULL) { + return -1; + } + return 0; +} + +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; +} + +#ifndef __PYX_HAVE_RT_ImportModule +#define __PYX_HAVE_RT_ImportModule +static PyObject *__Pyx_ImportModule(const char *name) { + PyObject *py_name = 0; + PyObject *py_module = 0; + py_name = __Pyx_PyIdentifier_FromString(name); + if (!py_name) + goto bad; + py_module = PyImport_Import(py_name); + Py_DECREF(py_name); + return py_module; +bad: + Py_XDECREF(py_name); + return 0; +} +#endif + +#ifndef __PYX_HAVE_RT_ImportType +#define __PYX_HAVE_RT_ImportType +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name, + size_t size, int strict) +{ + PyObject *py_module = 0; + PyObject *result = 0; + PyObject *py_name = 0; + char warning[200]; + Py_ssize_t basicsize; +#ifdef Py_LIMITED_API + PyObject *py_basicsize; +#endif + py_module = __Pyx_ImportModule(module_name); + if (!py_module) + goto bad; + py_name = __Pyx_PyIdentifier_FromString(class_name); + if (!py_name) + goto bad; + result = PyObject_GetAttr(py_module, py_name); + Py_DECREF(py_name); + py_name = 0; + Py_DECREF(py_module); + py_module = 0; + if (!result) + goto bad; + if (!PyType_Check(result)) { + PyErr_Format(PyExc_TypeError, + "%.200s.%.200s is not a type object", + module_name, class_name); + goto bad; + } +#ifndef Py_LIMITED_API + basicsize = ((PyTypeObject *)result)->tp_basicsize; +#else + py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); + if (!py_basicsize) + goto bad; + basicsize = PyLong_AsSsize_t(py_basicsize); + Py_DECREF(py_basicsize); + py_basicsize = 0; + if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred()) + goto bad; +#endif + if (!strict && (size_t)basicsize > size) { + PyOS_snprintf(warning, sizeof(warning), + "%s.%s size changed, may indicate binary incompatibility", + module_name, class_name); + if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad; + } + else if ((size_t)basicsize != size) { + PyErr_Format(PyExc_ValueError, + "%.200s.%.200s has the wrong size, try recompiling", + module_name, class_name); + goto bad; + } + return (PyTypeObject *)result; +bad: + Py_XDECREF(py_module); + Py_XDECREF(result); + return NULL; +} +#endif + +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; + ++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 char* __Pyx_PyObject_AsString(PyObject* o) { + Py_ssize_t ignore; + return __Pyx_PyObject_AsStringAndSize(o, &ignore); +} +static CYTHON_INLINE 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)) { +#if PY_VERSION_HEX < 0x03030000 + 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 + if (__Pyx_PyUnicode_READY(o) == -1) return NULL; +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + if (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 + } else +#endif +#if !CYTHON_COMPILING_IN_PYPY + 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 CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { + PyNumberMethods *m; + const char *name = NULL; + PyObject *res = NULL; +#if PY_MAJOR_VERSION < 3 + if (PyInt_Check(x) || PyLong_Check(x)) +#else + if (PyLong_Check(x)) +#endif + return Py_INCREF(x), x; + m = Py_TYPE(x)->tp_as_number; +#if PY_MAJOR_VERSION < 3 + if (m && m->nb_int) { + name = "int"; + res = PyNumber_Int(x); + } + else if (m && m->nb_long) { + name = "long"; + res = PyNumber_Long(x); + } +#else + if (m && m->nb_int) { + name = "int"; + res = PyNumber_Long(x); + } +#endif + if (res) { +#if PY_MAJOR_VERSION < 3 + if (!PyInt_Check(res) && !PyLong_Check(res)) { +#else + if (!PyLong_Check(res)) { +#endif + PyErr_Format(PyExc_TypeError, + "__%.4s__ returned non-%.4s (type %.200s)", + name, name, Py_TYPE(res)->tp_name); + Py_DECREF(res); + return NULL; + } + } + 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))) + return PyInt_AS_LONG(b); +#endif + if (likely(PyLong_CheckExact(b))) { + #if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 + #if CYTHON_USE_PYLONG_INTERNALS + switch (Py_SIZE(b)) { + case -1: return -(sdigit)((PyLongObject*)b)->ob_digit[0]; + case 0: return 0; + case 1: return ((PyLongObject*)b)->ob_digit[0]; + } + #endif + #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_PyInt_FromSize_t(size_t ival) { + return PyInt_FromSize_t(ival); +} + + +#endif /* Py_PYTHON_H */ diff --git a/experiments/ml.so b/experiments/ml.so Binary files differnew file mode 100755 index 0000000..571865b --- /dev/null +++ b/experiments/ml.so diff --git a/experiments/out.log b/experiments/out.log new file mode 100644 index 0000000..407eefe --- /dev/null +++ b/experiments/out.log @@ -0,0 +1,3858 @@ +1.0 0.01 3.45324881289e-06 11002 -152373.756762 +1.0 0.04 3.38262701841e-06 10777 -152405.770449 +1.0 0.07 3.35406442597e-06 10686 -153164.537314 +1.0 0.1 3.33429032352e-06 10623 -154401.200111 +1.0 0.13 3.30698322965e-06 10536 -156056.750373 +1.0 0.16 3.30698322965e-06 10536 -158092.563181 +1.0 0.19 3.30698322965e-06 10536 -160524.168077 +1.0 0.22 3.28595362863e-06 10469 -163338.491856 +1.0 0.25 3.28407038077e-06 10463 -166548.430599 +1.0 0.28 3.28407038077e-06 10463 -170173.765055 +1.0 0.31 3.28407038077e-06 10463 -174231.987109 +1.0 0.34 3.26147140654e-06 10391 -178735.091444 +1.0 0.37 3.26147140654e-06 10391 -183715.722798 +1.0 0.4 3.26147140654e-06 10391 -189211.308601 +1.0 0.43 3.26147140654e-06 10391 -195260.710977 +1.0 0.46 3.25739103619e-06 10378 -201910.210955 +1.0 0.49 3.23322268875e-06 10301 -209212.13195 +1.0 0.52 3.23322268875e-06 10301 -217226.599833 +1.0 0.55 3.23322268875e-06 10301 -226044.689665 +1.0 0.58 3.23322268875e-06 10301 -235764.690988 +1.0 0.61 3.23322268875e-06 10301 -246507.568015 +1.0 0.64 3.23322268875e-06 10301 -258424.514499 +1.0 0.67 3.23322268875e-06 10301 -271706.978841 +1.0 0.7 3.21407633557e-06 10240 -286594.302167 +1.0 0.73 3.21407633557e-06 10240 -303418.139175 +1.0 0.76 3.21407633557e-06 10240 -322623.131242 +1.0 0.79 3.21407633557e-06 10240 -344830.756962 +1.0 0.82 3.21407633557e-06 10240 -370952.165726 +1.0 0.85 3.19775485418e-06 10188 -402393.216523 +1.0 0.88 3.19241898527e-06 10171 -441521.055457 +0.0909090909091 0.01 3.0750298691e-06 9797 -150463.291574 +0.0909090909091 0.04 2.64376611079e-06 8423 -146426.454929 +0.0909090909091 0.07 2.52198274964e-06 8035 -144774.783776 +0.0909090909091 0.1 2.44288633982e-06 7783 -144284.276633 +0.0909090909091 0.13 2.39643289278e-06 7635 -144559.509024 +0.0909090909091 0.16 2.36190668215e-06 7525 -145459.762822 +0.0909090909091 0.19 2.32894984472e-06 7420 -146895.533962 +0.0909090909091 0.22 2.29567913266e-06 7314 -148827.173822 +0.0909090909091 0.25 2.27496340627e-06 7248 -151237.723392 +0.0909090909091 0.28 2.25487542918e-06 7184 -154121.451004 +0.0909090909091 0.31 2.24169269421e-06 7142 -157484.470574 +0.0909090909091 0.34 2.22819608459e-06 7099 -161337.94231 +0.0909090909091 0.37 2.20653873429e-06 7030 -165698.258589 +0.0909090909091 0.4 2.1917866261e-06 6983 -170594.028285 +0.0909090909091 0.43 2.18362588541e-06 6957 -176058.93665 +0.0909090909091 0.46 2.17295414758e-06 6923 -182135.66092 +0.0909090909091 0.49 2.16824602794e-06 6908 -188874.899404 +0.0909090909091 0.52 2.15882978868e-06 6878 -196339.502374 +0.0909090909091 0.55 2.14941354942e-06 6848 -204605.31655 +0.0909090909091 0.58 2.14031118479e-06 6819 -213766.700883 +0.0909090909091 0.61 2.12775619911e-06 6779 -223938.297053 +0.0909090909091 0.64 2.12242033019e-06 6762 -235265.93441 +0.0909090909091 0.67 2.11394571485e-06 6735 -247935.42533 +0.0909090909091 0.7 2.10296010238e-06 6700 -262185.724641 +0.0909090909091 0.73 2.09322998847e-06 6669 -278332.096551 +0.0909090909091 0.76 2.08130275207e-06 6631 -296803.170057 +0.0909090909091 0.79 2.07125876352e-06 6599 -318201.827345 +0.0909090909091 0.82 2.05336790892e-06 6542 -343410.417577 +0.0909090909091 0.85 2.04395166965e-06 6512 -373799.089191 +0.0909090909091 0.88 2.03076893468e-06 6470 -411665.87129 +0.047619047619 0.01 2.99938608035e-06 9556 -149763.532956 +0.047619047619 0.04 2.33114696722e-06 7427 -144303.444655 +0.047619047619 0.07 2.15192454655e-06 6856 -141652.327419 +0.047619047619 0.1 2.0800472535e-06 6627 -140455.986397 +0.047619047619 0.13 2.01946944757e-06 6434 -140194.999096 +0.047619047619 0.16 1.98494323693e-06 6324 -140646.765177 +0.047619047619 0.19 1.95606676985e-06 6232 -141704.232879 +0.047619047619 0.22 1.93001517456e-06 6149 -143307.788155 +0.047619047619 0.25 1.90051095819e-06 6055 -145420.471085 +0.047619047619 0.28 1.88105073038e-06 5993 -148029.74579 +0.047619047619 0.31 1.86190437721e-06 5932 -151134.210114 +0.047619047619 0.34 1.8424441494e-06 5870 -154741.974156 +0.047619047619 0.37 1.82737816657e-06 5822 -158867.786416 +0.047619047619 0.4 1.81607867946e-06 5786 -163537.222704 +0.047619047619 0.43 1.80258206984e-06 5743 -168781.553811 +0.047619047619 0.46 1.79096870808e-06 5706 -174639.297024 +0.047619047619 0.49 1.77935534633e-06 5669 -181160.048266 +0.047619047619 0.52 1.76805585921e-06 5633 -188404.097365 +0.047619047619 0.55 1.75644249745e-06 5596 -196445.989484 +0.047619047619 0.58 1.74765400747e-06 5568 -205377.678182 +0.047619047619 0.61 1.73478514714e-06 5527 -215312.601697 +0.047619047619 0.64 1.7263105318e-06 5500 -226393.784294 +0.047619047619 0.67 1.7165804179e-06 5469 -238803.804134 +0.047619047619 0.7 1.70873355184e-06 5444 -252777.747868 +0.047619047619 0.73 1.69743406473e-06 5408 -268625.6512 +0.047619047619 0.76 1.68613457761e-06 5372 -286768.996828 +0.047619047619 0.79 1.67514896513e-06 5337 -307800.090952 +0.047619047619 0.82 1.66416335266e-06 5302 -332588.345345 +0.047619047619 0.85 1.64941124448e-06 5255 -362477.935405 +0.047619047619 0.88 1.63120651523e-06 5197 -399721.32613 +0.0322580645161 0.01 3.0571390145e-06 9740 -149252.337596 +0.0322580645161 0.04 2.11677058663e-06 6744 -143085.434954 +0.0322580645161 0.07 1.95230027415e-06 6220 -139856.709526 +0.0322580645161 0.1 1.86096275328e-06 5929 -138270.729159 +0.0322580645161 0.13 1.79975719806e-06 5734 -137696.24859 +0.0322580645161 0.16 1.75581474816e-06 5594 -137887.862672 +0.0322580645161 0.19 1.72317178538e-06 5490 -138716.003824 +0.0322580645161 0.22 1.69806181401e-06 5410 -140112.438269 +0.0322580645161 0.25 1.67201021871e-06 5327 -142039.406609 +0.0322580645161 0.28 1.65286386554e-06 5266 -144475.892389 +0.0322580645161 0.31 1.63403138701e-06 5206 -147418.470661 +0.0322580645161 0.34 1.61111853813e-06 5133 -150870.399022 +0.0322580645161 0.37 1.59354155817e-06 5077 -154843.715403 +0.0322580645161 0.4 1.57910332464e-06 5031 -159362.889403 +0.0322580645161 0.43 1.56497896574e-06 4986 -164458.053537 +0.0322580645161 0.46 1.55367947862e-06 4950 -170167.915189 +0.0322580645161 0.49 1.53955511973e-06 4905 -176539.352396 +0.0322580645161 0.52 1.52794175797e-06 4868 -183631.216215 +0.0322580645161 0.55 1.51695614549e-06 4833 -191516.291085 +0.0322580645161 0.58 1.50408728516e-06 4792 -200285.038784 +0.0322580645161 0.61 1.49718204304e-06 4770 -210050.477772 +0.0322580645161 0.64 1.4865103052e-06 4736 -220953.481602 +0.0322580645161 0.67 1.47113044774e-06 4687 -233170.874575 +0.0322580645161 0.7 1.46202808312e-06 4658 -246934.474791 +0.0322580645161 0.73 1.45323959314e-06 4630 -262551.130327 +0.0322580645161 0.76 1.43817361031e-06 4582 -280435.91002 +0.0322580645161 0.79 1.42373537677e-06 4536 -301168.584331 +0.0322580645161 0.82 1.41369138823e-06 4504 -325605.866758 +0.0322580645161 0.85 1.39893928004e-06 4457 -355069.585014 +0.0322580645161 0.88 1.38355942258e-06 4408 -391769.852111 +0.0243902439024 0.01 3.00158320284e-06 9563 -148823.142 +0.0243902439024 0.04 1.98117674122e-06 6312 -142295.808377 +0.0243902439024 0.07 1.7925380813e-06 5711 -138673.442888 +0.0243902439024 0.1 1.69868956329e-06 5412 -136794.449231 +0.0243902439024 0.13 1.64313375163e-06 5235 -136004.086469 +0.0243902439024 0.16 1.5885195639e-06 5061 -136013.507055 +0.0243902439024 0.19 1.54959910827e-06 4937 -136672.239708 +0.0243902439024 0.22 1.51978101727e-06 4842 -137914.769668 +0.0243902439024 0.25 1.4924739234e-06 4755 -139695.720461 +0.0243902439024 0.28 1.47364144488e-06 4695 -141997.294447 +0.0243902439024 0.31 1.45292571849e-06 4629 -144810.730107 +0.0243902439024 0.34 1.4388013596e-06 4584 -148140.214587 +0.0243902439024 0.37 1.41808563322e-06 4518 -151995.978095 +0.0243902439024 0.4 1.40647227146e-06 4481 -156398.99106 +0.0243902439024 0.43 1.39517278434e-06 4445 -161379.729886 +0.0243902439024 0.46 1.38199004937e-06 4403 -166972.801242 +0.0243902439024 0.49 1.37069056225e-06 4367 -173225.941393 +0.0243902439024 0.52 1.3606465737e-06 4335 -180196.722942 +0.0243902439024 0.55 1.35248583301e-06 4309 -187957.793598 +0.0243902439024 0.58 1.34150022053e-06 4274 -196597.605228 +0.0243902439024 0.61 1.33239785591e-06 4245 -206225.259286 +0.0243902439024 0.64 1.32203999272e-06 4212 -216980.475554 +0.0243902439024 0.67 1.31419312666e-06 4187 -229039.175135 +0.0243902439024 0.7 1.30257976491e-06 4150 -242629.232668 +0.0243902439024 0.73 1.29504677349e-06 4126 -258051.500565 +0.0243902439024 0.76 1.28343341173e-06 4089 -275714.769655 +0.0243902439024 0.79 1.27715591889e-06 4069 -296193.760237 +0.0243902439024 0.82 1.26868130355e-06 4042 -320329.123752 +0.0243902439024 0.85 1.25800956572e-06 4008 -349419.694714 +0.0243902439024 0.88 1.24827945181e-06 3977 -385635.396338 +0.0196078431373 0.01 2.93410015478e-06 9348 -148498.466954 +0.0196078431373 0.04 1.86975124326e-06 5957 -141741.668613 +0.0196078431373 0.07 1.66887147229e-06 5317 -137797.607539 +0.0196078431373 0.1 1.56654833895e-06 4991 -135703.702967 +0.0196078431373 0.13 1.50157628803e-06 4784 -134726.60019 +0.0196078431373 0.16 1.45731996348e-06 4643 -134577.515808 +0.0196078431373 0.19 1.41683013465e-06 4514 -135106.887459 +0.0196078431373 0.22 1.39172016327e-06 4434 -136231.471965 +0.0196078431373 0.25 1.36755181583e-06 4357 -137909.165628 +0.0196078431373 0.28 1.35123033444e-06 4305 -140113.087181 +0.0196078431373 0.31 1.33208398127e-06 4244 -142835.314044 +0.0196078431373 0.34 1.31952899558e-06 4204 -146075.610904 +0.0196078431373 0.37 1.30603238597e-06 4161 -149845.477111 +0.0196078431373 0.4 1.29536064814e-06 4127 -154163.371633 +0.0196078431373 0.43 1.2809224146e-06 4081 -159056.348347 +0.0196078431373 0.46 1.27244779926e-06 4054 -164561.036785 +0.0196078431373 0.49 1.26522868249e-06 4031 -170724.096266 +0.0196078431373 0.52 1.25581244323e-06 4001 -177601.95894 +0.0196078431373 0.55 1.24733782789e-06 3974 -185264.61658 +0.0196078431373 0.58 1.24357133218e-06 3962 -193800.573442 +0.0196078431373 0.61 1.23572446613e-06 3937 -203318.009157 +0.0196078431373 0.64 1.23038859721e-06 3920 -213953.627589 +0.0196078431373 0.67 1.22599435222e-06 3906 -225881.765073 +0.0196078431373 0.7 1.21814748617e-06 3881 -239326.076937 +0.0196078431373 0.73 1.21061449476e-06 3857 -254583.887996 +0.0196078431373 0.76 1.20025663157e-06 3824 -272057.258962 +0.0196078431373 0.79 1.19366526408e-06 3803 -292310.40304 +0.0196078431373 0.82 1.18738777124e-06 3783 -316171.012162 +0.0196078431373 0.85 1.17828540662e-06 3754 -344915.833831 +0.0196078431373 0.88 1.16949691664e-06 3726 -380676.137333 +0.016393442623 0.01 2.88074146562e-06 9178 -148238.951955 +0.016393442623 0.04 1.76334773958e-06 5618 -141320.153976 +0.016393442623 0.07 1.57094258394e-06 5005 -137124.470779 +0.016393442623 0.1 1.46202808312e-06 4658 -134838.515361 +0.016393442623 0.13 1.39674215755e-06 4450 -133720.919166 +0.016393442623 0.16 1.35939107513e-06 4331 -133457.703056 +0.016393442623 0.19 1.32831748556e-06 4232 -133893.294598 +0.016393442623 0.22 1.30289363955e-06 4151 -134937.013968 +0.016393442623 0.25 1.2787252921e-06 4074 -136537.370778 +0.016393442623 0.28 1.26554255713e-06 4032 -138668.696809 +0.016393442623 0.31 1.25141819824e-06 3987 -141321.315854 +0.016393442623 0.34 1.24106033504e-06 3954 -144494.482684 +0.016393442623 0.37 1.23038859721e-06 3920 -148199.166995 +0.016393442623 0.4 1.22191398187e-06 3893 -152451.568181 +0.016393442623 0.43 1.21343936654e-06 3866 -157278.86005 +0.016393442623 0.46 1.20527862584e-06 3840 -162715.929842 +0.016393442623 0.49 1.1968040105e-06 3813 -168807.113089 +0.016393442623 0.52 1.19021264302e-06 3792 -175608.216447 +0.016393442623 0.55 1.18550452339e-06 3777 -183189.303582 +0.016393442623 0.58 1.17702990805e-06 3750 -191635.99382 +0.016393442623 0.61 1.17263566306e-06 3736 -201055.874861 +0.016393442623 0.64 1.16604429557e-06 3715 -211583.312365 +0.016393442623 0.67 1.15819742952e-06 3690 -223389.018938 +0.016393442623 0.7 1.1528615606e-06 3673 -236694.706709 +0.016393442623 0.73 1.14627019312e-06 3652 -251792.803141 +0.016393442623 0.76 1.1409343242e-06 3635 -269080.336351 +0.016393442623 0.79 1.13183195958e-06 3606 -289112.329 +0.016393442623 0.82 1.12272959496e-06 3577 -312700.133592 +0.016393442623 0.85 1.11362723033e-06 3548 -341096.487136 +0.016393442623 0.88 1.10640811356e-06 3525 -376393.803972 +0.0140845070423 0.01 2.82895214966e-06 9013 -148029.711632 +0.0140845070423 0.04 1.68613457761e-06 5372 -140973.63127 +0.0140845070423 0.07 1.48556868128e-06 4733 -136589.140351 +0.0140845070423 0.1 1.38230392401e-06 4404 -134158.87826 +0.0140845070423 0.13 1.32988685877e-06 4237 -132934.942574 +0.0140845070423 0.16 1.28563053423e-06 4096 -132589.314568 +0.0140845070423 0.19 1.25518469394e-06 3999 -132948.641969 +0.0140845070423 0.22 1.23509671684e-06 3935 -133924.243252 +0.0140845070423 0.25 1.21971685938e-06 3886 -135466.431375 +0.0140845070423 0.28 1.20810349762e-06 3849 -137545.277942 +0.0140845070423 0.31 1.19554851193e-06 3809 -140145.972683 +0.0140845070423 0.34 1.18393515017e-06 3772 -143266.16501 +0.0140845070423 0.37 1.17546053484e-06 3745 -146916.188241 +0.0140845070423 0.4 1.16886916735e-06 3724 -151113.14498 +0.0140845070423 0.43 1.16008067737e-06 3696 -155882.44839 +0.0140845070423 0.46 1.15254768596e-06 3672 -161257.484374 +0.0140845070423 0.49 1.14438694526e-06 3646 -167282.033339 +0.0140845070423 0.52 1.13905107635e-06 3629 -174011.783344 +0.0140845070423 0.55 1.13245970886e-06 3608 -181515.327979 +0.0140845070423 0.58 1.1268099653e-06 3590 -189876.867145 +0.0140845070423 0.61 1.11833534997e-06 3563 -199201.497637 +0.0140845070423 0.64 1.11143010784e-06 3541 -209621.860489 +0.0140845070423 0.67 1.10829136142e-06 3531 -221308.141517 +0.0140845070423 0.7 1.09981674608e-06 3504 -234477.667424 +0.0140845070423 0.73 1.09291150395e-06 3482 -249417.619486 +0.0140845070423 0.76 1.08632013647e-06 3461 -266518.941512 +0.0140845070423 0.79 1.07941489434e-06 3439 -286328.249506 +0.0140845070423 0.82 1.07345127614e-06 3420 -309642.402001 +0.0140845070423 0.85 1.06748765794e-06 3401 -337693.600303 +0.0140845070423 0.88 1.0590130426e-06 3374 -372530.298364 +0.0123456790123 0.01 2.77779058299e-06 8850 -147851.138646 +0.0123456790123 0.04 1.62712614488e-06 5184 -140694.481585 +0.0123456790123 0.07 1.41494688679e-06 4508 -136160.801015 +0.0123456790123 0.1 1.32329549129e-06 4216 -133620.289476 +0.0123456790123 0.13 1.26208993607e-06 4021 -132309.90306 +0.0123456790123 0.16 1.22693597615e-06 3909 -131890.375247 +0.0123456790123 0.19 1.20841737226e-06 3850 -132195.55712 +0.0123456790123 0.22 1.18832939516e-06 3786 -133126.31055 +0.0123456790123 0.25 1.17389116163e-06 3740 -134622.549188 +0.0123456790123 0.28 1.16290554915e-06 3705 -136654.925463 +0.0123456790123 0.31 1.15097831275e-06 3667 -139209.841103 +0.0123456790123 0.34 1.14124819884e-06 3636 -142283.951765 +0.0123456790123 0.37 1.134970706e-06 3616 -145886.056462 +0.0123456790123 0.4 1.12524059209e-06 3585 -150031.968853 +0.0123456790123 0.43 1.11519660354e-06 3553 -154745.123921 +0.0123456790123 0.46 1.10829136142e-06 3531 -160059.795513 +0.0123456790123 0.49 1.10232774322e-06 3512 -166021.016094 +0.0123456790123 0.52 1.09353925324e-06 3484 -172681.298157 +0.0123456790123 0.55 1.08663401111e-06 3462 -180107.569468 +0.0123456790123 0.58 1.08192589148e-06 3447 -188384.658662 +0.0123456790123 0.61 1.07564839863e-06 3427 -197616.421133 +0.0123456790123 0.64 1.07062640436e-06 3411 -207933.365089 +0.0123456790123 0.67 1.06623215937e-06 3397 -219502.485 +0.0123456790123 0.7 1.06183791438e-06 3383 -232538.671407 +0.0123456790123 0.73 1.05556042154e-06 3363 -247325.153847 +0.0123456790123 0.76 1.04551643299e-06 3331 -264244.316856 +0.0123456790123 0.79 1.03955281479e-06 3312 -283832.864484 +0.0123456790123 0.82 1.03421694587e-06 3295 -306876.425881 +0.0123456790123 0.85 1.0291949516e-06 3279 -334581.940521 +0.0123456790123 0.88 1.02197583483e-06 3256 -368957.856898 +0.010989010989 0.01 2.72662901632e-06 8687 -147693.31049 +0.010989010989 0.04 1.58067269785e-06 5036 -140472.316549 +0.010989010989 0.07 1.3546829555e-06 4316 -135805.749177 +0.010989010989 0.1 1.26365930928e-06 4026 -133177.464331 +0.010989010989 0.13 1.21657811296e-06 3876 -131799.574207 +0.010989010989 0.16 1.18738777124e-06 3783 -131334.878044 +0.010989010989 0.19 1.1669859195e-06 3718 -131596.671712 +0.010989010989 0.22 1.15129218739e-06 3668 -132486.626052 +0.010989010989 0.25 1.13716782849e-06 3623 -133944.039208 +0.010989010989 0.28 1.12618221602e-06 3588 -135938.033856 +0.010989010989 0.31 1.11268560641e-06 3545 -138451.189282 +0.010989010989 0.34 1.10452486571e-06 3519 -141479.836593 +0.010989010989 0.37 1.09510862645e-06 3489 -145034.563558 +0.010989010989 0.4 1.08569238718e-06 3459 -149128.878036 +0.010989010989 0.43 1.07878714506e-06 3437 -153788.500503 +0.010989010989 0.46 1.07156802829e-06 3414 -159046.320523 +0.010989010989 0.49 1.06685990865e-06 3399 -164945.201756 +0.010989010989 0.52 1.06183791438e-06 3383 -171538.91575 +0.010989010989 0.55 1.05461879761e-06 3360 -178893.444648 +0.010989010989 0.58 1.04614418227e-06 3333 -187089.817325 +0.010989010989 0.61 1.03955281479e-06 3312 -196230.218933 +0.010989010989 0.64 1.03704181765e-06 3304 -206445.354015 +0.010989010989 0.67 1.03233369802e-06 3289 -217899.413824 +0.010989010989 0.7 1.02731170374e-06 3273 -230803.059378 +0.010989010989 0.73 1.02354520804e-06 3261 -245436.160112 +0.010989010989 0.76 1.01726771519e-06 3241 -262175.423418 +0.010989010989 0.79 1.0128734702e-06 3227 -281548.878857 +0.010989010989 0.82 1.00785147593e-06 3211 -304326.295793 +0.010989010989 0.85 1.00282948166e-06 3195 -331692.241487 +0.010989010989 0.88 9.9906298595e-07 3183 -365613.419073 +0.00990099009901 0.01 2.68645306213e-06 8559 -147555.25669 +0.00990099009901 0.04 1.53610249866e-06 4894 -140287.720573 +0.00990099009901 0.07 1.30917113239e-06 4171 -135509.817938 +0.00990099009901 0.1 1.22034460866e-06 3888 -132807.52639 +0.00990099009901 0.13 1.18267965161e-06 3768 -131389.650464 +0.00990099009901 0.16 1.15694193095e-06 3686 -130887.044265 +0.00990099009901 0.19 1.13559845528e-06 3618 -131115.815203 +0.00990099009901 0.22 1.1208463471e-06 3571 -131970.808628 +0.00990099009901 0.25 1.10389711643e-06 3517 -133390.352673 +0.00990099009901 0.28 1.09259762931e-06 3481 -135344.517739 +0.00990099009901 0.31 1.08067039291e-06 3443 -137815.876501 +0.00990099009901 0.34 1.07125415364e-06 3413 -140803.172502 +0.00990099009901 0.37 1.06403503687e-06 3390 -144312.935474 +0.00990099009901 0.4 1.05807141867e-06 3371 -148361.094259 +0.00990099009901 0.43 1.04928292869e-06 3343 -152971.076082 +0.00990099009901 0.46 1.03986668943e-06 3313 -158173.821204 +0.00990099009901 0.49 1.03610019372e-06 3301 -164012.363667 +0.00990099009901 0.52 1.03107819945e-06 3285 -170540.249349 +0.00990099009901 0.55 1.02574233053e-06 3268 -177821.926267 +0.00990099009901 0.58 1.02197583483e-06 3256 -185939.244178 +0.00990099009901 0.61 1.01632609127e-06 3238 -194993.053383 +0.00990099009901 0.64 1.01224572092e-06 3225 -205110.183476 +0.00990099009901 0.67 1.00753760129e-06 3210 -216452.034634 +0.00990099009901 0.7 1.00282948166e-06 3195 -229227.239054 +0.00990099009901 0.73 1.00031848452e-06 3187 -243710.052163 +0.00990099009901 0.76 9.98121362024e-07 3180 -260273.025126 +0.00990099009901 0.79 9.95924239529e-07 3173 -279435.158033 +0.00990099009901 0.82 9.89018997402e-07 3151 -301950.022349 +0.00990099009901 0.85 9.80544382064e-07 3124 -328978.068445 +0.00990099009901 0.88 9.76464011716e-07 3111 -362445.659844 +0.00900900900901 0.01 2.64847423043e-06 8438 -147437.394265 +0.00900900900901 0.04 1.48211606021e-06 4722 -140131.375048 +0.00900900900901 0.07 1.26554255713e-06 4032 -135259.083305 +0.00900900900901 0.1 1.19366526408e-06 3803 -132506.419616 +0.00900900900901 0.13 1.15600030702e-06 3683 -131054.673847 +0.00900900900901 0.16 1.12932096244e-06 3598 -130525.021048 +0.00900900900901 0.19 1.10734973749e-06 3528 -130722.598595 +0.00900900900901 0.22 1.09134213074e-06 3477 -131543.000903 +0.00900900900901 0.25 1.07564839863e-06 3427 -132927.065507 +0.00900900900901 0.28 1.06560441009e-06 3395 -134843.955463 +0.00900900900901 0.31 1.05744366939e-06 3369 -137279.261396 +0.00900900900901 0.34 1.0448886837e-06 3329 -140227.934595 +0.00900900900901 0.37 1.03484469516e-06 3297 -143694.047498 +0.00900900900901 0.4 1.02982270088e-06 3281 -147695.895555 +0.00900900900901 0.43 1.02480070661e-06 3265 -152256.230472 +0.00900900900901 0.46 1.01883708841e-06 3246 -157407.301216 +0.00900900900901 0.49 1.01381509413e-06 3230 -163189.429805 +0.00900900900901 0.52 1.00847922521e-06 3213 -169654.901873 +0.00900900900901 0.55 1.00534047879e-06 3203 -176868.008594 +0.00900900900901 0.58 1.00126010845e-06 3190 -184908.932224 +0.00900900900901 0.61 9.98749111308e-07 3182 -193877.541927 +0.00900900900901 0.64 9.95924239529e-07 3173 -203899.360573 +0.00900900900901 0.67 9.91216119897e-07 3158 -215132.65308 +0.00900900900901 0.7 9.86821874907e-07 3144 -227781.500816 +0.00900900900901 0.73 9.80230507422e-07 3123 -242115.731542 +0.00900900900901 0.76 9.77405635642e-07 3114 -258501.167286 +0.00900900900901 0.79 9.7269751601e-07 3099 -277448.318336 +0.00900900900901 0.82 9.67675521736e-07 3083 -299697.203223 +0.00900900900901 0.85 9.62653527462e-07 3067 -326386.690291 +0.00900900900901 0.88 9.54492786766e-07 3041 -359400.548583 +0.00826446280992 0.01 2.61363414515e-06 8327 -147334.710644 +0.00826446280992 0.04 1.44507885244e-06 4604 -139996.803203 +0.00826446280992 0.07 1.22913309864e-06 3916 -135044.800818 +0.00826446280992 0.1 1.16541654629e-06 3713 -132261.403483 +0.00826446280992 0.13 1.13057646101e-06 3602 -130783.358263 +0.00826446280992 0.16 1.10264161786e-06 3513 -130224.787931 +0.00826446280992 0.19 1.08192589148e-06 3447 -130392.918578 +0.00826446280992 0.22 1.06591828473e-06 3396 -131182.356639 +0.00826446280992 0.25 1.05493267225e-06 3361 -132536.174963 +0.00826446280992 0.28 1.0389250655e-06 3310 -134420.17659 +0.00826446280992 0.31 1.03045045017e-06 3283 -136817.813604 +0.00826446280992 0.34 1.02385908268e-06 3262 -139727.057504 +0.00826446280992 0.37 1.01663996591e-06 3239 -143154.547809 +0.00826446280992 0.4 1.01161797164e-06 3223 -147114.17848 +0.00826446280992 0.43 1.00596822808e-06 3205 -151628.818775 +0.00826446280992 0.46 1.0009462338e-06 3189 -156729.952421 +0.00826446280992 0.49 9.9749361274e-07 3178 -162457.626339 +0.00826446280992 0.52 9.9466874096e-07 3169 -168863.735914 +0.00826446280992 0.55 9.89646746686e-07 3153 -176010.816105 +0.00826446280992 0.58 9.83997003127e-07 3135 -183977.077798 +0.00826446280992 0.61 9.78347259569e-07 3117 -192860.147817 +0.00826446280992 0.64 9.76777886358e-07 3112 -202784.286039 +0.00826446280992 0.67 9.7269751601e-07 3099 -213906.546095 +0.00826446280992 0.7 9.67989396378e-07 3084 -226427.413545 +0.00826446280992 0.73 9.64222900672e-07 3072 -240613.266994 +0.00826446280992 0.76 9.57317658545e-07 3050 -256822.193344 +0.00826446280992 0.79 9.53865037481e-07 3039 -275554.637798 +0.00826446280992 0.82 9.52295664271e-07 3034 -297539.787295 +0.00826446280992 0.85 9.47587544639e-07 3019 -323894.120996 +0.00826446280992 0.88 9.41310051796e-07 2999 -356460.738163 +0.00763358778626 0.01 2.58224668093e-06 8227 -147246.918164 +0.00763358778626 0.04 1.40772777002e-06 4485 -139885.172929 +0.00763358778626 0.07 1.20308150335e-06 3833 -134868.305177 +0.00763358778626 0.1 1.14501469455e-06 3648 -132057.116982 +0.00763358778626 0.13 1.10954685999e-06 3535 -130559.17433 +0.00763358778626 0.16 1.07972876898e-06 3440 -129973.793412 +0.00763358778626 0.19 1.06152403974e-06 3382 -130113.054358 +0.00763358778626 0.22 1.04457480906e-06 3328 -130876.80811 +0.00763358778626 0.25 1.03139207409e-06 3286 -132199.688903 +0.00763358778626 0.28 1.02260358411e-06 3258 -134051.760643 +0.00763358778626 0.31 1.01350121949e-06 3229 -136418.26085 +0.00763358778626 0.34 1.00596822808e-06 3205 -139293.403058 +0.00763358778626 0.37 1.00000460988e-06 3186 -142683.139354 +0.00763358778626 0.4 9.95924239529e-07 3173 -146601.852523 +0.00763358778626 0.43 9.92785493108e-07 3163 -151073.058439 +0.00763358778626 0.46 9.86821874907e-07 3144 -156126.044258 +0.00763358778626 0.49 9.7991663278e-07 3122 -161799.551408 +0.00763358778626 0.52 9.76150137074e-07 3110 -168144.256812 +0.00763358778626 0.55 9.73325265294e-07 3101 -175223.536436 +0.00763358778626 0.58 9.68617145662e-07 3086 -183114.314927 +0.00763358778626 0.61 9.63595151388e-07 3070 -191913.047633 +0.00763358778626 0.64 9.58259282471e-07 3053 -201741.134334 +0.00763358778626 0.67 9.54806661408e-07 3042 -212752.196972 +0.00763358778626 0.7 9.52295664271e-07 3034 -225145.894609 +0.00763358778626 0.73 9.50098541776e-07 3027 -239184.192726 +0.00763358778626 0.76 9.4633204607e-07 3015 -255219.483084 +0.00763358778626 0.79 9.42251675722e-07 3002 -273742.318324 +0.00763358778626 0.82 9.38171305374e-07 2989 -295466.627625 +0.00763358778626 0.85 9.32521561815e-07 2971 -321486.006431 +0.00763358778626 0.88 9.2875506611e-07 2959 -353605.49287 +0.00709219858156 0.01 2.56121707991e-06 8160 -147173.783528 +0.00709219858156 0.04 1.37634030581e-06 4385 -139793.528954 +0.00709219858156 0.07 1.18456289946e-06 3774 -134722.804442 +0.00709219858156 0.1 1.12555446674e-06 3586 -131889.626902 +0.00709219858156 0.13 1.08851725896e-06 3468 -130368.472474 +0.00709219858156 0.16 1.06058241581e-06 3379 -129759.867447 +0.00709219858156 0.19 1.03923894015e-06 3311 -129876.59913 +0.00709219858156 0.22 1.02574233053e-06 3268 -130611.453504 +0.00709219858156 0.25 1.01475671806e-06 3233 -131909.139404 +0.00709219858156 0.28 1.00439885487e-06 3200 -133734.359361 +0.00709219858156 0.31 9.97179738098e-07 3177 -136069.261231 +0.00709219858156 0.34 9.93413242392e-07 3165 -138911.608554 +0.00709219858156 0.37 9.87763498833e-07 3147 -142266.945321 +0.00709219858156 0.4 9.7991663278e-07 3122 -146146.463108 +0.00709219858156 0.43 9.75208513147e-07 3107 -150572.097738 +0.00709219858156 0.46 9.70814268157e-07 3093 -155575.618666 +0.00709219858156 0.49 9.66733897809e-07 3080 -161195.069719 +0.00709219858156 0.52 9.61398028893e-07 3063 -167480.303464 +0.00709219858156 0.55 9.56062159976e-07 3046 -174492.082013 +0.00709219858156 0.58 9.51981789629e-07 3033 -182307.121801 +0.00709219858156 0.61 9.51040165702e-07 3030 -191021.627679 +0.00709219858156 0.64 9.48529168565e-07 3022 -200755.7751 +0.00709219858156 0.67 9.44762672859e-07 3010 -211659.975819 +0.00709219858156 0.7 9.40368427869e-07 2996 -223929.348866 +0.00709219858156 0.73 9.37229681448e-07 2986 -237821.040046 +0.00709219858156 0.76 9.32521561815e-07 2971 -253681.873935 +0.00709219858156 0.79 9.2875506611e-07 2959 -271994.110828 +0.00709219858156 0.82 9.26244068973e-07 2951 -293458.508406 +0.00709219858156 0.85 9.23105322551e-07 2941 -319146.801181 +0.00709219858156 0.88 9.20594325414e-07 2933 -350826.020314 +0.00662251655629 0.01 2.53736260711e-06 8084 -147113.539847 +0.00662251655629 0.04 1.35279970765e-06 4310 -139716.616462 +0.00662251655629 0.07 1.16604429557e-06 3715 -134604.641544 +0.00662251655629 0.1 1.1089191107e-06 3533 -131751.334196 +0.00662251655629 0.13 1.06905703115e-06 3406 -130206.37311 +0.00662251655629 0.16 1.04363318514e-06 3325 -129578.866057 +0.00662251655629 0.19 1.02228970947e-06 3257 -129671.230544 +0.00662251655629 0.22 1.00942084914e-06 3216 -130383.712248 +0.00662251655629 0.25 1.00000460988e-06 3186 -131655.574854 +0.00662251655629 0.28 9.9309936775e-07 3164 -133454.259986 +0.00662251655629 0.31 9.86194125622e-07 3142 -135763.116949 +0.00662251655629 0.34 9.77719510285e-07 3115 -138573.588198 +0.00662251655629 0.37 9.73639139937e-07 3102 -141891.442321 +0.00662251655629 0.4 9.67989396378e-07 3084 -145731.664391 +0.00662251655629 0.43 9.62025778177e-07 3065 -150114.519799 +0.00662251655629 0.46 9.54806661408e-07 3042 -155069.069227 +0.00662251655629 0.49 9.51667914986e-07 3032 -160634.096083 +0.00662251655629 0.52 9.5072629106e-07 3029 -166859.887852 +0.00662251655629 0.55 9.47901419281e-07 3020 -173807.300895 +0.00662251655629 0.58 9.42565550364e-07 3003 -181550.380414 +0.00662251655629 0.61 9.39112929301e-07 2992 -190182.569776 +0.00662251655629 0.64 9.35032558953e-07 2979 -199822.138694 +0.00662251655629 0.67 9.31893812531e-07 2969 -210617.922889 +0.00662251655629 0.7 9.28127316825e-07 2957 -222762.426004 +0.00662251655629 0.73 9.26244068973e-07 2951 -236508.654403 +0.00662251655629 0.76 9.23733071835e-07 2943 -252197.110352 +0.00662251655629 0.79 9.2153594934e-07 2936 -270302.37539 +0.00662251655629 0.82 9.18397202919e-07 2926 -291510.795897 +0.00662251655629 0.85 9.16200080424e-07 2919 -316871.916787 +0.00662251655629 0.88 9.1274745936e-07 2908 -348114.16212 +0.00621118012422 0.01 2.51256651038e-06 8005 -147062.827388 +0.00621118012422 0.04 1.32329549129e-06 4216 -139654.614993 +0.00621118012422 0.07 1.1490950649e-06 3661 -134508.52775 +0.00621118012422 0.1 1.09040050681e-06 3474 -131635.255529 +0.00621118012422 0.13 1.05367717368e-06 3357 -130070.575274 +0.00621118012422 0.16 1.02574233053e-06 3268 -129420.114441 +0.00621118012422 0.19 1.00879309986e-06 3214 -129493.697127 +0.00621118012422 0.22 9.95610364887e-07 3172 -130184.635266 +0.00621118012422 0.25 9.89646746686e-07 3153 -131434.89357 +0.00621118012422 0.28 9.7991663278e-07 3122 -133209.133622 +0.00621118012422 0.31 9.73639139937e-07 3102 -135488.095785 +0.00621118012422 0.34 9.65792273883e-07 3077 -138267.618736 +0.00621118012422 0.37 9.5951478104e-07 3057 -141551.31874 +0.00621118012422 0.4 9.52923413555e-07 3036 -145351.222599 +0.00621118012422 0.43 9.5072629106e-07 3029 -149690.374031 +0.00621118012422 0.46 9.47587544639e-07 3019 -154599.043681 +0.00621118012422 0.49 9.43507174291e-07 3006 -160113.784905 +0.00621118012422 0.52 9.38485180016e-07 2990 -166281.873747 +0.00621118012422 0.55 9.35660308237e-07 2981 -173163.580913 +0.00621118012422 0.58 9.30952188605e-07 2966 -180832.983336 +0.00621118012422 0.61 9.27813442183e-07 2956 -189382.411756 +0.00621118012422 0.64 9.25302445046e-07 2948 -198928.322036 +0.00621118012422 0.67 9.23419197193e-07 2942 -209617.389377 +0.00621118012422 0.7 9.2153594934e-07 2936 -221639.657211 +0.00621118012422 0.73 9.19338826845e-07 2929 -235243.045506 +0.00621118012422 0.76 9.1714170435e-07 2922 -250762.090723 +0.00621118012422 0.79 9.15258456497e-07 2916 -268662.29078 +0.00621118012422 0.82 9.1117808615e-07 2903 -289616.414852 +0.00621118012422 0.85 9.0835321437e-07 2894 -314651.987073 +0.00621118012422 0.88 9.04586718665e-07 2882 -345459.60508 +0.00584795321637 0.01 2.49436178113e-06 7947 -147021.414708 +0.00584795321637 0.04 1.30948500703e-06 4172 -139608.013556 +0.00584795321637 0.07 1.13654007921e-06 3621 -134432.664852 +0.00584795321637 0.1 1.07219577757e-06 3416 -131538.83501 +0.00584795321637 0.13 1.03421694587e-06 3295 -129954.688956 +0.00584795321637 0.16 1.01224572092e-06 3225 -129283.765111 +0.00584795321637 0.19 9.95924239529e-07 3173 -129338.05022 +0.00584795321637 0.22 9.88391248117e-07 3149 -130012.048814 +0.00584795321637 0.25 9.75522387789e-07 3108 -131241.246608 +0.00584795321637 0.28 9.69558769589e-07 3089 -132989.93868 +0.00584795321637 0.31 9.61084154251e-07 3062 -135240.824972 +0.00584795321637 0.34 9.53865037481e-07 3039 -137988.641135 +0.00584795321637 0.37 9.49784667134e-07 3026 -141237.288103 +0.00584795321637 0.4 9.46959795354e-07 3017 -145001.800777 +0.00584795321637 0.43 9.41310051796e-07 2999 -149300.288351 +0.00584795321637 0.46 9.36288057521e-07 2983 -154161.831592 +0.00584795321637 0.49 9.32521561815e-07 2971 -159624.240696 +0.00584795321637 0.52 9.27499567541e-07 2955 -165734.24661 +0.00584795321637 0.55 9.25302445046e-07 2948 -172551.103693 +0.00584795321637 0.58 9.22791447909e-07 2940 -180148.422694 +0.00584795321637 0.61 9.21222074698e-07 2935 -188617.42674 +0.00584795321637 0.64 9.19652701488e-07 2930 -198072.097957 +0.00584795321637 0.67 9.1714170435e-07 2922 -208656.926983 +0.00584795321637 0.7 9.15886205782e-07 2918 -220557.897406 +0.00584795321637 0.73 9.1274745936e-07 2908 -234019.391704 +0.00584795321637 0.76 9.09608712939e-07 2898 -249369.641496 +0.00584795321637 0.79 9.07725465086e-07 2892 -267065.052589 +0.00584795321637 0.82 9.04586718665e-07 2882 -287766.026065 +0.00584795321637 0.85 9.01447972243e-07 2872 -312479.025712 +0.00584795321637 0.88 8.97995351179e-07 2861 -342856.581136 +0.00552486187845 0.01 2.47333218011e-06 7880 -146987.307339 +0.00552486187845 0.04 1.28845540601e-06 4105 -139574.567771 +0.00552486187845 0.07 1.12241572031e-06 3576 -134370.127581 +0.00552486187845 0.1 1.05775754403e-06 3370 -131457.783008 +0.00552486187845 0.13 1.02040646162e-06 3251 -129853.189414 +0.00552486187845 0.16 9.99690735235e-07 3185 -129166.454666 +0.00552486187845 0.19 9.88077373475e-07 3148 -129204.269698 +0.00552486187845 0.22 9.75208513147e-07 3107 -129860.055077 +0.00552486187845 0.25 9.66733897809e-07 3080 -131068.415706 +0.00552486187845 0.28 9.58259282471e-07 3053 -132792.969135 +0.00552486187845 0.31 9.49784667134e-07 3026 -135015.77001 +0.00552486187845 0.34 9.47587544639e-07 3019 -137733.619238 +0.00552486187845 0.37 9.40368427869e-07 2996 -140950.513289 +0.00552486187845 0.4 9.35660308237e-07 2981 -144677.112686 +0.00552486187845 0.43 9.3032443932e-07 2964 -148934.072047 +0.00552486187845 0.46 9.2593019433e-07 2950 -153749.187172 +0.00552486187845 0.49 9.23733071835e-07 2943 -159160.039299 +0.00552486187845 0.52 9.21849823983e-07 2937 -165213.727551 +0.00552486187845 0.55 9.20280450772e-07 2932 -171968.560584 +0.00552486187845 0.58 9.18083328277e-07 2925 -179496.09284 +0.00552486187845 0.61 9.15886205782e-07 2918 -187885.674836 +0.00552486187845 0.64 9.13689083287e-07 2911 -197249.778978 +0.00552486187845 0.67 9.1117808615e-07 2903 -207730.425702 +0.00552486187845 0.7 9.0835321437e-07 2894 -219510.390122 +0.00552486187845 0.73 9.05842217233e-07 2886 -232830.099205 +0.00552486187845 0.76 9.03331220096e-07 2878 -248012.169014 +0.00552486187845 0.79 9.01134097601e-07 2871 -265504.678765 +0.00552486187845 0.82 8.98309225822e-07 2862 -285955.405396 +0.00552486187845 0.85 8.95484354042e-07 2853 -310348.78938 +0.00552486187845 0.88 8.92659482263e-07 2844 -340300.515839 +0.00523560209424 0.01 2.45606907479e-06 7825 -146959.675732 +0.00523560209424 0.04 1.27307554854e-06 4056 -139551.463334 +0.00523560209424 0.07 1.10923298534e-06 3534 -134320.575056 +0.00523560209424 0.1 1.04614418227e-06 3333 -131390.585425 +0.00523560209424 0.13 1.01099022235e-06 3221 -129767.690315 +0.00523560209424 0.16 9.89960621328e-07 3154 -129065.59405 +0.00523560209424 0.19 9.77719510285e-07 3115 -129089.817711 +0.00523560209424 0.22 9.66106148525e-07 3078 -129725.907129 +0.00523560209424 0.25 9.55434410692e-07 3044 -130912.854959 +0.00523560209424 0.28 9.48529168565e-07 3022 -132613.377788 +0.00523560209424 0.31 9.44134923575e-07 3008 -134811.586339 +0.00523560209424 0.34 9.36288057521e-07 2983 -137500.218326 +0.00523560209424 0.37 9.30638313963e-07 2965 -140682.626846 +0.00523560209424 0.4 9.25302445046e-07 2948 -144371.725126 +0.00523560209424 0.43 9.22791447909e-07 2940 -148587.869824 +0.00523560209424 0.46 9.2153594934e-07 2936 -153359.163917 +0.00523560209424 0.49 9.19652701488e-07 2930 -158721.83259 +0.00523560209424 0.52 9.16200080424e-07 2919 -164720.737133 +0.00523560209424 0.55 9.15258456497e-07 2916 -171413.381371 +0.00523560209424 0.58 9.1274745936e-07 2908 -178871.068798 +0.00523560209424 0.61 9.09294838297e-07 2897 -187181.433837 +0.00523560209424 0.64 9.0678384116e-07 2889 -196454.623319 +0.00523560209424 0.67 9.04272844022e-07 2881 -206831.26572 +0.00523560209424 0.7 9.01761846885e-07 2873 -218491.119585 +0.00523560209424 0.73 9.01134097601e-07 2871 -231670.622638 +0.00523560209424 0.76 8.97053727253e-07 2858 -246686.826467 +0.00523560209424 0.79 8.95484354042e-07 2853 -263978.329416 +0.00523560209424 0.82 8.92973356905e-07 2845 -284180.554655 +0.00523560209424 0.85 8.9077623441e-07 2838 -308258.285703 +0.00523560209424 0.88 8.89520735842e-07 2834 -337790.339454 +0.00497512437811 0.01 2.43911984412e-06 7771 -146938.363496 +0.00497512437811 0.04 1.25738181644e-06 4006 -139536.522959 +0.00497512437811 0.07 1.09448087716e-06 3487 -134282.337887 +0.00497512437811 0.1 1.03107819945e-06 3285 -131334.302491 +0.00497512437811 0.13 1.00000460988e-06 3186 -129696.268821 +0.00497512437811 0.16 9.85252501696e-07 3139 -128981.349117 +0.00497512437811 0.19 9.68931020304e-07 3087 -128988.795345 +0.00497512437811 0.22 9.57003783903e-07 3049 -129607.217958 +0.00497512437811 0.25 9.47587544639e-07 3019 -130771.6065 +0.00497512437811 0.28 9.40682302511e-07 2997 -132450.727506 +0.00497512437811 0.31 9.33463185742e-07 2974 -134622.892774 +0.00497512437811 0.34 9.28127316825e-07 2957 -137281.596492 +0.00497512437811 0.37 9.2436082112e-07 2945 -140431.928151 +0.00497512437811 0.4 9.2153594934e-07 2936 -144085.750254 +0.00497512437811 0.43 9.19024952203e-07 2928 -148263.475342 +0.00497512437811 0.46 9.16200080424e-07 2919 -152991.446223 +0.00497512437811 0.49 9.14944581855e-07 2915 -158305.292746 +0.00497512437811 0.52 9.1117808615e-07 2903 -164249.938022 +0.00497512437811 0.55 9.07097715802e-07 2890 -170880.672456 +0.00497512437811 0.58 9.05842217233e-07 2886 -178267.922471 +0.00497512437811 0.61 9.02703470812e-07 2876 -186498.931954 +0.00497512437811 0.64 9.01134097601e-07 2871 -195682.53313 +0.00497512437811 0.67 9.00506348317e-07 2869 -205956.929457 +0.00497512437811 0.7 8.96112103327e-07 2855 -217498.132125 +0.00497512437811 0.73 8.951704794e-07 2852 -230538.59953 +0.00497512437811 0.76 8.92659482263e-07 2844 -245389.709563 +0.00497512437811 0.79 8.91090109052e-07 2839 -262482.984735 +0.00497512437811 0.82 8.89834610484e-07 2835 -282440.229303 +0.00497512437811 0.85 8.88265237273e-07 2830 -306206.540277 +0.00497512437811 0.88 8.8638198942e-07 2824 -335324.21331 +0.00473933649289 0.01 2.42530935986e-06 7727 -146921.930947 +0.00473933649289 0.04 1.24451295611e-06 3965 -139528.904992 +0.00473933649289 0.07 1.08129814219e-06 3445 -134253.469202 +0.00473933649289 0.1 1.02040646162e-06 3251 -131286.280753 +0.00473933649289 0.13 9.90902245255e-07 3157 -129637.414412 +0.00473933649289 0.16 9.73639139937e-07 3102 -128909.445338 +0.00473933649289 0.19 9.59828655682e-07 3058 -128900.849887 +0.00473933649289 0.22 9.46645920712e-07 3016 -129499.329382 +0.00473933649289 0.25 9.39740678585e-07 2994 -130645.345846 +0.00473933649289 0.28 9.32835436458e-07 2972 -132300.52574 +0.00473933649289 0.31 9.25616319688e-07 2949 -134446.84482 +0.00473933649289 0.34 9.2153594934e-07 2936 -137078.386025 +0.00473933649289 0.37 9.19652701488e-07 2930 -140198.25561 +0.00473933649289 0.4 9.1714170435e-07 2922 -143818.661018 +0.00473933649289 0.43 9.14316832571e-07 2913 -147957.491823 +0.00473933649289 0.46 9.10864211507e-07 2902 -152641.976676 +0.00473933649289 0.49 9.0678384116e-07 2889 -157906.638664 +0.00473933649289 0.52 9.05214467949e-07 2884 -163795.943485 +0.00473933649289 0.55 9.02703470812e-07 2876 -170365.530082 +0.00473933649289 0.58 9.00820222959e-07 2870 -177684.264667 +0.00473933649289 0.61 8.98936975106e-07 2864 -185837.66307 +0.00473933649289 0.64 8.96112103327e-07 2855 -194932.285085 +0.00473933649289 0.67 8.94228855474e-07 2849 -205104.54319 +0.00473933649289 0.7 8.92659482263e-07 2844 -216528.211911 +0.00473933649289 0.73 8.91090109052e-07 2839 -229431.479485 +0.00473933649289 0.76 8.89834610484e-07 2835 -244120.126548 +0.00473933649289 0.79 8.88265237273e-07 2830 -261017.550775 +0.00473933649289 0.82 8.86695864062e-07 2825 -280732.699102 +0.00473933649289 0.85 8.85126490851e-07 2820 -304190.835947 +0.00473933649289 0.88 8.83557117641e-07 2815 -332899.471879 +0.00452488687783 0.01 2.40647688133e-06 7667 -146910.094233 +0.00452488687783 0.04 1.23038859721e-06 3920 -139527.85159 +0.00452488687783 0.07 1.07188190293e-06 3415 -134234.447172 +0.00452488687783 0.1 1.01224572092e-06 3225 -131248.837418 +0.00452488687783 0.13 9.85566376338e-07 3140 -129588.806326 +0.00452488687783 0.16 9.65792273883e-07 3077 -128847.553548 +0.00452488687783 0.19 9.47901419281e-07 3020 -128822.03236 +0.00452488687783 0.22 9.41623926438e-07 3000 -129403.871166 +0.00452488687783 0.25 9.32835436458e-07 2972 -130529.83343 +0.00452488687783 0.28 9.2436082112e-07 2945 -132162.391738 +0.00452488687783 0.31 9.2153594934e-07 2936 -134284.170943 +0.00452488687783 0.34 9.19024952203e-07 2928 -136889.511307 +0.00452488687783 0.37 9.14630707213e-07 2914 -139979.993091 +0.00452488687783 0.4 9.1117808615e-07 2903 -143565.874344 +0.00452488687783 0.43 9.07725465086e-07 2892 -147666.191863 +0.00452488687783 0.46 9.05528342591e-07 2885 -152306.819895 +0.00452488687783 0.49 9.02703470812e-07 2876 -157522.995481 +0.00452488687783 0.52 9.00506348317e-07 2869 -163358.347833 +0.00452488687783 0.55 8.98936975106e-07 2864 -169867.800602 +0.00452488687783 0.58 8.95798228684e-07 2854 -177118.010813 +0.00452488687783 0.61 8.94228855474e-07 2849 -185194.161899 +0.00452488687783 0.64 8.92659482263e-07 2844 -194201.247774 +0.00452488687783 0.67 8.9077623441e-07 2838 -204272.964496 +0.00452488687783 0.7 8.89834610484e-07 2835 -215580.653565 +0.00452488687783 0.73 8.88265237273e-07 2830 -228348.413361 +0.00452488687783 0.76 8.86695864062e-07 2825 -242876.210071 +0.00452488687783 0.79 8.85126490851e-07 2820 -259579.484224 +0.00452488687783 0.82 8.84184866925e-07 2817 -279055.451194 +0.00452488687783 0.85 8.82615493714e-07 2812 -302209.212815 +0.00452488687783 0.88 8.81673869788e-07 2809 -330514.562288 +0.004329004329 0.01 2.39392189565e-06 7627 -146902.005174 +0.004329004329 0.04 1.21312549189e-06 3865 -139532.532669 +0.004329004329 0.07 1.06058241581e-06 3379 -134222.522239 +0.004329004329 0.1 1.00282948166e-06 3195 -131221.094733 +0.004329004329 0.13 9.76777886358e-07 3112 -129548.415203 +0.004329004329 0.16 9.56689909261e-07 3048 -128794.442697 +0.004329004329 0.19 9.45390422143e-07 3012 -128752.422661 +0.004329004329 0.22 9.33777060384e-07 2975 -129317.975025 +0.004329004329 0.25 9.24988570404e-07 2947 -130424.293114 +0.004329004329 0.28 9.2153594934e-07 2936 -132035.923299 +0.004329004329 0.31 9.17455578992e-07 2923 -134134.553053 +0.004329004329 0.34 9.13375208645e-07 2910 -136712.837444 +0.004329004329 0.37 9.10236462223e-07 2900 -139773.032314 +0.004329004329 0.4 9.06469966517e-07 2888 -143325.022151 +0.004329004329 0.43 9.03331220096e-07 2878 -147386.926646 +0.004329004329 0.46 9.00820222959e-07 2870 -151985.160426 +0.004329004329 0.49 8.9956472439e-07 2866 -157153.992073 +0.004329004329 0.52 8.95798228684e-07 2854 -162935.565699 +0.004329004329 0.55 8.94228855474e-07 2849 -169384.687355 +0.004329004329 0.58 8.92659482263e-07 2844 -176567.633263 +0.004329004329 0.61 8.9077623441e-07 2838 -184567.58659 +0.004329004329 0.64 8.89520735842e-07 2834 -193488.260841 +0.004329004329 0.67 8.88265237273e-07 2830 -203460.973902 +0.004329004329 0.7 8.8638198942e-07 2824 -214653.752692 +0.004329004329 0.73 8.85440365494e-07 2821 -227286.999522 +0.004329004329 0.76 8.83870992283e-07 2816 -241655.805776 +0.004329004329 0.79 8.83243242999e-07 2814 -258167.304918 +0.004329004329 0.82 8.82301619072e-07 2811 -277406.889832 +0.004329004329 0.85 8.81359995146e-07 2808 -300260.731598 +0.004329004329 0.88 8.79162872651e-07 2801 -328167.722745 +0.00414937759336 0.01 2.38011141139e-06 7583 -146897.710399 +0.00414937759336 0.04 1.20151213013e-06 3828 -139541.934017 +0.00414937759336 0.07 1.05210780047e-06 3352 -134216.317437 +0.00414937759336 0.1 9.9309936775e-07 3164 -131200.73167 +0.00414937759336 0.13 9.67361647094e-07 3082 -129514.859693 +0.00414937759336 0.16 9.48529168565e-07 3022 -128748.17688 +0.00414937759336 0.19 9.37229681448e-07 2986 -128692.736358 +0.00414937759336 0.22 9.27499567541e-07 2955 -129240.691832 +0.00414937759336 0.25 9.20594325414e-07 2933 -130328.146655 +0.00414937759336 0.28 9.16827829708e-07 2921 -131919.761021 +0.00414937759336 0.31 9.13375208645e-07 2910 -133995.235862 +0.00414937759336 0.34 9.09294838297e-07 2897 -136546.83057 +0.00414937759336 0.37 9.05214467949e-07 2884 -139576.333623 +0.00414937759336 0.4 9.02075721527e-07 2874 -143094.574228 +0.00414937759336 0.43 9.00192473674e-07 2868 -147119.341148 +0.00414937759336 0.46 8.96112103327e-07 2855 -151675.75189 +0.00414937759336 0.49 8.951704794e-07 2852 -156797.009176 +0.00414937759336 0.52 8.92973356905e-07 2845 -162526.178934 +0.00414937759336 0.55 8.91090109052e-07 2839 -168915.892183 +0.00414937759336 0.58 8.89834610484e-07 2835 -176032.197668 +0.00414937759336 0.61 8.88579111915e-07 2831 -183956.897513 +0.00414937759336 0.64 8.86068114778e-07 2823 -192791.762804 +0.00414937759336 0.67 8.85440365494e-07 2821 -202666.041157 +0.00414937759336 0.7 8.84498741567e-07 2818 -213745.479962 +0.00414937759336 0.73 8.83557117641e-07 2815 -226246.078356 +0.00414937759336 0.76 8.82301619072e-07 2811 -240457.545945 +0.00414937759336 0.79 8.81673869788e-07 2809 -256779.782032 +0.00414937759336 0.82 8.80104496577e-07 2804 -275786.023428 +0.00414937759336 0.85 8.79162872651e-07 2801 -298342.90977 +0.00414937759336 0.88 8.78535123366e-07 2799 -325857.838742 +0.00398406374502 0.01 2.36630092714e-06 7539 -146896.546338 +0.00398406374502 0.04 1.19460688801e-06 3806 -139556.88352 +0.00398406374502 0.07 1.04363318514e-06 3325 -134216.089308 +0.00398406374502 0.1 9.85566376338e-07 3140 -131186.774449 +0.00398406374502 0.13 9.61711903535e-07 3064 -129488.791203 +0.00398406374502 0.16 9.43821048933e-07 3007 -128707.714367 +0.00398406374502 0.19 9.31893812531e-07 2969 -128640.128272 +0.00398406374502 0.22 9.21849823983e-07 2937 -129170.828086 +0.00398406374502 0.25 9.17455578992e-07 2923 -130240.74617 +0.00398406374502 0.28 9.13375208645e-07 2910 -131812.516984 +0.00398406374502 0.31 9.0835321437e-07 2894 -133864.925842 +0.00398406374502 0.34 9.04900593307e-07 2883 -136389.688266 +0.00398406374502 0.37 9.01134097601e-07 2871 -139389.180671 +0.00398406374502 0.4 8.99250849748e-07 2865 -142874.307236 +0.00398406374502 0.43 8.95798228684e-07 2854 -146861.75702 +0.00398406374502 0.46 8.93914980832e-07 2848 -151376.839706 +0.00398406374502 0.49 8.91717858337e-07 2841 -156451.745349 +0.00398406374502 0.52 8.89834610484e-07 2835 -162128.636273 +0.00398406374502 0.55 8.88579111915e-07 2831 -168460.160255 +0.00398406374502 0.58 8.86695864062e-07 2825 -175510.398175 +0.00398406374502 0.61 8.86068114778e-07 2823 -183360.230347 +0.00398406374502 0.64 8.84812616209e-07 2819 -192110.311274 +0.00398406374502 0.67 8.83870992283e-07 2816 -201887.530965 +0.00398406374502 0.7 8.82301619072e-07 2811 -212854.603394 +0.00398406374502 0.73 8.8198774443e-07 2810 -225224.302567 +0.00398406374502 0.76 8.80418371219e-07 2805 -239280.81813 +0.00398406374502 0.79 8.79476747293e-07 2802 -255415.429487 +0.00398406374502 0.82 8.78848998009e-07 2800 -274190.879727 +0.00398406374502 0.85 8.77907374082e-07 2797 -296455.638918 +0.00398406374502 0.88 8.7759349944e-07 2796 -323584.155146 +0.00383141762452 0.01 2.35594306395e-06 7506 -146898.326001 +0.00383141762452 0.04 1.18832939516e-06 3786 -139577.142287 +0.00383141762452 0.07 1.0351585698e-06 3298 -134220.334849 +0.00383141762452 0.1 9.81799880632e-07 3128 -131178.749423 +0.00383141762452 0.13 9.5512053605e-07 3043 -129469.423497 +0.00383141762452 0.16 9.38799054658e-07 2991 -128675.260149 +0.00383141762452 0.19 9.24988570404e-07 2947 -128592.957638 +0.00383141762452 0.22 9.19024952203e-07 2928 -129108.393194 +0.00383141762452 0.25 9.13689083287e-07 2911 -130161.552182 +0.00383141762452 0.28 9.08980963655e-07 2896 -131713.000872 +0.00383141762452 0.31 9.04586718665e-07 2882 -133741.912421 +0.00383141762452 0.34 9.00506348317e-07 2869 -136240.572764 +0.00383141762452 0.37 8.98309225822e-07 2862 -139211.215136 +0.00383141762452 0.4 8.94856604758e-07 2851 -142662.893233 +0.00383141762452 0.43 8.92659482263e-07 2844 -146613.523056 +0.00383141762452 0.46 8.90462359768e-07 2837 -151087.361865 +0.00383141762452 0.49 8.88892986557e-07 2832 -156116.676967 +0.00383141762452 0.52 8.87323613346e-07 2827 -161742.230631 +0.00383141762452 0.55 8.85754240136e-07 2822 -168015.550269 +0.00383141762452 0.58 8.84812616209e-07 2819 -175000.917134 +0.00383141762452 0.61 8.83870992283e-07 2816 -182777.061108 +0.00383141762452 0.64 8.82301619072e-07 2811 -191443.210303 +0.00383141762452 0.67 8.82301619072e-07 2811 -201124.42789 +0.00383141762452 0.7 8.81673869788e-07 2809 -211980.754529 +0.00383141762452 0.73 8.79790621935e-07 2803 -224220.491908 +0.00383141762452 0.76 8.79162872651e-07 2801 -238123.036483 +0.00383141762452 0.79 8.78535123366e-07 2799 -254073.153247 +0.00383141762452 0.82 8.77907374082e-07 2797 -272621.221463 +0.00383141762452 0.85 8.76965750156e-07 2794 -294597.728551 +0.00383141762452 0.88 8.76338000871e-07 2792 -321345.419757 +0.00369003690037 0.01 2.3458990754e-06 7474 -146902.911264 +0.00369003690037 0.04 1.18016865447e-06 3760 -139600.453545 +0.00369003690037 0.07 1.02260358411e-06 3258 -134228.494701 +0.00369003690037 0.1 9.76777886358e-07 3112 -131175.95533 +0.00369003690037 0.13 9.47587544639e-07 3019 -129455.461522 +0.00369003690037 0.16 9.31266063247e-07 2967 -128647.718701 +0.00369003690037 0.19 9.21222074698e-07 2935 -128550.685643 +0.00369003690037 0.22 9.15258456497e-07 2916 -129053.558567 +0.00369003690037 0.25 9.09608712939e-07 2898 -130088.926144 +0.00369003690037 0.28 9.04586718665e-07 2882 -131619.841103 +0.00369003690037 0.31 9.00820222959e-07 2870 -133625.806346 +1.0 0.01 3.45324881289e-06 11002 -152373.756762 +1.0 0.04 3.38262701841e-06 10777 -152405.770449 +1.0 0.07 3.35406442597e-06 10686 -153164.537314 +1.0 0.1 3.33429032352e-06 10623 -154401.200111 +1.0 0.13 3.30698322965e-06 10536 -156056.750373 +1.0 0.16 3.30698322965e-06 10536 -158092.563181 +1.0 0.19 3.30698322965e-06 10536 -160524.168077 +1.0 0.22 3.28595362863e-06 10469 -163338.491856 +1.0 0.25 3.28407038077e-06 10463 -166548.430599 +1.0 0.28 3.28407038077e-06 10463 -170173.765055 +1.0 0.31 3.28407038077e-06 10463 -174231.987109 +1.0 0.34 3.26147140654e-06 10391 -178735.091444 +1.0 0.37 3.26147140654e-06 10391 -183715.722798 +1.0 0.4 3.26147140654e-06 10391 -189211.308601 +1.0 0.43 3.26147140654e-06 10391 -195260.710977 +1.0 0.46 3.25739103619e-06 10378 -201910.210955 +1.0 0.49 3.23322268875e-06 10301 -209212.13195 +1.0 0.52 3.23322268875e-06 10301 -217226.599833 +1.0 0.55 3.23322268875e-06 10301 -226044.689665 +1.0 0.58 3.23322268875e-06 10301 -235764.690988 +1.0 0.61 3.23322268875e-06 10301 -246507.568015 +1.0 0.64 3.23322268875e-06 10301 -258424.514499 +1.0 0.67 3.23322268875e-06 10301 -271706.978841 +1.0 0.7 3.21407633557e-06 10240 -286594.302167 +1.0 0.73 3.21407633557e-06 10240 -303418.139175 +1.0 0.76 3.21407633557e-06 10240 -322623.131242 +1.0 0.79 3.21407633557e-06 10240 -344830.756962 +1.0 0.82 3.21407633557e-06 10240 -370952.165726 +1.0 0.85 3.19775485418e-06 10188 -402393.216523 +1.0 0.88 3.19241898527e-06 10171 -441521.055457 +0.0909090909091 0.01 3.0750298691e-06 9797 -150463.291574 +0.0909090909091 0.04 2.64376611079e-06 8423 -146426.454929 +0.0909090909091 0.07 2.52198274964e-06 8035 -144774.783776 +0.0909090909091 0.1 2.44288633982e-06 7783 -144284.276633 +0.0909090909091 0.13 2.39643289278e-06 7635 -144559.509024 +0.0909090909091 0.16 2.36190668215e-06 7525 -145459.762822 +0.0909090909091 0.19 2.32894984472e-06 7420 -146895.533962 +1.0 0.01 3.45324881289e-06 11002 -152373.756762 +1.0 0.04 3.38262701841e-06 10777 -152405.770449 +1.0 0.07 3.35406442597e-06 10686 -153164.537314 +1.0 0.1 3.33429032352e-06 10623 -154401.200111 +1.0 0.13 3.30698322965e-06 10536 -156056.750373 +1.0 0.16 3.30698322965e-06 10536 -158092.563181 +1.0 0.19 3.30698322965e-06 10536 -160524.168077 +1.0 0.22 3.28595362863e-06 10469 -163338.491856 +1.0 0.25 3.28407038077e-06 10463 -166548.430599 +1.0 0.28 3.28407038077e-06 10463 -170173.765055 +1.0 0.31 3.28407038077e-06 10463 -174231.987109 +1.0 0.34 3.26147140654e-06 10391 -178735.091444 +1.0 0.37 3.26147140654e-06 10391 -183715.722798 +1.0 0.4 3.26147140654e-06 10391 -189211.308601 +1.0 0.43 3.26147140654e-06 10391 -195260.710977 +1.0 0.46 3.25739103619e-06 10378 -201910.210955 +1.0 0.49 3.23322268875e-06 10301 -209212.13195 +1.0 0.52 3.23322268875e-06 10301 -217226.599833 +1.0 0.55 3.23322268875e-06 10301 -226044.689665 +1.0 0.58 3.23322268875e-06 10301 -235764.690988 +1.0 0.61 3.23322268875e-06 10301 -246507.568015 +1.0 0.64 3.23322268875e-06 10301 -258424.514499 +1.0 0.67 3.23322268875e-06 10301 -271706.978841 +1.0 0.7 3.21407633557e-06 10240 -286594.302167 +1.0 0.73 3.21407633557e-06 10240 -303418.139175 +1.0 0.76 3.21407633557e-06 10240 -322623.131242 +1.0 0.79 3.21407633557e-06 10240 -344830.756962 +1.0 0.82 3.21407633557e-06 10240 -370952.165726 +1.0 0.85 3.19775485418e-06 10188 -402393.216523 +1.0 0.88 3.19241898527e-06 10171 -441521.055457 +0.0909090909091 0.01 3.0750298691e-06 9797 -150463.291574 +0.0909090909091 0.04 2.64376611079e-06 8423 -146426.454929 +0.0909090909091 0.07 2.52198274964e-06 8035 -144774.783776 +0.0909090909091 0.1 2.44288633982e-06 7783 -144284.276633 +0.0909090909091 0.13 2.39643289278e-06 7635 -144559.509024 +0.0909090909091 0.16 2.36190668215e-06 7525 -145459.762822 +0.0909090909091 0.19 2.32894984472e-06 7420 -146895.533962 +0.0909090909091 0.22 2.29567913266e-06 7314 -148827.173822 +0.0909090909091 0.25 2.27496340627e-06 7248 -151237.723392 +0.0909090909091 0.28 2.25487542918e-06 7184 -154121.451004 +0.0909090909091 0.31 2.24169269421e-06 7142 -157484.470574 +0.0909090909091 0.34 2.22819608459e-06 7099 -161337.94231 +0.0909090909091 0.37 2.20653873429e-06 7030 -165698.258589 +0.0909090909091 0.4 2.1917866261e-06 6983 -170594.028285 +0.0909090909091 0.43 2.18362588541e-06 6957 -176058.93665 +0.0909090909091 0.46 2.17295414758e-06 6923 -182135.66092 +0.0909090909091 0.49 2.16824602794e-06 6908 -188874.899404 +0.0909090909091 0.52 2.15882978868e-06 6878 -196339.502374 +0.0909090909091 0.55 2.14941354942e-06 6848 -204605.31655 +0.0909090909091 0.58 2.14031118479e-06 6819 -213766.700883 +0.0909090909091 0.61 2.12775619911e-06 6779 -223938.297053 +0.0909090909091 0.64 2.12242033019e-06 6762 -235265.93441 +0.0909090909091 0.67 2.11394571485e-06 6735 -247935.42533 +0.0909090909091 0.7 2.10296010238e-06 6700 -262185.724641 +0.0909090909091 0.73 2.09322998847e-06 6669 -278332.096551 +0.0909090909091 0.76 2.08130275207e-06 6631 -296803.170057 +0.0909090909091 0.79 2.07125876352e-06 6599 -318201.827345 +0.0909090909091 0.82 2.05336790892e-06 6542 -343410.417577 +0.0909090909091 0.85 2.04395166965e-06 6512 -373799.089191 +0.0909090909091 0.88 2.03076893468e-06 6470 -411665.87129 +0.047619047619 0.01 2.99938608035e-06 9556 -149763.532956 +0.047619047619 0.04 2.33114696722e-06 7427 -144303.444655 +0.047619047619 0.07 2.15192454655e-06 6856 -141652.327419 +0.047619047619 0.1 2.0800472535e-06 6627 -140455.986397 +0.047619047619 0.13 2.01946944757e-06 6434 -140194.999096 +0.047619047619 0.16 1.98494323693e-06 6324 -140646.765177 +0.047619047619 0.19 1.95606676985e-06 6232 -141704.232879 +0.047619047619 0.22 1.93001517456e-06 6149 -143307.788155 +0.047619047619 0.25 1.90051095819e-06 6055 -145420.471085 +0.047619047619 0.28 1.88105073038e-06 5993 -148029.74579 +0.047619047619 0.31 1.86190437721e-06 5932 -151134.210114 +0.047619047619 0.34 1.8424441494e-06 5870 -154741.974156 +0.047619047619 0.37 1.82737816657e-06 5822 -158867.786416 +0.047619047619 0.4 1.81607867946e-06 5786 -163537.222704 +0.047619047619 0.43 1.80258206984e-06 5743 -168781.553811 +0.047619047619 0.46 1.79096870808e-06 5706 -174639.297024 +0.047619047619 0.49 1.77935534633e-06 5669 -181160.048266 +0.047619047619 0.52 1.76805585921e-06 5633 -188404.097365 +0.047619047619 0.55 1.75644249745e-06 5596 -196445.989484 +0.047619047619 0.58 1.74765400747e-06 5568 -205377.678182 +0.047619047619 0.61 1.73478514714e-06 5527 -215312.601697 +0.047619047619 0.64 1.7263105318e-06 5500 -226393.784294 +0.047619047619 0.67 1.7165804179e-06 5469 -238803.804134 +0.047619047619 0.7 1.70873355184e-06 5444 -252777.747868 +0.047619047619 0.73 1.69743406473e-06 5408 -268625.6512 +0.047619047619 0.76 1.68613457761e-06 5372 -286768.996828 +0.047619047619 0.79 1.67514896513e-06 5337 -307800.090952 +0.047619047619 0.82 1.66416335266e-06 5302 -332588.345345 +0.047619047619 0.85 1.64941124448e-06 5255 -362477.935405 +0.047619047619 0.88 1.63120651523e-06 5197 -399721.32613 +0.0322580645161 0.01 3.0571390145e-06 9740 -149252.337596 +0.0322580645161 0.04 2.11677058663e-06 6744 -143085.434954 +0.0322580645161 0.07 1.95230027415e-06 6220 -139856.709526 +0.0322580645161 0.1 1.86096275328e-06 5929 -138270.729159 +0.0322580645161 0.13 1.79975719806e-06 5734 -137696.24859 +0.0322580645161 0.16 1.75581474816e-06 5594 -137887.862672 +0.0322580645161 0.19 1.72317178538e-06 5490 -138716.003824 +0.0322580645161 0.22 1.69806181401e-06 5410 -140112.438269 +0.0322580645161 0.25 1.67201021871e-06 5327 -142039.406609 +0.0322580645161 0.28 1.65286386554e-06 5266 -144475.892389 +0.0322580645161 0.31 1.63403138701e-06 5206 -147418.470661 +0.0322580645161 0.34 1.61111853813e-06 5133 -150870.399022 +0.0322580645161 0.37 1.59354155817e-06 5077 -154843.715403 +0.0322580645161 0.4 1.57910332464e-06 5031 -159362.889403 +0.0322580645161 0.43 1.56497896574e-06 4986 -164458.053537 +0.0322580645161 0.46 1.55367947862e-06 4950 -170167.915189 +0.0322580645161 0.49 1.53955511973e-06 4905 -176539.352396 +0.0322580645161 0.52 1.52794175797e-06 4868 -183631.216215 +0.0322580645161 0.55 1.51695614549e-06 4833 -191516.291085 +0.0322580645161 0.58 1.50408728516e-06 4792 -200285.038784 +0.0322580645161 0.61 1.49718204304e-06 4770 -210050.477772 +0.0322580645161 0.64 1.4865103052e-06 4736 -220953.481602 +0.0322580645161 0.67 1.47113044774e-06 4687 -233170.874575 +0.0322580645161 0.7 1.46202808312e-06 4658 -246934.474791 +0.0322580645161 0.73 1.45323959314e-06 4630 -262551.130327 +0.0322580645161 0.76 1.43817361031e-06 4582 -280435.91002 +0.0322580645161 0.79 1.42373537677e-06 4536 -301168.584331 +0.0322580645161 0.82 1.41369138823e-06 4504 -325605.866758 +0.0322580645161 0.85 1.39893928004e-06 4457 -355069.585014 +0.0322580645161 0.88 1.38355942258e-06 4408 -391769.852111 +0.0243902439024 0.01 3.00158320284e-06 9563 -148823.142 +0.0243902439024 0.04 1.98117674122e-06 6312 -142295.808377 +0.0243902439024 0.07 1.7925380813e-06 5711 -138673.442888 +0.0243902439024 0.1 1.69868956329e-06 5412 -136794.449231 +0.0243902439024 0.13 1.64313375163e-06 5235 -136004.086469 +0.0243902439024 0.16 1.5885195639e-06 5061 -136013.507055 +0.0243902439024 0.19 1.54959910827e-06 4937 -136672.239708 +0.0243902439024 0.22 1.51978101727e-06 4842 -137914.769668 +0.0243902439024 0.25 1.4924739234e-06 4755 -139695.720461 +0.0243902439024 0.28 1.47364144488e-06 4695 -141997.294447 +0.0243902439024 0.31 1.45292571849e-06 4629 -144810.730107 +0.0243902439024 0.34 1.4388013596e-06 4584 -148140.214587 +0.0243902439024 0.37 1.41808563322e-06 4518 -151995.978095 +0.0243902439024 0.4 1.40647227146e-06 4481 -156398.99106 +0.0243902439024 0.43 1.39517278434e-06 4445 -161379.729886 +0.0243902439024 0.46 1.38199004937e-06 4403 -166972.801242 +0.0243902439024 0.49 1.37069056225e-06 4367 -173225.941393 +0.0243902439024 0.52 1.3606465737e-06 4335 -180196.722942 +0.0243902439024 0.55 1.35248583301e-06 4309 -187957.793598 +0.0243902439024 0.58 1.34150022053e-06 4274 -196597.605228 +0.0243902439024 0.61 1.33239785591e-06 4245 -206225.259286 +0.0243902439024 0.64 1.32203999272e-06 4212 -216980.475554 +0.0243902439024 0.67 1.31419312666e-06 4187 -229039.175135 +0.0243902439024 0.7 1.30257976491e-06 4150 -242629.232668 +0.0243902439024 0.73 1.29504677349e-06 4126 -258051.500565 +0.0243902439024 0.76 1.28343341173e-06 4089 -275714.769655 +0.0243902439024 0.79 1.27715591889e-06 4069 -296193.760237 +0.0243902439024 0.82 1.26868130355e-06 4042 -320329.123752 +0.0243902439024 0.85 1.25800956572e-06 4008 -349419.694714 +0.0243902439024 0.88 1.24827945181e-06 3977 -385635.396338 +0.0196078431373 0.01 2.93410015478e-06 9348 -148498.466954 +0.0196078431373 0.04 1.86975124326e-06 5957 -141741.668613 +0.0196078431373 0.07 1.66887147229e-06 5317 -137797.607539 +0.0196078431373 0.1 1.56654833895e-06 4991 -135703.702967 +0.0196078431373 0.13 1.50157628803e-06 4784 -134726.60019 +0.0196078431373 0.16 1.45731996348e-06 4643 -134577.515808 +0.0196078431373 0.19 1.41683013465e-06 4514 -135106.887459 +0.0196078431373 0.22 1.39172016327e-06 4434 -136231.471965 +0.0196078431373 0.25 1.36755181583e-06 4357 -137909.165628 +0.0196078431373 0.28 1.35123033444e-06 4305 -140113.087181 +0.0196078431373 0.31 1.33208398127e-06 4244 -142835.314044 +0.0196078431373 0.34 1.31952899558e-06 4204 -146075.610904 +0.0196078431373 0.37 1.30603238597e-06 4161 -149845.477111 +0.0196078431373 0.4 1.29536064814e-06 4127 -154163.371633 +0.0196078431373 0.43 1.2809224146e-06 4081 -159056.348347 +0.0196078431373 0.46 1.27244779926e-06 4054 -164561.036785 +0.0196078431373 0.49 1.26522868249e-06 4031 -170724.096266 +0.0196078431373 0.52 1.25581244323e-06 4001 -177601.95894 +0.0196078431373 0.55 1.24733782789e-06 3974 -185264.61658 +0.0196078431373 0.58 1.24357133218e-06 3962 -193800.573442 +0.0196078431373 0.61 1.23572446613e-06 3937 -203318.009157 +0.0196078431373 0.64 1.23038859721e-06 3920 -213953.627589 +0.0196078431373 0.67 1.22599435222e-06 3906 -225881.765073 +0.0196078431373 0.7 1.21814748617e-06 3881 -239326.076937 +0.0196078431373 0.73 1.21061449476e-06 3857 -254583.887996 +0.0196078431373 0.76 1.20025663157e-06 3824 -272057.258962 +0.0196078431373 0.79 1.19366526408e-06 3803 -292310.40304 +0.0196078431373 0.82 1.18738777124e-06 3783 -316171.012162 +0.0196078431373 0.85 1.17828540662e-06 3754 -344915.833831 +0.0196078431373 0.88 1.16949691664e-06 3726 -380676.137333 +0.016393442623 0.01 2.88074146562e-06 9178 -148238.951955 +0.016393442623 0.04 1.76334773958e-06 5618 -141320.153976 +0.016393442623 0.07 1.57094258394e-06 5005 -137124.470779 +0.016393442623 0.1 1.46202808312e-06 4658 -134838.515361 +0.016393442623 0.13 1.39674215755e-06 4450 -133720.919166 +0.016393442623 0.16 1.35939107513e-06 4331 -133457.703056 +0.016393442623 0.19 1.32831748556e-06 4232 -133893.294598 +0.016393442623 0.22 1.30289363955e-06 4151 -134937.013968 +0.016393442623 0.25 1.2787252921e-06 4074 -136537.370778 +0.016393442623 0.28 1.26554255713e-06 4032 -138668.696809 +0.016393442623 0.31 1.25141819824e-06 3987 -141321.315854 +0.016393442623 0.34 1.24106033504e-06 3954 -144494.482684 +0.016393442623 0.37 1.23038859721e-06 3920 -148199.166995 +0.016393442623 0.4 1.22191398187e-06 3893 -152451.568181 +0.016393442623 0.43 1.21343936654e-06 3866 -157278.86005 +0.016393442623 0.46 1.20527862584e-06 3840 -162715.929842 +0.016393442623 0.49 1.1968040105e-06 3813 -168807.113089 +0.016393442623 0.52 1.19021264302e-06 3792 -175608.216447 +0.016393442623 0.55 1.18550452339e-06 3777 -183189.303582 +0.016393442623 0.58 1.17702990805e-06 3750 -191635.99382 +0.016393442623 0.61 1.17263566306e-06 3736 -201055.874861 +0.016393442623 0.64 1.16604429557e-06 3715 -211583.312365 +0.016393442623 0.67 1.15819742952e-06 3690 -223389.018938 +0.016393442623 0.7 1.1528615606e-06 3673 -236694.706709 +0.016393442623 0.73 1.14627019312e-06 3652 -251792.803141 +0.016393442623 0.76 1.1409343242e-06 3635 -269080.336351 +0.016393442623 0.79 1.13183195958e-06 3606 -289112.329 +0.016393442623 0.82 1.12272959496e-06 3577 -312700.133592 +0.016393442623 0.85 1.11362723033e-06 3548 -341096.487136 +0.016393442623 0.88 1.10640811356e-06 3525 -376393.803972 +0.0140845070423 0.01 2.82895214966e-06 9013 -148029.711632 +0.0140845070423 0.04 1.68613457761e-06 5372 -140973.63127 +0.0140845070423 0.07 1.48556868128e-06 4733 -136589.140351 +0.0140845070423 0.1 1.38230392401e-06 4404 -134158.87826 +0.0140845070423 0.13 1.32988685877e-06 4237 -132934.942574 +0.0140845070423 0.16 1.28563053423e-06 4096 -132589.314568 +0.0140845070423 0.19 1.25518469394e-06 3999 -132948.641969 +0.0140845070423 0.22 1.23509671684e-06 3935 -133924.243252 +0.0140845070423 0.25 1.21971685938e-06 3886 -135466.431375 +0.0140845070423 0.28 1.20810349762e-06 3849 -137545.277942 +0.0140845070423 0.31 1.19554851193e-06 3809 -140145.972683 +0.0140845070423 0.34 1.18393515017e-06 3772 -143266.16501 +0.0140845070423 0.37 1.17546053484e-06 3745 -146916.188241 +0.0140845070423 0.4 1.16886916735e-06 3724 -151113.14498 +0.0140845070423 0.43 1.16008067737e-06 3696 -155882.44839 +0.0140845070423 0.46 1.15254768596e-06 3672 -161257.484374 +0.0140845070423 0.49 1.14438694526e-06 3646 -167282.033339 +0.0140845070423 0.52 1.13905107635e-06 3629 -174011.783344 +0.0140845070423 0.55 1.13245970886e-06 3608 -181515.327979 +0.0140845070423 0.58 1.1268099653e-06 3590 -189876.867145 +0.0140845070423 0.61 1.11833534997e-06 3563 -199201.497637 +0.0140845070423 0.64 1.11143010784e-06 3541 -209621.860489 +0.0140845070423 0.67 1.10829136142e-06 3531 -221308.141517 +0.0140845070423 0.7 1.09981674608e-06 3504 -234477.667424 +0.0140845070423 0.73 1.09291150395e-06 3482 -249417.619486 +0.0140845070423 0.76 1.08632013647e-06 3461 -266518.941512 +0.0140845070423 0.79 1.07941489434e-06 3439 -286328.249506 +0.0140845070423 0.82 1.07345127614e-06 3420 -309642.402001 +0.0140845070423 0.85 1.06748765794e-06 3401 -337693.600303 +0.0140845070423 0.88 1.0590130426e-06 3374 -372530.298364 +0.0123456790123 0.01 2.77779058299e-06 8850 -147851.138646 +0.0123456790123 0.04 1.62712614488e-06 5184 -140694.481585 +0.0123456790123 0.07 1.41494688679e-06 4508 -136160.801015 +0.0123456790123 0.1 1.32329549129e-06 4216 -133620.289476 +0.0123456790123 0.13 1.26208993607e-06 4021 -132309.90306 +0.0123456790123 0.16 1.22693597615e-06 3909 -131890.375247 +0.0123456790123 0.19 1.20841737226e-06 3850 -132195.55712 +0.0123456790123 0.22 1.18832939516e-06 3786 -133126.31055 +0.0123456790123 0.25 1.17389116163e-06 3740 -134622.549188 +0.0123456790123 0.28 1.16290554915e-06 3705 -136654.925463 +0.0123456790123 0.31 1.15097831275e-06 3667 -139209.841103 +0.0123456790123 0.34 1.14124819884e-06 3636 -142283.951765 +0.0123456790123 0.37 1.134970706e-06 3616 -145886.056462 +0.0123456790123 0.4 1.12524059209e-06 3585 -150031.968853 +0.0123456790123 0.43 1.11519660354e-06 3553 -154745.123921 +0.0123456790123 0.46 1.10829136142e-06 3531 -160059.795513 +0.0123456790123 0.49 1.10232774322e-06 3512 -166021.016094 +0.0123456790123 0.52 1.09353925324e-06 3484 -172681.298157 +0.0123456790123 0.55 1.08663401111e-06 3462 -180107.569468 +0.0123456790123 0.58 1.08192589148e-06 3447 -188384.658662 +0.0123456790123 0.61 1.07564839863e-06 3427 -197616.421133 +0.0123456790123 0.64 1.07062640436e-06 3411 -207933.365089 +0.0123456790123 0.67 1.06623215937e-06 3397 -219502.485 +0.0123456790123 0.7 1.06183791438e-06 3383 -232538.671407 +0.0123456790123 0.73 1.05556042154e-06 3363 -247325.153847 +0.0123456790123 0.76 1.04551643299e-06 3331 -264244.316856 +0.0123456790123 0.79 1.03955281479e-06 3312 -283832.864484 +0.0123456790123 0.82 1.03421694587e-06 3295 -306876.425881 +0.0123456790123 0.85 1.0291949516e-06 3279 -334581.940521 +0.0123456790123 0.88 1.02197583483e-06 3256 -368957.856898 +0.010989010989 0.01 2.72662901632e-06 8687 -147693.31049 +0.010989010989 0.04 1.58067269785e-06 5036 -140472.316549 +0.010989010989 0.07 1.3546829555e-06 4316 -135805.749177 +0.010989010989 0.1 1.26365930928e-06 4026 -133177.464331 +0.010989010989 0.13 1.21657811296e-06 3876 -131799.574207 +0.010989010989 0.16 1.18738777124e-06 3783 -131334.878044 +0.010989010989 0.19 1.1669859195e-06 3718 -131596.671712 +0.010989010989 0.22 1.15129218739e-06 3668 -132486.626052 +0.010989010989 0.25 1.13716782849e-06 3623 -133944.039208 +0.010989010989 0.28 1.12618221602e-06 3588 -135938.033856 +0.010989010989 0.31 1.11268560641e-06 3545 -138451.189282 +0.010989010989 0.34 1.10452486571e-06 3519 -141479.836593 +0.010989010989 0.37 1.09510862645e-06 3489 -145034.563558 +0.010989010989 0.4 1.08569238718e-06 3459 -149128.878036 +0.010989010989 0.43 1.07878714506e-06 3437 -153788.500503 +0.010989010989 0.46 1.07156802829e-06 3414 -159046.320523 +0.010989010989 0.49 1.06685990865e-06 3399 -164945.201756 +0.010989010989 0.52 1.06183791438e-06 3383 -171538.91575 +0.010989010989 0.55 1.05461879761e-06 3360 -178893.444648 +0.010989010989 0.58 1.04614418227e-06 3333 -187089.817325 +0.010989010989 0.61 1.03955281479e-06 3312 -196230.218933 +0.010989010989 0.64 1.03704181765e-06 3304 -206445.354015 +0.010989010989 0.67 1.03233369802e-06 3289 -217899.413824 +0.010989010989 0.7 1.02731170374e-06 3273 -230803.059378 +0.010989010989 0.73 1.02354520804e-06 3261 -245436.160112 +0.010989010989 0.76 1.01726771519e-06 3241 -262175.423418 +0.010989010989 0.79 1.0128734702e-06 3227 -281548.878857 +0.010989010989 0.82 1.00785147593e-06 3211 -304326.295793 +0.010989010989 0.85 1.00282948166e-06 3195 -331692.241487 +0.010989010989 0.88 9.9906298595e-07 3183 -365613.419073 +0.00990099009901 0.01 2.68645306213e-06 8559 -147555.25669 +0.00990099009901 0.04 1.53610249866e-06 4894 -140287.720573 +0.00990099009901 0.07 1.30917113239e-06 4171 -135509.817938 +0.00990099009901 0.1 1.22034460866e-06 3888 -132807.52639 +0.00990099009901 0.13 1.18267965161e-06 3768 -131389.650464 +0.00990099009901 0.16 1.15694193095e-06 3686 -130887.044265 +0.00990099009901 0.19 1.13559845528e-06 3618 -131115.815203 +0.00990099009901 0.22 1.1208463471e-06 3571 -131970.808628 +0.00990099009901 0.25 1.10389711643e-06 3517 -133390.352673 +0.00990099009901 0.28 1.09259762931e-06 3481 -135344.517739 +0.00990099009901 0.31 1.08067039291e-06 3443 -137815.876501 +0.00990099009901 0.34 1.07125415364e-06 3413 -140803.172502 +0.00990099009901 0.37 1.06403503687e-06 3390 -144312.935474 +0.00990099009901 0.4 1.05807141867e-06 3371 -148361.094259 +0.00990099009901 0.43 1.04928292869e-06 3343 -152971.076082 +0.00990099009901 0.46 1.03986668943e-06 3313 -158173.821204 +0.00990099009901 0.49 1.03610019372e-06 3301 -164012.363667 +0.00990099009901 0.52 1.03107819945e-06 3285 -170540.249349 +0.00990099009901 0.55 1.02574233053e-06 3268 -177821.926267 +0.00990099009901 0.58 1.02197583483e-06 3256 -185939.244178 +0.00990099009901 0.61 1.01632609127e-06 3238 -194993.053383 +0.00990099009901 0.64 1.01224572092e-06 3225 -205110.183476 +0.00990099009901 0.67 1.00753760129e-06 3210 -216452.034634 +0.00990099009901 0.7 1.00282948166e-06 3195 -229227.239054 +0.00990099009901 0.73 1.00031848452e-06 3187 -243710.052163 +0.00990099009901 0.76 9.98121362024e-07 3180 -260273.025126 +0.00990099009901 0.79 9.95924239529e-07 3173 -279435.158033 +0.00990099009901 0.82 9.89018997402e-07 3151 -301950.022349 +0.00990099009901 0.85 9.80544382064e-07 3124 -328978.068445 +0.00990099009901 0.88 9.76464011716e-07 3111 -362445.659844 +0.00900900900901 0.01 2.64847423043e-06 8438 -147437.394265 +0.00900900900901 0.04 1.48211606021e-06 4722 -140131.375048 +0.00900900900901 0.07 1.26554255713e-06 4032 -135259.083305 +0.00900900900901 0.1 1.19366526408e-06 3803 -132506.419616 +0.00900900900901 0.13 1.15600030702e-06 3683 -131054.673847 +0.00900900900901 0.16 1.12932096244e-06 3598 -130525.021048 +0.00900900900901 0.19 1.10734973749e-06 3528 -130722.598595 +0.00900900900901 0.22 1.09134213074e-06 3477 -131543.000903 +0.00900900900901 0.25 1.07564839863e-06 3427 -132927.065507 +0.00900900900901 0.28 1.06560441009e-06 3395 -134843.955463 +0.00900900900901 0.31 1.05744366939e-06 3369 -137279.261396 +0.00900900900901 0.34 1.0448886837e-06 3329 -140227.934595 +0.00900900900901 0.37 1.03484469516e-06 3297 -143694.047498 +0.00900900900901 0.4 1.02982270088e-06 3281 -147695.895555 +0.00900900900901 0.43 1.02480070661e-06 3265 -152256.230472 +0.00900900900901 0.46 1.01883708841e-06 3246 -157407.301216 +0.00900900900901 0.49 1.01381509413e-06 3230 -163189.429805 +0.00900900900901 0.52 1.00847922521e-06 3213 -169654.901873 +0.00900900900901 0.55 1.00534047879e-06 3203 -176868.008594 +0.00900900900901 0.58 1.00126010845e-06 3190 -184908.932224 +0.00900900900901 0.61 9.98749111308e-07 3182 -193877.541927 +0.00900900900901 0.64 9.95924239529e-07 3173 -203899.360573 +0.00900900900901 0.67 9.91216119897e-07 3158 -215132.65308 +0.00900900900901 0.7 9.86821874907e-07 3144 -227781.500816 +0.00900900900901 0.73 9.80230507422e-07 3123 -242115.731542 +0.00900900900901 0.76 9.77405635642e-07 3114 -258501.167286 +0.00900900900901 0.79 9.7269751601e-07 3099 -277448.318336 +0.00900900900901 0.82 9.67675521736e-07 3083 -299697.203223 +0.00900900900901 0.85 9.62653527462e-07 3067 -326386.690291 +0.00900900900901 0.88 9.54492786766e-07 3041 -359400.548583 +0.00826446280992 0.01 2.61363414515e-06 8327 -147334.710644 +0.00826446280992 0.04 1.44507885244e-06 4604 -139996.803203 +0.00826446280992 0.07 1.22913309864e-06 3916 -135044.800818 +0.00826446280992 0.1 1.16541654629e-06 3713 -132261.403483 +0.00826446280992 0.13 1.13057646101e-06 3602 -130783.358263 +0.00826446280992 0.16 1.10264161786e-06 3513 -130224.787931 +0.00826446280992 0.19 1.08192589148e-06 3447 -130392.918578 +0.00826446280992 0.22 1.06591828473e-06 3396 -131182.356639 +0.00826446280992 0.25 1.05493267225e-06 3361 -132536.174963 +0.00826446280992 0.28 1.0389250655e-06 3310 -134420.17659 +0.00826446280992 0.31 1.03045045017e-06 3283 -136817.813604 +0.00826446280992 0.34 1.02385908268e-06 3262 -139727.057504 +0.00826446280992 0.37 1.01663996591e-06 3239 -143154.547809 +0.00826446280992 0.4 1.01161797164e-06 3223 -147114.17848 +0.00826446280992 0.43 1.00596822808e-06 3205 -151628.818775 +0.00826446280992 0.46 1.0009462338e-06 3189 -156729.952421 +0.00826446280992 0.49 9.9749361274e-07 3178 -162457.626339 +0.00826446280992 0.52 9.9466874096e-07 3169 -168863.735914 +0.00826446280992 0.55 9.89646746686e-07 3153 -176010.816105 +0.00826446280992 0.58 9.83997003127e-07 3135 -183977.077798 +0.00826446280992 0.61 9.78347259569e-07 3117 -192860.147817 +0.00826446280992 0.64 9.76777886358e-07 3112 -202784.286039 +0.00826446280992 0.67 9.7269751601e-07 3099 -213906.546095 +0.00826446280992 0.7 9.67989396378e-07 3084 -226427.413545 +0.00826446280992 0.73 9.64222900672e-07 3072 -240613.266994 +0.00826446280992 0.76 9.57317658545e-07 3050 -256822.193344 +0.00826446280992 0.79 9.53865037481e-07 3039 -275554.637798 +0.00826446280992 0.82 9.52295664271e-07 3034 -297539.787295 +0.00826446280992 0.85 9.47587544639e-07 3019 -323894.120996 +0.00826446280992 0.88 9.41310051796e-07 2999 -356460.738163 +0.00763358778626 0.01 2.58224668093e-06 8227 -147246.918164 +0.00763358778626 0.04 1.40772777002e-06 4485 -139885.172929 +0.00763358778626 0.07 1.20308150335e-06 3833 -134868.305177 +0.00763358778626 0.1 1.14501469455e-06 3648 -132057.116982 +0.00763358778626 0.13 1.10954685999e-06 3535 -130559.17433 +0.00763358778626 0.16 1.07972876898e-06 3440 -129973.793412 +0.00763358778626 0.19 1.06152403974e-06 3382 -130113.054358 +0.00763358778626 0.22 1.04457480906e-06 3328 -130876.80811 +0.00763358778626 0.25 1.03139207409e-06 3286 -132199.688903 +0.00763358778626 0.28 1.02260358411e-06 3258 -134051.760643 +0.00763358778626 0.31 1.01350121949e-06 3229 -136418.26085 +0.00763358778626 0.34 1.00596822808e-06 3205 -139293.403058 +0.00763358778626 0.37 1.00000460988e-06 3186 -142683.139354 +0.00763358778626 0.4 9.95924239529e-07 3173 -146601.852523 +0.00763358778626 0.43 9.92785493108e-07 3163 -151073.058439 +0.00763358778626 0.46 9.86821874907e-07 3144 -156126.044258 +0.00763358778626 0.49 9.7991663278e-07 3122 -161799.551408 +0.00763358778626 0.52 9.76150137074e-07 3110 -168144.256812 +0.00763358778626 0.55 9.73325265294e-07 3101 -175223.536436 +0.00763358778626 0.58 9.68617145662e-07 3086 -183114.314927 +0.00763358778626 0.61 9.63595151388e-07 3070 -191913.047633 +0.00763358778626 0.64 9.58259282471e-07 3053 -201741.134334 +0.00763358778626 0.67 9.54806661408e-07 3042 -212752.196972 +0.00763358778626 0.7 9.52295664271e-07 3034 -225145.894609 +0.00763358778626 0.73 9.50098541776e-07 3027 -239184.192726 +0.00763358778626 0.76 9.4633204607e-07 3015 -255219.483084 +0.00763358778626 0.79 9.42251675722e-07 3002 -273742.318324 +0.00763358778626 0.82 9.38171305374e-07 2989 -295466.627625 +0.00763358778626 0.85 9.32521561815e-07 2971 -321486.006431 +0.00763358778626 0.88 9.2875506611e-07 2959 -353605.49287 +0.00709219858156 0.01 2.56121707991e-06 8160 -147173.783528 +0.00709219858156 0.04 1.37634030581e-06 4385 -139793.528954 +0.00709219858156 0.07 1.18456289946e-06 3774 -134722.804442 +0.00709219858156 0.1 1.12555446674e-06 3586 -131889.626902 +0.00709219858156 0.13 1.08851725896e-06 3468 -130368.472474 +0.00709219858156 0.16 1.06058241581e-06 3379 -129759.867447 +0.00709219858156 0.19 1.03923894015e-06 3311 -129876.59913 +0.00709219858156 0.22 1.02574233053e-06 3268 -130611.453504 +0.00709219858156 0.25 1.01475671806e-06 3233 -131909.139404 +0.00709219858156 0.28 1.00439885487e-06 3200 -133734.359361 +0.00709219858156 0.31 9.97179738098e-07 3177 -136069.261231 +0.00709219858156 0.34 9.93413242392e-07 3165 -138911.608554 +0.00709219858156 0.37 9.87763498833e-07 3147 -142266.945321 +0.00709219858156 0.4 9.7991663278e-07 3122 -146146.463108 +0.00709219858156 0.43 9.75208513147e-07 3107 -150572.097738 +0.00709219858156 0.46 9.70814268157e-07 3093 -155575.618666 +0.00709219858156 0.49 9.66733897809e-07 3080 -161195.069719 +0.00709219858156 0.52 9.61398028893e-07 3063 -167480.303464 +0.00709219858156 0.55 9.56062159976e-07 3046 -174492.082013 +0.00709219858156 0.58 9.51981789629e-07 3033 -182307.121801 +0.00709219858156 0.61 9.51040165702e-07 3030 -191021.627679 +0.00709219858156 0.64 9.48529168565e-07 3022 -200755.7751 +0.00709219858156 0.67 9.44762672859e-07 3010 -211659.975819 +0.00709219858156 0.7 9.40368427869e-07 2996 -223929.348866 +0.00709219858156 0.73 9.37229681448e-07 2986 -237821.040046 +0.00709219858156 0.76 9.32521561815e-07 2971 -253681.873935 +0.00709219858156 0.79 9.2875506611e-07 2959 -271994.110828 +0.00709219858156 0.82 9.26244068973e-07 2951 -293458.508406 +0.00709219858156 0.85 9.23105322551e-07 2941 -319146.801181 +0.00709219858156 0.88 9.20594325414e-07 2933 -350826.020314 +0.00662251655629 0.01 2.53736260711e-06 8084 -147113.539847 +0.00662251655629 0.04 1.35279970765e-06 4310 -139716.616462 +0.00662251655629 0.07 1.16604429557e-06 3715 -134604.641544 +0.00662251655629 0.1 1.1089191107e-06 3533 -131751.334196 +0.00662251655629 0.13 1.06905703115e-06 3406 -130206.37311 +0.00662251655629 0.16 1.04363318514e-06 3325 -129578.866057 +0.00662251655629 0.19 1.02228970947e-06 3257 -129671.230544 +0.00662251655629 0.22 1.00942084914e-06 3216 -130383.712248 +0.00662251655629 0.25 1.00000460988e-06 3186 -131655.574854 +0.00662251655629 0.28 9.9309936775e-07 3164 -133454.259986 +0.00662251655629 0.31 9.86194125622e-07 3142 -135763.116949 +0.00662251655629 0.34 9.77719510285e-07 3115 -138573.588198 +0.00662251655629 0.37 9.73639139937e-07 3102 -141891.442321 +0.00662251655629 0.4 9.67989396378e-07 3084 -145731.664391 +0.00662251655629 0.43 9.62025778177e-07 3065 -150114.519799 +0.00662251655629 0.46 9.54806661408e-07 3042 -155069.069227 +0.00662251655629 0.49 9.51667914986e-07 3032 -160634.096083 +0.00662251655629 0.52 9.5072629106e-07 3029 -166859.887852 +0.00662251655629 0.55 9.47901419281e-07 3020 -173807.300895 +0.00662251655629 0.58 9.42565550364e-07 3003 -181550.380414 +0.00662251655629 0.61 9.39112929301e-07 2992 -190182.569776 +0.00662251655629 0.64 9.35032558953e-07 2979 -199822.138694 +0.00662251655629 0.67 9.31893812531e-07 2969 -210617.922889 +0.00662251655629 0.7 9.28127316825e-07 2957 -222762.426004 +0.00662251655629 0.73 9.26244068973e-07 2951 -236508.654403 +0.00662251655629 0.76 9.23733071835e-07 2943 -252197.110352 +0.00662251655629 0.79 9.2153594934e-07 2936 -270302.37539 +0.00662251655629 0.82 9.18397202919e-07 2926 -291510.795897 +0.00662251655629 0.85 9.16200080424e-07 2919 -316871.916787 +0.00662251655629 0.88 9.1274745936e-07 2908 -348114.16212 +0.00621118012422 0.01 2.51256651038e-06 8005 -147062.827388 +0.00621118012422 0.04 1.32329549129e-06 4216 -139654.614993 +0.00621118012422 0.07 1.1490950649e-06 3661 -134508.52775 +0.00621118012422 0.1 1.09040050681e-06 3474 -131635.255529 +0.00621118012422 0.13 1.05367717368e-06 3357 -130070.575274 +0.00621118012422 0.16 1.02574233053e-06 3268 -129420.114441 +0.00621118012422 0.19 1.00879309986e-06 3214 -129493.697127 +0.00621118012422 0.22 9.95610364887e-07 3172 -130184.635266 +0.00621118012422 0.25 9.89646746686e-07 3153 -131434.89357 +0.00621118012422 0.28 9.7991663278e-07 3122 -133209.133622 +0.00621118012422 0.31 9.73639139937e-07 3102 -135488.095785 +0.00621118012422 0.34 9.65792273883e-07 3077 -138267.618736 +0.00621118012422 0.37 9.5951478104e-07 3057 -141551.31874 +0.00621118012422 0.4 9.52923413555e-07 3036 -145351.222599 +0.00621118012422 0.43 9.5072629106e-07 3029 -149690.374031 +0.00621118012422 0.46 9.47587544639e-07 3019 -154599.043681 +0.00621118012422 0.49 9.43507174291e-07 3006 -160113.784905 +0.00621118012422 0.52 9.38485180016e-07 2990 -166281.873747 +0.00621118012422 0.55 9.35660308237e-07 2981 -173163.580913 +0.00621118012422 0.58 9.30952188605e-07 2966 -180832.983336 +0.00621118012422 0.61 9.27813442183e-07 2956 -189382.411756 +0.00621118012422 0.64 9.25302445046e-07 2948 -198928.322036 +0.00621118012422 0.67 9.23419197193e-07 2942 -209617.389377 +0.00621118012422 0.7 9.2153594934e-07 2936 -221639.657211 +0.00621118012422 0.73 9.19338826845e-07 2929 -235243.045506 +0.00621118012422 0.76 9.1714170435e-07 2922 -250762.090723 +0.00621118012422 0.79 9.15258456497e-07 2916 -268662.29078 +0.00621118012422 0.82 9.1117808615e-07 2903 -289616.414852 +0.00621118012422 0.85 9.0835321437e-07 2894 -314651.987073 +0.00621118012422 0.88 9.04586718665e-07 2882 -345459.60508 +0.00584795321637 0.01 2.49436178113e-06 7947 -147021.414708 +0.00584795321637 0.04 1.30948500703e-06 4172 -139608.013556 +0.00584795321637 0.07 1.13654007921e-06 3621 -134432.664852 +0.00584795321637 0.1 1.07219577757e-06 3416 -131538.83501 +0.00584795321637 0.13 1.03421694587e-06 3295 -129954.688956 +0.00584795321637 0.16 1.01224572092e-06 3225 -129283.765111 +0.00584795321637 0.19 9.95924239529e-07 3173 -129338.05022 +0.00584795321637 0.22 9.88391248117e-07 3149 -130012.048814 +0.00584795321637 0.25 9.75522387789e-07 3108 -131241.246608 +0.00584795321637 0.28 9.69558769589e-07 3089 -132989.93868 +0.00584795321637 0.31 9.61084154251e-07 3062 -135240.824972 +0.00584795321637 0.34 9.53865037481e-07 3039 -137988.641135 +0.00584795321637 0.37 9.49784667134e-07 3026 -141237.288103 +0.00584795321637 0.4 9.46959795354e-07 3017 -145001.800777 +0.00584795321637 0.43 9.41310051796e-07 2999 -149300.288351 +0.00584795321637 0.46 9.36288057521e-07 2983 -154161.831592 +0.00584795321637 0.49 9.32521561815e-07 2971 -159624.240696 +0.00584795321637 0.52 9.27499567541e-07 2955 -165734.24661 +0.00584795321637 0.55 9.25302445046e-07 2948 -172551.103693 +0.00584795321637 0.58 9.22791447909e-07 2940 -180148.422694 +0.00584795321637 0.61 9.21222074698e-07 2935 -188617.42674 +0.00584795321637 0.64 9.19652701488e-07 2930 -198072.097957 +0.00584795321637 0.67 9.1714170435e-07 2922 -208656.926983 +0.00584795321637 0.7 9.15886205782e-07 2918 -220557.897406 +0.00584795321637 0.73 9.1274745936e-07 2908 -234019.391704 +0.00584795321637 0.76 9.09608712939e-07 2898 -249369.641496 +0.00584795321637 0.79 9.07725465086e-07 2892 -267065.052589 +0.00584795321637 0.82 9.04586718665e-07 2882 -287766.026065 +0.00584795321637 0.85 9.01447972243e-07 2872 -312479.025712 +0.00584795321637 0.88 8.97995351179e-07 2861 -342856.581136 +0.00552486187845 0.01 2.47333218011e-06 7880 -146987.307339 +0.00552486187845 0.04 1.28845540601e-06 4105 -139574.567771 +0.00552486187845 0.07 1.12241572031e-06 3576 -134370.127581 +0.00552486187845 0.1 1.05775754403e-06 3370 -131457.783008 +0.00552486187845 0.13 1.02040646162e-06 3251 -129853.189414 +0.00552486187845 0.16 9.99690735235e-07 3185 -129166.454666 +0.00552486187845 0.19 9.88077373475e-07 3148 -129204.269698 +0.00552486187845 0.22 9.75208513147e-07 3107 -129860.055077 +0.00552486187845 0.25 9.66733897809e-07 3080 -131068.415706 +0.00552486187845 0.28 9.58259282471e-07 3053 -132792.969135 +0.00552486187845 0.31 9.49784667134e-07 3026 -135015.77001 +0.00552486187845 0.34 9.47587544639e-07 3019 -137733.619238 +0.00552486187845 0.37 9.40368427869e-07 2996 -140950.513289 +0.00552486187845 0.4 9.35660308237e-07 2981 -144677.112686 +0.00552486187845 0.43 9.3032443932e-07 2964 -148934.072047 +0.00552486187845 0.46 9.2593019433e-07 2950 -153749.187172 +0.00552486187845 0.49 9.23733071835e-07 2943 -159160.039299 +0.00552486187845 0.52 9.21849823983e-07 2937 -165213.727551 +0.00552486187845 0.55 9.20280450772e-07 2932 -171968.560584 +0.00552486187845 0.58 9.18083328277e-07 2925 -179496.09284 +0.00552486187845 0.61 9.15886205782e-07 2918 -187885.674836 +0.00552486187845 0.64 9.13689083287e-07 2911 -197249.778978 +0.00552486187845 0.67 9.1117808615e-07 2903 -207730.425702 +0.00552486187845 0.7 9.0835321437e-07 2894 -219510.390122 +0.00552486187845 0.73 9.05842217233e-07 2886 -232830.099205 +0.00552486187845 0.76 9.03331220096e-07 2878 -248012.169014 +0.00552486187845 0.79 9.01134097601e-07 2871 -265504.678765 +0.00552486187845 0.82 8.98309225822e-07 2862 -285955.405396 +0.00552486187845 0.85 8.95484354042e-07 2853 -310348.78938 +0.00552486187845 0.88 8.92659482263e-07 2844 -340300.515839 +0.00523560209424 0.01 2.45606907479e-06 7825 -146959.675732 +0.00523560209424 0.04 1.27307554854e-06 4056 -139551.463334 +0.00523560209424 0.07 1.10923298534e-06 3534 -134320.575056 +0.00523560209424 0.1 1.04614418227e-06 3333 -131390.585425 +0.00523560209424 0.13 1.01099022235e-06 3221 -129767.690315 +0.00523560209424 0.16 9.89960621328e-07 3154 -129065.59405 +0.00523560209424 0.19 9.77719510285e-07 3115 -129089.817711 +0.00523560209424 0.22 9.66106148525e-07 3078 -129725.907129 +0.00523560209424 0.25 9.55434410692e-07 3044 -130912.854959 +0.00523560209424 0.28 9.48529168565e-07 3022 -132613.377788 +0.00523560209424 0.31 9.44134923575e-07 3008 -134811.586339 +0.00523560209424 0.34 9.36288057521e-07 2983 -137500.218326 +0.00523560209424 0.37 9.30638313963e-07 2965 -140682.626846 +0.00523560209424 0.4 9.25302445046e-07 2948 -144371.725126 +0.00523560209424 0.43 9.22791447909e-07 2940 -148587.869824 +0.00523560209424 0.46 9.2153594934e-07 2936 -153359.163917 +0.00523560209424 0.49 9.19652701488e-07 2930 -158721.83259 +0.00523560209424 0.52 9.16200080424e-07 2919 -164720.737133 +0.00523560209424 0.55 9.15258456497e-07 2916 -171413.381371 +0.00523560209424 0.58 9.1274745936e-07 2908 -178871.068798 +0.00523560209424 0.61 9.09294838297e-07 2897 -187181.433837 +0.00523560209424 0.64 9.0678384116e-07 2889 -196454.623319 +0.00523560209424 0.67 9.04272844022e-07 2881 -206831.26572 +0.00523560209424 0.7 9.01761846885e-07 2873 -218491.119585 +0.00523560209424 0.73 9.01134097601e-07 2871 -231670.622638 +0.00523560209424 0.76 8.97053727253e-07 2858 -246686.826467 +0.00523560209424 0.79 8.95484354042e-07 2853 -263978.329416 +0.00523560209424 0.82 8.92973356905e-07 2845 -284180.554655 +0.00523560209424 0.85 8.9077623441e-07 2838 -308258.285703 +0.00523560209424 0.88 8.89520735842e-07 2834 -337790.339454 +0.00497512437811 0.01 2.43911984412e-06 7771 -146938.363496 +0.00497512437811 0.04 1.25738181644e-06 4006 -139536.522959 +0.00497512437811 0.07 1.09448087716e-06 3487 -134282.337887 +0.00497512437811 0.1 1.03107819945e-06 3285 -131334.302491 +0.00497512437811 0.13 1.00000460988e-06 3186 -129696.268821 +0.00497512437811 0.16 9.85252501696e-07 3139 -128981.349117 +0.00497512437811 0.19 9.68931020304e-07 3087 -128988.795345 +0.00497512437811 0.22 9.57003783903e-07 3049 -129607.217958 +0.00497512437811 0.25 9.47587544639e-07 3019 -130771.6065 +0.00497512437811 0.28 9.40682302511e-07 2997 -132450.727506 +0.00497512437811 0.31 9.33463185742e-07 2974 -134622.892774 +0.00497512437811 0.34 9.28127316825e-07 2957 -137281.596492 +0.00497512437811 0.37 9.2436082112e-07 2945 -140431.928151 +0.00497512437811 0.4 9.2153594934e-07 2936 -144085.750254 +0.00497512437811 0.43 9.19024952203e-07 2928 -148263.475342 +0.00497512437811 0.46 9.16200080424e-07 2919 -152991.446223 +0.00497512437811 0.49 9.14944581855e-07 2915 -158305.292746 +0.00497512437811 0.52 9.1117808615e-07 2903 -164249.938022 +0.00497512437811 0.55 9.07097715802e-07 2890 -170880.672456 +0.00497512437811 0.58 9.05842217233e-07 2886 -178267.922471 +0.00497512437811 0.61 9.02703470812e-07 2876 -186498.931954 +0.00497512437811 0.64 9.01134097601e-07 2871 -195682.53313 +0.00497512437811 0.67 9.00506348317e-07 2869 -205956.929457 +0.00497512437811 0.7 8.96112103327e-07 2855 -217498.132125 +0.00497512437811 0.73 8.951704794e-07 2852 -230538.59953 +0.00497512437811 0.76 8.92659482263e-07 2844 -245389.709563 +0.00497512437811 0.79 8.91090109052e-07 2839 -262482.984735 +0.00497512437811 0.82 8.89834610484e-07 2835 -282440.229303 +0.00497512437811 0.85 8.88265237273e-07 2830 -306206.540277 +0.00497512437811 0.88 8.8638198942e-07 2824 -335324.21331 +0.00473933649289 0.01 2.42530935986e-06 7727 -146921.930947 +0.00473933649289 0.04 1.24451295611e-06 3965 -139528.904992 +0.00473933649289 0.07 1.08129814219e-06 3445 -134253.469202 +0.00473933649289 0.1 1.02040646162e-06 3251 -131286.280753 +0.00473933649289 0.13 9.90902245255e-07 3157 -129637.414412 +0.00473933649289 0.16 9.73639139937e-07 3102 -128909.445338 +0.00473933649289 0.19 9.59828655682e-07 3058 -128900.849887 +0.00473933649289 0.22 9.46645920712e-07 3016 -129499.329382 +0.00473933649289 0.25 9.39740678585e-07 2994 -130645.345846 +0.00473933649289 0.28 9.32835436458e-07 2972 -132300.52574 +0.00473933649289 0.31 9.25616319688e-07 2949 -134446.84482 +0.00473933649289 0.34 9.2153594934e-07 2936 -137078.386025 +0.00473933649289 0.37 9.19652701488e-07 2930 -140198.25561 +0.00473933649289 0.4 9.1714170435e-07 2922 -143818.661018 +0.00473933649289 0.43 9.14316832571e-07 2913 -147957.491823 +0.00473933649289 0.46 9.10864211507e-07 2902 -152641.976676 +0.00473933649289 0.49 9.0678384116e-07 2889 -157906.638664 +0.00473933649289 0.52 9.05214467949e-07 2884 -163795.943485 +0.00473933649289 0.55 9.02703470812e-07 2876 -170365.530082 +0.00473933649289 0.58 9.00820222959e-07 2870 -177684.264667 +0.00473933649289 0.61 8.98936975106e-07 2864 -185837.66307 +0.00473933649289 0.64 8.96112103327e-07 2855 -194932.285085 +0.00473933649289 0.67 8.94228855474e-07 2849 -205104.54319 +0.00473933649289 0.7 8.92659482263e-07 2844 -216528.211911 +0.00473933649289 0.73 8.91090109052e-07 2839 -229431.479485 +0.00473933649289 0.76 8.89834610484e-07 2835 -244120.126548 +0.00473933649289 0.79 8.88265237273e-07 2830 -261017.550775 +0.00473933649289 0.82 8.86695864062e-07 2825 -280732.699102 +0.00473933649289 0.85 8.85126490851e-07 2820 -304190.835947 +0.00473933649289 0.88 8.83557117641e-07 2815 -332899.471879 +0.00452488687783 0.01 2.40647688133e-06 7667 -146910.094233 +0.00452488687783 0.04 1.23038859721e-06 3920 -139527.85159 +0.00452488687783 0.07 1.07188190293e-06 3415 -134234.447172 +0.00452488687783 0.1 1.01224572092e-06 3225 -131248.837418 +0.00452488687783 0.13 9.85566376338e-07 3140 -129588.806326 +0.00452488687783 0.16 9.65792273883e-07 3077 -128847.553548 +0.00452488687783 0.19 9.47901419281e-07 3020 -128822.03236 +0.00452488687783 0.22 9.41623926438e-07 3000 -129403.871166 +0.00452488687783 0.25 9.32835436458e-07 2972 -130529.83343 +0.00452488687783 0.28 9.2436082112e-07 2945 -132162.391738 +0.00452488687783 0.31 9.2153594934e-07 2936 -134284.170943 +0.00452488687783 0.34 9.19024952203e-07 2928 -136889.511307 +0.00452488687783 0.37 9.14630707213e-07 2914 -139979.993091 +0.00452488687783 0.4 9.1117808615e-07 2903 -143565.874344 +0.00452488687783 0.43 9.07725465086e-07 2892 -147666.191863 +0.00452488687783 0.46 9.05528342591e-07 2885 -152306.819895 +0.00452488687783 0.49 9.02703470812e-07 2876 -157522.995481 +0.00452488687783 0.52 9.00506348317e-07 2869 -163358.347833 +0.00452488687783 0.55 8.98936975106e-07 2864 -169867.800602 +0.00452488687783 0.58 8.95798228684e-07 2854 -177118.010813 +0.00452488687783 0.61 8.94228855474e-07 2849 -185194.161899 +0.00452488687783 0.64 8.92659482263e-07 2844 -194201.247774 +0.00452488687783 0.67 8.9077623441e-07 2838 -204272.964496 +0.00452488687783 0.7 8.89834610484e-07 2835 -215580.653565 +0.00452488687783 0.73 8.88265237273e-07 2830 -228348.413361 +0.00452488687783 0.76 8.86695864062e-07 2825 -242876.210071 +0.00452488687783 0.79 8.85126490851e-07 2820 -259579.484224 +0.00452488687783 0.82 8.84184866925e-07 2817 -279055.451194 +0.00452488687783 0.85 8.82615493714e-07 2812 -302209.212815 +0.00452488687783 0.88 8.81673869788e-07 2809 -330514.562288 +0.004329004329 0.01 2.39392189565e-06 7627 -146902.005174 +0.004329004329 0.04 1.21312549189e-06 3865 -139532.532669 +0.004329004329 0.07 1.06058241581e-06 3379 -134222.522239 +0.004329004329 0.1 1.00282948166e-06 3195 -131221.094733 +0.004329004329 0.13 9.76777886358e-07 3112 -129548.415203 +0.004329004329 0.16 9.56689909261e-07 3048 -128794.442697 +0.004329004329 0.19 9.45390422143e-07 3012 -128752.422661 +0.004329004329 0.22 9.33777060384e-07 2975 -129317.975025 +0.004329004329 0.25 9.24988570404e-07 2947 -130424.293114 +0.004329004329 0.28 9.2153594934e-07 2936 -132035.923299 +0.004329004329 0.31 9.17455578992e-07 2923 -134134.553053 +0.004329004329 0.34 9.13375208645e-07 2910 -136712.837444 +0.004329004329 0.37 9.10236462223e-07 2900 -139773.032314 +0.004329004329 0.4 9.06469966517e-07 2888 -143325.022151 +0.004329004329 0.43 9.03331220096e-07 2878 -147386.926646 +0.004329004329 0.46 9.00820222959e-07 2870 -151985.160426 +0.004329004329 0.49 8.9956472439e-07 2866 -157153.992073 +0.004329004329 0.52 8.95798228684e-07 2854 -162935.565699 +0.004329004329 0.55 8.94228855474e-07 2849 -169384.687355 +0.004329004329 0.58 8.92659482263e-07 2844 -176567.633263 +0.004329004329 0.61 8.9077623441e-07 2838 -184567.58659 +0.004329004329 0.64 8.89520735842e-07 2834 -193488.260841 +0.004329004329 0.67 8.88265237273e-07 2830 -203460.973902 +0.004329004329 0.7 8.8638198942e-07 2824 -214653.752692 +0.004329004329 0.73 8.85440365494e-07 2821 -227286.999522 +0.004329004329 0.76 8.83870992283e-07 2816 -241655.805776 +0.004329004329 0.79 8.83243242999e-07 2814 -258167.304918 +0.004329004329 0.82 8.82301619072e-07 2811 -277406.889832 +0.004329004329 0.85 8.81359995146e-07 2808 -300260.731598 +0.004329004329 0.88 8.79162872651e-07 2801 -328167.722745 +0.00414937759336 0.01 2.38011141139e-06 7583 -146897.710399 +0.00414937759336 0.04 1.20151213013e-06 3828 -139541.934017 +0.00414937759336 0.07 1.05210780047e-06 3352 -134216.317437 +0.00414937759336 0.1 9.9309936775e-07 3164 -131200.73167 +0.00414937759336 0.13 9.67361647094e-07 3082 -129514.859693 +0.00414937759336 0.16 9.48529168565e-07 3022 -128748.17688 +0.00414937759336 0.19 9.37229681448e-07 2986 -128692.736358 +0.00414937759336 0.22 9.27499567541e-07 2955 -129240.691832 +0.00414937759336 0.25 9.20594325414e-07 2933 -130328.146655 +0.00414937759336 0.28 9.16827829708e-07 2921 -131919.761021 +0.00414937759336 0.31 9.13375208645e-07 2910 -133995.235862 +0.00414937759336 0.34 9.09294838297e-07 2897 -136546.83057 +0.00414937759336 0.37 9.05214467949e-07 2884 -139576.333623 +0.00414937759336 0.4 9.02075721527e-07 2874 -143094.574228 +0.00414937759336 0.43 9.00192473674e-07 2868 -147119.341148 +0.00414937759336 0.46 8.96112103327e-07 2855 -151675.75189 +0.00414937759336 0.49 8.951704794e-07 2852 -156797.009176 +0.00414937759336 0.52 8.92973356905e-07 2845 -162526.178934 +0.00414937759336 0.55 8.91090109052e-07 2839 -168915.892183 +0.00414937759336 0.58 8.89834610484e-07 2835 -176032.197668 +0.00414937759336 0.61 8.88579111915e-07 2831 -183956.897513 +0.00414937759336 0.64 8.86068114778e-07 2823 -192791.762804 +0.00414937759336 0.67 8.85440365494e-07 2821 -202666.041157 +0.00414937759336 0.7 8.84498741567e-07 2818 -213745.479962 +0.00414937759336 0.73 8.83557117641e-07 2815 -226246.078356 +0.00414937759336 0.76 8.82301619072e-07 2811 -240457.545945 +0.00414937759336 0.79 8.81673869788e-07 2809 -256779.782032 +0.00414937759336 0.82 8.80104496577e-07 2804 -275786.023428 +0.00414937759336 0.85 8.79162872651e-07 2801 -298342.90977 +0.00414937759336 0.88 8.78535123366e-07 2799 -325857.838742 +0.00398406374502 0.01 2.36630092714e-06 7539 -146896.546338 +0.00398406374502 0.04 1.19460688801e-06 3806 -139556.88352 +0.00398406374502 0.07 1.04363318514e-06 3325 -134216.089308 +0.00398406374502 0.1 9.85566376338e-07 3140 -131186.774449 +0.00398406374502 0.13 9.61711903535e-07 3064 -129488.791203 +0.00398406374502 0.16 9.43821048933e-07 3007 -128707.714367 +0.00398406374502 0.19 9.31893812531e-07 2969 -128640.128272 +0.00398406374502 0.22 9.21849823983e-07 2937 -129170.828086 +0.00398406374502 0.25 9.17455578992e-07 2923 -130240.74617 +0.00398406374502 0.28 9.13375208645e-07 2910 -131812.516984 +0.00398406374502 0.31 9.0835321437e-07 2894 -133864.925842 +0.00398406374502 0.34 9.04900593307e-07 2883 -136389.688266 +0.00398406374502 0.37 9.01134097601e-07 2871 -139389.180671 +0.00398406374502 0.4 8.99250849748e-07 2865 -142874.307236 +0.00398406374502 0.43 8.95798228684e-07 2854 -146861.75702 +0.00398406374502 0.46 8.93914980832e-07 2848 -151376.839706 +0.00398406374502 0.49 8.91717858337e-07 2841 -156451.745349 +0.00398406374502 0.52 8.89834610484e-07 2835 -162128.636273 +0.00398406374502 0.55 8.88579111915e-07 2831 -168460.160255 +0.00398406374502 0.58 8.86695864062e-07 2825 -175510.398175 +0.00398406374502 0.61 8.86068114778e-07 2823 -183360.230347 +0.00398406374502 0.64 8.84812616209e-07 2819 -192110.311274 +0.00398406374502 0.67 8.83870992283e-07 2816 -201887.530965 +0.00398406374502 0.7 8.82301619072e-07 2811 -212854.603394 +0.00398406374502 0.73 8.8198774443e-07 2810 -225224.302567 +0.00398406374502 0.76 8.80418371219e-07 2805 -239280.81813 +0.00398406374502 0.79 8.79476747293e-07 2802 -255415.429487 +0.00398406374502 0.82 8.78848998009e-07 2800 -274190.879727 +0.00398406374502 0.85 8.77907374082e-07 2797 -296455.638918 +0.00398406374502 0.88 8.7759349944e-07 2796 -323584.155146 +0.00383141762452 0.01 2.35594306395e-06 7506 -146898.326001 +0.00383141762452 0.04 1.18832939516e-06 3786 -139577.142287 +0.00383141762452 0.07 1.0351585698e-06 3298 -134220.334849 +0.00383141762452 0.1 9.81799880632e-07 3128 -131178.749423 +0.00383141762452 0.13 9.5512053605e-07 3043 -129469.423497 +0.00383141762452 0.16 9.38799054658e-07 2991 -128675.260149 +0.00383141762452 0.19 9.24988570404e-07 2947 -128592.957638 +0.00383141762452 0.22 9.19024952203e-07 2928 -129108.393194 +0.00383141762452 0.25 9.13689083287e-07 2911 -130161.552182 +0.00383141762452 0.28 9.08980963655e-07 2896 -131713.000872 +0.00383141762452 0.31 9.04586718665e-07 2882 -133741.912421 +0.00383141762452 0.34 9.00506348317e-07 2869 -136240.572764 +0.00383141762452 0.37 8.98309225822e-07 2862 -139211.215136 +0.00383141762452 0.4 8.94856604758e-07 2851 -142662.893233 +0.00383141762452 0.43 8.92659482263e-07 2844 -146613.523056 +0.00383141762452 0.46 8.90462359768e-07 2837 -151087.361865 +0.00383141762452 0.49 8.88892986557e-07 2832 -156116.676967 +0.00383141762452 0.52 8.87323613346e-07 2827 -161742.230631 +0.00383141762452 0.55 8.85754240136e-07 2822 -168015.550269 +0.00383141762452 0.58 8.84812616209e-07 2819 -175000.917134 +0.00383141762452 0.61 8.83870992283e-07 2816 -182777.061108 +0.00383141762452 0.64 8.82301619072e-07 2811 -191443.210303 +0.00383141762452 0.67 8.82301619072e-07 2811 -201124.42789 +0.00383141762452 0.7 8.81673869788e-07 2809 -211980.754529 +0.00383141762452 0.73 8.79790621935e-07 2803 -224220.491908 +0.00383141762452 0.76 8.79162872651e-07 2801 -238123.036483 +0.00383141762452 0.79 8.78535123366e-07 2799 -254073.153247 +0.00383141762452 0.82 8.77907374082e-07 2797 -272621.221463 +0.00383141762452 0.85 8.76965750156e-07 2794 -294597.728551 +0.00383141762452 0.88 8.76338000871e-07 2792 -321345.419757 +0.00369003690037 0.01 2.3458990754e-06 7474 -146902.911264 +0.00369003690037 0.04 1.18016865447e-06 3760 -139600.453545 +0.00369003690037 0.07 1.02260358411e-06 3258 -134228.494701 +0.00369003690037 0.1 9.76777886358e-07 3112 -131175.95533 +0.00369003690037 0.13 9.47587544639e-07 3019 -129455.461522 +0.00369003690037 0.16 9.31266063247e-07 2967 -128647.718701 +0.00369003690037 0.19 9.21222074698e-07 2935 -128550.685643 +0.00369003690037 0.22 9.15258456497e-07 2916 -129053.558567 +0.00369003690037 0.25 9.09608712939e-07 2898 -130088.926144 +0.00369003690037 0.28 9.04586718665e-07 2882 -131619.841103 +0.00369003690037 0.31 9.00820222959e-07 2870 -133625.806346 +0.00369003690037 0.34 8.97681476537e-07 2860 -136099.239215 +0.00369003690037 0.37 8.94542730116e-07 2850 -139040.422012 +0.00369003690037 0.4 8.92345607621e-07 2843 -142459.707795 +0.00369003690037 0.43 8.89520735842e-07 2834 -146373.719832 +0.00369003690037 0.46 8.88265237273e-07 2830 -150806.834058 +0.00369003690037 0.49 8.85754240136e-07 2822 -155790.654042 +0.00369003690037 0.52 8.85126490851e-07 2820 -161365.62631 +0.00369003690037 0.55 8.83870992283e-07 2816 -167582.108538 +0.00369003690037 0.58 8.82929368356e-07 2813 -174502.930855 +0.00369003690037 0.61 8.82301619072e-07 2811 -182206.409636 +0.00369003690037 0.64 8.81359995146e-07 2808 -190789.814114 +0.00369003690037 0.67 8.79790621935e-07 2803 -200375.872384 +0.00369003690037 0.7 8.79162872651e-07 2801 -211122.021043 +0.00369003690037 0.73 8.78848998009e-07 2800 -223233.606916 +0.00369003690037 0.76 8.78221248724e-07 2798 -236984.631188 +0.00369003690037 0.79 8.77279624798e-07 2795 -252752.190623 +0.00369003690037 0.82 8.76965750156e-07 2794 -271075.857856 +0.00369003690037 0.85 8.76338000871e-07 2792 -292768.106776 +0.00369003690037 0.88 8.76338000871e-07 2792 -319141.028329 +0.00355871886121 0.01 2.333971839e-06 7436 -146910.043667 +0.00355871886121 0.04 1.17451891091e-06 3742 -139626.960248 +0.00355871886121 0.07 1.01412896877e-06 3231 -134239.412039 +0.00355871886121 0.1 9.68931020304e-07 3087 -131177.852282 +0.00355871886121 0.13 9.4193780108e-07 3001 -129445.932017 +0.00355871886121 0.16 9.26557943615e-07 2952 -128625.650293 +0.00355871886121 0.19 9.18083328277e-07 2925 -128514.830804 +0.00355871886121 0.22 9.12119710076e-07 2906 -129003.575253 +0.00355871886121 0.25 9.05214467949e-07 2884 -130022.13665 +0.00355871886121 0.28 9.01447972243e-07 2872 -131532.835202 +0.00355871886121 0.31 8.97995351179e-07 2861 -133516.405664 +0.00355871886121 0.34 8.94542730116e-07 2850 -135963.785337 +0.00355871886121 0.37 8.91717858337e-07 2841 -138876.52871 +0.00355871886121 0.4 8.89206861199e-07 2833 -142263.684627 +0.00355871886121 0.43 8.87323613346e-07 2827 -146141.798862 +0.00355871886121 0.46 8.85754240136e-07 2822 -150534.566064 +0.00355871886121 0.49 8.84498741567e-07 2818 -155473.474229 +0.00355871886121 0.52 8.83557117641e-07 2815 -160998.2123 +0.00355871886121 0.55 8.82301619072e-07 2811 -167158.516695 +0.00355871886121 0.58 8.8198774443e-07 2810 -174015.940431 +0.00355871886121 0.61 8.81046120504e-07 2807 -181647.39032 +0.00355871886121 0.64 8.79790621935e-07 2803 -190148.643597 +0.00355871886121 0.67 8.79162872651e-07 2801 -199640.636449 +0.00355871886121 0.7 8.78535123366e-07 2799 -210278.272234 +0.00355871886121 0.73 8.77907374082e-07 2797 -222263.212665 +0.00355871886121 0.76 8.77279624798e-07 2795 -235864.343201 +0.00355871886121 0.79 8.76651875514e-07 2793 -251451.679987 +0.00355871886121 0.82 8.76338000871e-07 2792 -269553.890686 +0.00355871886121 0.85 8.76338000871e-07 2792 -290966.199599 +0.00355871886121 0.88 8.76338000871e-07 2792 -316970.428259 +0.00343642611684 0.01 2.32424172509e-06 7405 -146919.238808 +0.00343642611684 0.04 1.16604429557e-06 3715 -139657.053341 +0.00343642611684 0.07 1.01004859843e-06 3218 -134254.820483 +0.00343642611684 0.1 9.63595151388e-07 3070 -131183.170105 +0.00343642611684 0.13 9.39112929301e-07 2992 -129441.12248 +0.00343642611684 0.16 9.21222074698e-07 2935 -128608.269102 +0.00343642611684 0.19 9.15258456497e-07 2916 -128484.722898 +0.00343642611684 0.22 9.08667089012e-07 2895 -128958.554784 +0.00343642611684 0.25 9.02389596169e-07 2875 -129960.726071 +0.00343642611684 0.28 8.99250849748e-07 2865 -131451.555083 +0.00343642611684 0.31 8.93914980832e-07 2848 -133412.339924 +0.00343642611684 0.34 8.91717858337e-07 2841 -135834.406994 +0.00343642611684 0.37 8.88892986557e-07 2832 -138718.791293 +0.00343642611684 0.4 8.87009738704e-07 2826 -142074.359671 +0.00343642611684 0.43 8.85440365494e-07 2821 -145917.085078 +0.00343642611684 0.46 8.84184866925e-07 2817 -150270.192397 +0.00343642611684 0.49 8.83243242999e-07 2814 -155164.739924 +0.00343642611684 0.52 8.8198774443e-07 2810 -160639.618173 +0.00343642611684 0.55 8.81359995146e-07 2808 -166744.179217 +0.00343642611684 0.58 8.79790621935e-07 2803 -173538.874187 +0.00343642611684 0.61 8.79162872651e-07 2801 -181098.898646 +0.00343642611684 0.64 8.78848998009e-07 2800 -189519.023077 +0.00343642611684 0.67 8.78221248724e-07 2798 -198918.412527 +0.00343642611684 0.7 8.77279624798e-07 2795 -209448.759416 +0.00343642611684 0.73 8.76965750156e-07 2794 -221308.379648 +0.00343642611684 0.76 8.76651875514e-07 2793 -234761.543653 +0.00343642611684 0.79 8.76338000871e-07 2792 -250171.068343 +0.00343642611684 0.82 8.76338000871e-07 2792 -268055.061749 +0.00343642611684 0.85 8.76338000871e-07 2792 -289191.549714 +0.00343642611684 0.88 8.76338000871e-07 2792 -314832.549724 +0.00332225913621 0.01 2.31639485904e-06 7380 -146930.568497 +0.00332225913621 0.04 1.16165005058e-06 3701 -139689.43807 +0.00332225913621 0.07 1.0031433563e-06 3196 -134273.748462 +0.00332225913621 0.1 9.57317658545e-07 3050 -131192.098485 +0.00332225913621 0.13 9.331493111e-07 2973 -129439.580181 +0.00332225913621 0.16 9.18083328277e-07 2925 -128595.56623 +0.00332225913621 0.19 9.11805835434e-07 2905 -128459.64247 +0.00332225913621 0.22 9.04586718665e-07 2882 -128918.169139 +0.00332225913621 0.25 8.99250849748e-07 2865 -129903.062013 +0.00332225913621 0.28 8.94542730116e-07 2850 -131375.112632 +0.00332225913621 0.31 8.91403983694e-07 2840 -133313.425327 +0.00332225913621 0.34 8.88892986557e-07 2832 -135710.493796 +0.00332225913621 0.37 8.86695864062e-07 2825 -138567.043602 +0.00332225913621 0.4 8.85440365494e-07 2821 -141891.288007 +0.00332225913621 0.43 8.83870992283e-07 2816 -145699.071193 +0.00332225913621 0.46 8.82301619072e-07 2811 -150013.141511 +0.00332225913621 0.49 8.8198774443e-07 2810 -154863.565259 +0.00332225913621 0.52 8.81359995146e-07 2808 -160289.545146 +0.00332225913621 0.55 8.79790621935e-07 2803 -166338.512263 +0.00332225913621 0.58 8.79162872651e-07 2801 -173070.739225 +0.00332225913621 0.61 8.78535123366e-07 2799 -180560.688067 +0.00332225913621 0.64 8.7759349944e-07 2796 -188900.69513 +0.00332225913621 0.67 8.77279624798e-07 2795 -198208.029983 +0.00332225913621 0.7 8.76651875514e-07 2793 -208632.589387 +0.00332225913621 0.73 8.76338000871e-07 2792 -220368.690851 +0.00332225913621 0.76 8.76338000871e-07 2792 -233675.733324 +0.00332225913621 0.79 8.76338000871e-07 2792 -248909.912954 +0.00332225913621 0.82 8.76338000871e-07 2792 -266578.757709 +0.00332225913621 0.85 8.76338000871e-07 2792 -287443.316909 +0.00332225913621 0.88 8.76338000871e-07 2792 -312726.660768 +0.0032154340836 0.01 2.3079202437e-06 7353 -146943.896413 +0.0032154340836 0.04 1.15348930989e-06 3675 -139723.460219 +0.0032154340836 0.07 9.98749111308e-07 3182 -134295.826837 +0.0032154340836 0.1 9.53237288197e-07 3037 -131203.998448 +0.0032154340836 0.13 9.28441191468e-07 2958 -129441.468119 +0.0032154340836 0.16 9.1714170435e-07 2922 -128587.27635 +0.0032154340836 0.19 9.08667089012e-07 2895 -128439.092866 +0.0032154340836 0.22 9.02075721527e-07 2874 -128881.915098 +0.0032154340836 0.25 8.96739852611e-07 2857 -129849.76856 +0.0032154340836 0.28 8.92659482263e-07 2844 -131302.928751 +0.0032154340836 0.31 8.89206861199e-07 2833 -133219.394623 +0.0032154340836 0.34 8.87009738704e-07 2826 -135591.810933 +0.0032154340836 0.37 8.85440365494e-07 2821 -138420.590878 +0.0032154340836 0.4 8.83243242999e-07 2814 -141714.05956 +0.0032154340836 0.43 8.8198774443e-07 2810 -145487.275564 +0.0032154340836 0.46 8.8198774443e-07 2810 -149762.614981 +0.0032154340836 0.49 8.80104496577e-07 2804 -154569.995142 +0.0032154340836 0.52 8.79162872651e-07 2801 -159946.748897 +0.0032154340836 0.55 8.79162872651e-07 2801 -165941.1116 +0.0032154340836 0.58 8.77907374082e-07 2797 -172611.660795 +0.0032154340836 0.61 8.7759349944e-07 2796 -180031.73197 +0.0032154340836 0.64 8.76965750156e-07 2794 -188292.764048 +0.0032154340836 0.67 8.76651875514e-07 2793 -197509.588669 +0.0032154340836 0.7 8.76338000871e-07 2792 -207829.269193 +0.0032154340836 0.73 8.76338000871e-07 2792 -219443.425948 +0.0032154340836 0.76 8.76338000871e-07 2792 -232606.593507 +0.0032154340836 0.79 8.76338000871e-07 2792 -247667.718894 +0.0032154340836 0.82 8.76338000871e-07 2792 -265124.188515 +0.0032154340836 0.85 8.76338000871e-07 2792 -285720.753326 +0.0032154340836 0.88 8.76338000871e-07 2792 -310651.970836 +0.00311526479751 0.01 2.299759503e-06 7327 -146958.833789 +0.00311526479751 0.04 1.14752569169e-06 3656 -139758.445526 +0.00311526479751 0.07 9.92157743823e-07 3161 -134320.11665 +0.00311526479751 0.1 9.47901419281e-07 3020 -131218.672861 +0.00311526479751 0.13 9.24046946478e-07 2944 -129446.334236 +0.00311526479751 0.16 9.14316832571e-07 2913 -128582.730881 +0.00311526479751 0.19 9.04900593307e-07 2883 -128422.174049 +0.00311526479751 0.22 8.98623100464e-07 2863 -128849.566524 +0.00311526479751 0.25 8.93914980832e-07 2848 -129800.056613 +0.00311526479751 0.28 8.89520735842e-07 2834 -131234.213795 +0.00311526479751 0.31 8.87637487989e-07 2828 -133129.975661 +0.00311526479751 0.34 8.85440365494e-07 2821 -135477.92291 +0.00311526479751 0.37 8.83557117641e-07 2815 -138279.418957 +0.00311526479751 0.4 8.8198774443e-07 2810 -141542.13994 +0.00311526479751 0.43 8.81673869788e-07 2809 -145281.275969 +0.00311526479751 0.46 8.79790621935e-07 2803 -149518.456504 +0.00311526479751 0.49 8.79162872651e-07 2801 -154282.576231 +0.00311526479751 0.52 8.78221248724e-07 2798 -159611.295979 +0.00311526479751 0.55 8.7759349944e-07 2796 -165551.27767 +0.00311526479751 0.58 8.77279624798e-07 2795 -172160.929064 +0.00311526479751 0.61 8.76965750156e-07 2794 -179512.120254 +0.00311526479751 0.64 8.76338000871e-07 2792 -187694.790616 +0.00311526479751 0.67 8.76338000871e-07 2792 -196822.140315 +0.00311526479751 0.7 8.76338000871e-07 2792 -207038.701064 +0.00311526479751 0.73 8.76338000871e-07 2792 -218532.376443 +0.00311526479751 0.76 8.76338000871e-07 2792 -231553.26517 +0.00311526479751 0.79 8.76338000871e-07 2792 -246443.752472 +0.00311526479751 0.82 8.76338000871e-07 2792 -263690.82096 +0.00311526479751 0.85 8.76338000871e-07 2792 -284023.185721 +0.00311526479751 0.88 8.76338000871e-07 2792 -308607.743632 +0.00302114803625 0.01 2.29285426088e-06 7305 -146975.528387 +0.00302114803625 0.04 1.14281757205e-06 3641 -139795.186949 +0.00302114803625 0.07 9.86194125622e-07 3142 -134346.014379 +0.00302114803625 0.1 9.41623926438e-07 3000 -131235.85944 +0.00302114803625 0.13 9.20594325414e-07 2933 -129453.911764 +0.00302114803625 0.16 9.10864211507e-07 2902 -128580.590337 +0.00302114803625 0.19 9.02389596169e-07 2875 -128408.332867 +0.00302114803625 0.22 8.96425977969e-07 2856 -128821.061999 +0.00302114803625 0.25 8.91403983694e-07 2840 -129754.263027 +0.00302114803625 0.28 8.88265237273e-07 2830 -131169.341054 +0.00302114803625 0.31 8.85126490851e-07 2820 -133044.280709 +0.00302114803625 0.34 8.84184866925e-07 2817 -135368.482289 +0.00302114803625 0.37 8.82301619072e-07 2811 -138142.918016 +0.00302114803625 0.4 8.81673869788e-07 2809 -141375.532359 +0.00302114803625 0.43 8.79790621935e-07 2803 -145080.739317 +0.00302114803625 0.46 8.78848998009e-07 2800 -149279.651957 +0.00302114803625 0.49 8.78221248724e-07 2798 -154001.285375 +0.00302114803625 0.52 8.7759349944e-07 2796 -159282.405551 +0.00302114803625 0.55 8.77279624798e-07 2795 -165168.990432 +0.00302114803625 0.58 8.76651875514e-07 2793 -171718.287037 +0.00302114803625 0.61 8.76338000871e-07 2792 -179001.373912 +0.00302114803625 0.64 8.76338000871e-07 2792 -187106.585972 +0.00302114803625 0.67 8.76338000871e-07 2792 -196145.493521 +0.00302114803625 0.7 8.76338000871e-07 2792 -206260.163142 +0.00302114803625 0.73 8.76338000871e-07 2792 -217635.009152 +0.00302114803625 0.76 8.76338000871e-07 2792 -230515.411061 +0.00302114803625 0.79 8.76338000871e-07 2792 -245237.282204 +0.00302114803625 0.82 8.76338000871e-07 2792 -262277.938479 +0.00302114803625 0.85 8.76338000871e-07 2792 -282350.072651 +0.00302114803625 0.88 8.76338000871e-07 2792 -306593.367538 +0.00293255131965 0.01 2.28720451732e-06 7287 -146993.685307 +0.00293255131965 0.04 1.14062044956e-06 3634 -139833.436709 +0.00293255131965 0.07 9.82427629917e-07 3130 -134374.350326 +0.00293255131965 0.1 9.39740678585e-07 2994 -131255.665326 +0.00293255131965 0.13 9.18083328277e-07 2925 -129464.519348 +0.00293255131965 0.16 9.08039339728e-07 2893 -128581.650395 +0.00293255131965 0.19 8.9956472439e-07 2866 -128397.225063 +0.00293255131965 0.22 8.93601106189e-07 2847 -128795.529783 +0.00293255131965 0.25 8.89520735842e-07 2834 -129712.063997 +0.00293255131965 0.28 8.8638198942e-07 2824 -131108.229679 +0.00293255131965 0.31 8.84184866925e-07 2817 -132961.866184 +0.00293255131965 0.34 8.82929368356e-07 2813 -135263.26911 +0.00293255131965 0.37 8.8198774443e-07 2810 -138010.971496 +0.00293255131965 0.4 8.79476747293e-07 2802 -141213.606661 +0.00293255131965 0.43 8.78848998009e-07 2800 -144884.845889 +0.00293255131965 0.46 8.78221248724e-07 2798 -149046.235397 +0.00293255131965 0.49 8.7759349944e-07 2796 -153725.873916 +0.00293255131965 0.52 8.77279624798e-07 2795 -158959.874205 +0.00293255131965 0.55 8.76651875514e-07 2793 -164793.697742 +0.00293255131965 0.58 8.76338000871e-07 2792 -171283.4172 +0.00293255131965 0.61 8.76338000871e-07 2792 -178499.073714 +0.00293255131965 0.64 8.76338000871e-07 2792 -186527.973367 +0.00293255131965 0.67 8.76338000871e-07 2792 -195479.413498 +0.00293255131965 0.7 8.76338000871e-07 2792 -205493.194339 +0.00293255131965 0.73 8.76338000871e-07 2792 -216750.644356 +0.00293255131965 0.76 8.76338000871e-07 2792 -229492.464362 +0.00293255131965 0.79 8.76338000871e-07 2792 -244048.028173 +0.00293255131965 0.82 8.76338000871e-07 2792 -260884.958667 +0.00293255131965 0.85 8.76338000871e-07 2792 -280700.733404 +0.00293255131965 0.88 8.76338000871e-07 2792 -304608.249833 +0.002849002849 0.01 2.28218252304e-06 7271 -147013.253489 +0.002849002849 0.04 1.13559845528e-06 3618 -139873.012339 +0.002849002849 0.07 9.77719510285e-07 3115 -134405.091973 +0.002849002849 0.1 9.37857430732e-07 2988 -131278.503601 +0.002849002849 0.13 9.16200080424e-07 2919 -129477.361614 +0.002849002849 0.16 9.05214467949e-07 2884 -128584.909011 +0.002849002849 0.19 8.97995351179e-07 2861 -128388.288062 +0.002849002849 0.22 8.91403983694e-07 2840 -128772.993144 +0.002849002849 0.25 8.87951362631e-07 2829 -129673.026609 +0.002849002849 0.28 8.85126490851e-07 2820 -131050.397478 +0.002849002849 0.31 8.83243242999e-07 2814 -132883.345632 +0.002849002849 0.34 8.8198774443e-07 2810 -135161.371807 +0.002849002849 0.37 8.79790621935e-07 2803 -137883.326038 +0.002849002849 0.4 8.78848998009e-07 2800 -141055.744023 +0.002849002849 0.43 8.78221248724e-07 2798 -144693.79051 +0.002849002849 0.46 8.7759349944e-07 2796 -148817.90949 +0.002849002849 0.49 8.77279624798e-07 2795 -153456.022173 +0.002849002849 0.52 8.76651875514e-07 2793 -158643.52327 +0.002849002849 0.55 8.76338000871e-07 2792 -164424.918755 +0.002849002849 0.58 8.76338000871e-07 2792 -170855.935245 +0.002849002849 0.61 8.76338000871e-07 2792 -178005.18282 +0.002849002849 0.64 8.76338000871e-07 2792 -185958.395099 +0.002849002849 0.67 8.76338000871e-07 2792 -194823.470268 +0.002849002849 0.7 8.76338000871e-07 2792 -204737.539188 +0.002849002849 0.73 8.76338000871e-07 2792 -215878.863493 +0.002849002849 0.76 8.76338000871e-07 2792 -228483.870724 +0.002849002849 0.79 8.76338000871e-07 2792 -242875.425233 +0.002849002849 0.82 8.76338000871e-07 2792 -259511.584565 +0.002849002849 0.85 8.76338000871e-07 2792 -279074.664877 +0.002849002849 0.88 8.76338000871e-07 2792 -302651.726484 +0.00277008310249 0.01 2.27527728092e-06 7249 -147034.026691 +0.00277008310249 0.04 1.13183195958e-06 3606 -139913.883274 +0.00277008310249 0.07 9.75522387789e-07 3108 -134437.291135 +0.00277008310249 0.1 9.331493111e-07 2973 -131302.982018 +0.00277008310249 0.13 9.14002957929e-07 2912 -129492.727547 +0.00277008310249 0.16 9.03017345454e-07 2877 -128590.25122 +0.00277008310249 0.19 8.94228855474e-07 2849 -128381.885665 +0.00277008310249 0.22 8.89520735842e-07 2834 -128753.041184 +0.00277008310249 0.25 8.8638198942e-07 2824 -129637.124842 +0.00277008310249 0.28 8.84184866925e-07 2817 -130996.087058 +0.00277008310249 0.31 8.8198774443e-07 2810 -132808.127913 +0.00277008310249 0.34 8.81046120504e-07 2807 -135062.887608 +0.00277008310249 0.37 8.78848998009e-07 2800 -137758.879338 +0.00277008310249 0.4 8.78221248724e-07 2798 -140902.095976 +0.00277008310249 0.43 8.7759349944e-07 2796 -144507.146814 +0.00277008310249 0.46 8.77279624798e-07 2795 -148594.559223 +0.00277008310249 0.49 8.76651875514e-07 2793 -153191.401349 +0.00277008310249 0.52 8.76338000871e-07 2792 -158332.815005 +0.00277008310249 0.55 8.76338000871e-07 2792 -164062.705079 +0.00277008310249 0.58 8.76338000871e-07 2792 -170435.543673 +0.00277008310249 0.61 8.76338000871e-07 2792 -177519.131708 +0.00277008310249 0.64 8.76338000871e-07 2792 -185397.655619 +0.00277008310249 0.67 8.76338000871e-07 2792 -194177.171462 +0.00277008310249 0.7 8.76338000871e-07 2792 -203992.810063 +0.00277008310249 0.73 8.76338000871e-07 2792 -215019.435373 +0.00277008310249 0.76 8.76338000871e-07 2792 -227489.240853 +0.00277008310249 0.79 8.76338000871e-07 2792 -241718.992539 +0.00277008310249 0.82 8.76338000871e-07 2792 -258157.27184 +0.00277008310249 0.85 8.76338000871e-07 2792 -277471.524077 +0.00277008310249 0.88 8.76338000871e-07 2792 -300723.307411 +0.00269541778976 0.01 2.26837203879e-06 7227 -147055.823508 +0.00269541778976 0.04 1.13026258637e-06 3601 -139955.91341 +0.00269541778976 0.07 9.73639139937e-07 3102 -134471.075601 +0.00269541778976 0.1 9.29068940752e-07 2960 -131328.528321 +0.00269541778976 0.13 9.1117808615e-07 2903 -129510.4152 +0.00269541778976 0.16 9.00506348317e-07 2869 -128597.799262 +0.00269541778976 0.19 8.92659482263e-07 2844 -128377.46531 +0.00269541778976 0.22 8.88265237273e-07 2830 -128735.225221 +0.00269541778976 0.25 8.85126490851e-07 2820 -129603.850825 +0.00269541778976 0.28 8.82615493714e-07 2812 -130944.763866 +0.00269541778976 0.31 8.81359995146e-07 2808 -132736.095451 +0.00269541778976 0.34 8.79476747293e-07 2802 -134967.654277 +0.00269541778976 0.37 8.78535123366e-07 2799 -137637.605056 +0.00269541778976 0.4 8.7759349944e-07 2796 -140752.350967 +0.00269541778976 0.43 8.77279624798e-07 2795 -144324.789103 +0.00269541778976 0.46 8.76651875514e-07 2793 -148375.68646 +0.00269541778976 0.49 8.76338000871e-07 2792 -152931.839851 +0.00269541778976 0.52 8.76338000871e-07 2792 -158027.717077 +0.00269541778976 0.55 8.76338000871e-07 2792 -163706.573501 +0.00269541778976 0.58 8.76338000871e-07 2792 -170022.002102 +0.00269541778976 0.61 8.76338000871e-07 2792 -177040.555187 +0.00269541778976 0.64 8.76338000871e-07 2792 -184845.269819 +0.00269541778976 0.67 8.76338000871e-07 2792 -193540.337243 +0.00269541778976 0.7 8.76338000871e-07 2792 -203258.56466 +0.00269541778976 0.73 8.76338000871e-07 2792 -214172.004205 +0.00269541778976 0.76 8.76338000871e-07 2792 -226508.354962 +0.00269541778976 0.79 8.76338000871e-07 2792 -240578.367567 +0.00269541778976 0.82 8.76338000871e-07 2792 -256821.572343 +0.00269541778976 0.85 8.76338000871e-07 2792 -275890.777807 +0.00269541778976 0.88 8.76338000871e-07 2792 -298822.580066 +0.00262467191601 0.01 2.26146679666e-06 7205 -147078.461406 +0.00262467191601 0.04 1.12555446674e-06 3586 -139999.212202 +0.00262467191601 0.07 9.70814268157e-07 3093 -134506.064173 +0.00262467191601 0.1 9.26244068973e-07 2951 -131355.547225 +0.00262467191601 0.13 9.09608712939e-07 2898 -129529.997057 +0.00262467191601 0.16 8.97681476537e-07 2860 -128607.007079 +0.00262467191601 0.19 8.91090109052e-07 2839 -128375.026827 +0.00262467191601 0.22 8.87009738704e-07 2826 -128719.456731 +0.00262467191601 0.25 8.83870992283e-07 2816 -129573.175846 +0.00262467191601 0.28 8.81673869788e-07 2809 -130896.082341 +0.00262467191601 0.31 8.79790621935e-07 2803 -132667.209901 +0.00262467191601 0.34 8.78848998009e-07 2800 -134875.371011 +0.00262467191601 0.37 8.77907374082e-07 2797 -137519.689976 +0.00262467191601 0.4 8.77279624798e-07 2795 -140605.945097 +0.00262467191601 0.43 8.76651875514e-07 2793 -144146.482815 +0.00262467191601 0.46 8.76338000871e-07 2792 -148161.259529 +0.00262467191601 0.49 8.76338000871e-07 2792 -152677.140203 +0.00262467191601 0.52 8.76338000871e-07 2792 -157728.018983 +0.00262467191601 0.55 8.76338000871e-07 2792 -163356.330471 +0.00262467191601 0.58 8.76338000871e-07 2792 -169614.903173 +0.00262467191601 0.61 8.76338000871e-07 2792 -176569.201188 +0.00262467191601 0.64 8.76338000871e-07 2792 -184300.899527 +0.00262467191601 0.67 8.76338000871e-07 2792 -192912.548317 +0.00262467191601 0.7 8.76338000871e-07 2792 -202534.633964 +0.00262467191601 0.73 8.76338000871e-07 2792 -213336.16488 +0.00262467191601 0.76 8.76338000871e-07 2792 -225540.876997 +0.00262467191601 0.79 8.76338000871e-07 2792 -239453.322105 +0.00262467191601 0.82 8.76338000871e-07 2792 -255504.139723 +0.00262467191601 0.85 8.76338000871e-07 2792 -274331.986361 +0.00262467191601 0.88 8.76338000871e-07 2792 -296948.9919 +0.00255754475703 0.01 2.25456155453e-06 7183 -147101.778922 +0.00255754475703 0.04 1.1230434696e-06 3578 -140043.269336 +0.00255754475703 0.07 9.66420023167e-07 3079 -134542.209058 +0.00255754475703 0.1 9.21849823983e-07 2937 -131384.375454 +0.00255754475703 0.13 9.07097715802e-07 2890 -129551.3471 +0.00255754475703 0.16 8.97053727253e-07 2858 -128617.894753 +0.00255754475703 0.19 8.89206861199e-07 2833 -128374.61431 +0.00255754475703 0.22 8.84812616209e-07 2819 -128705.909589 +0.00255754475703 0.25 8.82929368356e-07 2813 -129544.547284 +0.00255754475703 0.28 8.81046120504e-07 2807 -130850.100365 +0.00255754475703 0.31 8.78848998009e-07 2800 -132600.79155 +0.00255754475703 0.34 8.78221248724e-07 2798 -134786.210934 +0.00255754475703 0.37 8.77279624798e-07 2795 -137405.001072 +0.00255754475703 0.4 8.76651875514e-07 2793 -140462.689247 +0.00255754475703 0.43 8.76338000871e-07 2792 -143971.8305 +0.00255754475703 0.46 8.76338000871e-07 2792 -147951.062152 +0.00255754475703 0.49 8.76338000871e-07 2792 -152427.162556 +0.00255754475703 0.52 8.76338000871e-07 2792 -157433.486207 +0.00255754475703 0.55 8.76338000871e-07 2792 -163011.727365 +0.00255754475703 0.58 8.76338000871e-07 2792 -169214.026411 +0.00255754475703 0.61 8.76338000871e-07 2792 -176104.780632 +0.00255754475703 0.64 8.76338000871e-07 2792 -183764.287857 +0.00255754475703 0.67 8.76338000871e-07 2792 -192293.496916 +0.00255754475703 0.7 8.76338000871e-07 2792 -201820.64819 +0.00255754475703 0.73 8.76338000871e-07 2792 -212511.750242 +0.00255754475703 0.76 8.76338000871e-07 2792 -224586.428488 +0.00255754475703 0.79 8.76338000871e-07 2792 -238343.529046 +0.00255754475703 0.82 8.76338000871e-07 2792 -254204.718336 +0.00255754475703 0.85 8.76338000871e-07 2792 -272794.79172 +0.00255754475703 0.88 8.76338000871e-07 2792 -295102.076623 +0.00249376558603 0.01 2.24891181098e-06 7165 -147125.618471 +0.00249376558603 0.04 1.11739372604e-06 3560 -140087.942678 +0.00249376558603 0.07 9.60770279609e-07 3061 -134579.491422 +0.00249376558603 0.1 9.19338826845e-07 2929 -131414.488086 +0.00249376558603 0.13 9.05214467949e-07 2884 -129573.77054 +0.00249376558603 0.16 8.93287231547e-07 2846 -128630.700287 +0.00249376558603 0.19 8.88265237273e-07 2830 -128376.000051 +0.00249376558603 0.22 8.84184866925e-07 2817 -128694.132812 +0.00249376558603 0.25 8.81673869788e-07 2809 -129517.567928 +0.00249376558603 0.28 8.79790621935e-07 2803 -130806.445984 +0.00249376558603 0.31 8.78848998009e-07 2800 -132537.022564 +0.00249376558603 0.34 8.7759349944e-07 2796 -134699.913037 +0.00249376558603 0.37 8.76965750156e-07 2794 -137293.283289 +0.00249376558603 0.4 8.76338000871e-07 2792 -140322.752613 +0.00249376558603 0.43 8.76338000871e-07 2792 -143800.49234 +0.00249376558603 0.46 8.76338000871e-07 2792 -147744.981772 +0.00249376558603 0.49 8.76338000871e-07 2792 -152181.630655 +0.00249376558603 0.52 8.76338000871e-07 2792 -157143.775639 +0.00249376558603 0.55 8.76338000871e-07 2792 -162672.594251 +0.00249376558603 0.58 8.76338000871e-07 2792 -168819.143789 +0.00249376558603 0.61 8.76338000871e-07 2792 -175647.048242 +0.00249376558603 0.64 8.76338000871e-07 2792 -183235.241755 +0.00249376558603 0.67 8.76338000871e-07 2792 -191682.913718 +0.00249376558603 0.7 8.76338000871e-07 2792 -201116.313685 +0.00249376558603 0.73 8.76338000871e-07 2792 -211698.431255 +0.00249376558603 0.76 8.76338000871e-07 2792 -223644.834926 +0.00249376558603 0.79 8.76338000871e-07 2792 -237248.625794 +0.00249376558603 0.82 8.76338000871e-07 2792 -252922.97848 +0.00249376558603 0.85 8.76338000871e-07 2792 -271278.895428 +0.00249376558603 0.88 8.76338000871e-07 2792 -293281.435978 +0.00243309002433 0.01 2.24577306455e-06 7155 -147150.401354 +0.00243309002433 0.04 1.11519660354e-06 3553 -140133.71442 +0.00243309002433 0.07 9.58259282471e-07 3053 -134617.104337 +0.00243309002433 0.1 9.1714170435e-07 2922 -131445.49881 +0.00243309002433 0.13 9.02703470812e-07 2876 -129597.025182 +0.00243309002433 0.16 8.92659482263e-07 2844 -128644.817969 +0.00243309002433 0.19 8.87009738704e-07 2826 -128378.932512 +0.00243309002433 0.22 8.83243242999e-07 2814 -128684.10983 +0.00243309002433 0.25 8.81673869788e-07 2809 -129492.757247 +0.00243309002433 0.28 8.78848998009e-07 2800 -130764.59749 +0.00243309002433 0.31 8.77907374082e-07 2797 -132475.670354 +0.00243309002433 0.34 8.77279624798e-07 2795 -134616.219023 +0.00243309002433 0.37 8.76651875514e-07 2793 -137184.51461 +0.00243309002433 0.4 8.76338000871e-07 2792 -140185.980281 +0.00243309002433 0.43 8.76338000871e-07 2792 -143632.513262 +0.00243309002433 0.46 8.76338000871e-07 2792 -147542.538756 +0.00243309002433 0.49 8.76338000871e-07 2792 -151940.389884 +0.00243309002433 0.52 8.76338000871e-07 2792 -156858.829526 +0.00243309002433 0.55 8.76338000871e-07 2792 -162338.582761 +0.00243309002433 0.58 8.76338000871e-07 2792 -168430.10258 +0.00243309002433 0.61 8.76338000871e-07 2792 -175195.782472 +0.00243309002433 0.64 8.76338000871e-07 2792 -182713.463366 +0.00243309002433 0.67 8.76338000871e-07 2792 -191080.678996 +0.00243309002433 0.7 8.76338000871e-07 2792 -200421.379559 +0.00243309002433 0.73 8.76338000871e-07 2792 -210895.917388 +0.00243309002433 0.76 8.76338000871e-07 2792 -222715.792145 +0.00243309002433 0.79 8.76338000871e-07 2792 -236168.419383 +0.00243309002433 0.82 8.76338000871e-07 2792 -251658.558102 +0.00243309002433 0.85 8.76338000871e-07 2792 -269783.946946 +0.00243309002433 0.88 8.76338000871e-07 2792 -291486.706659 +0.00237529691211 0.01 2.24075107028e-06 7139 -147175.838241 +0.00237529691211 0.04 1.11237173177e-06 3544 -140180.173691 +0.00237529691211 0.07 9.56689909261e-07 3048 -134655.946391 +0.00237529691211 0.1 9.14630707213e-07 2914 -131477.280741 +0.00237529691211 0.13 9.00820222959e-07 2870 -129621.51858 +0.00237529691211 0.16 8.9077623441e-07 2838 -128660.587479 +0.00237529691211 0.19 8.85440365494e-07 2821 -128383.179432 +0.00237529691211 0.22 8.82615493714e-07 2812 -128675.750197 +0.00237529691211 0.25 8.80732245861e-07 2806 -129469.939158 +0.00237529691211 0.28 8.78848998009e-07 2800 -130724.431398 +0.00237529691211 0.31 8.7759349944e-07 2796 -132416.524184 +0.00237529691211 0.34 8.76651875514e-07 2793 -134535.065895 +0.00237529691211 0.37 8.76338000871e-07 2792 -137078.53746 +0.00237529691211 0.4 8.76338000871e-07 2792 -140052.244147 +0.00237529691211 0.43 8.76338000871e-07 2792 -143468.008208 +0.00237529691211 0.46 8.76338000871e-07 2792 -147343.460921 +0.00237529691211 0.49 8.76338000871e-07 2792 -151703.148529 +0.00237529691211 0.52 8.76338000871e-07 2792 -156578.363378 +0.00237529691211 0.55 8.76338000871e-07 2792 -162009.663429 +0.00237529691211 0.58 8.76338000871e-07 2792 -168046.656307 +0.00237529691211 0.61 8.76338000871e-07 2792 -174750.84111 +0.00237529691211 0.64 8.76338000871e-07 2792 -182198.778175 +0.00237529691211 0.67 8.76338000871e-07 2792 -190486.452511 +0.00237529691211 0.7 8.76338000871e-07 2792 -199735.736016 +0.00237529691211 0.73 8.76338000871e-07 2792 -210103.978518 +0.00237529691211 0.76 8.76338000871e-07 2792 -221799.015833 +0.00237529691211 0.79 8.76338000871e-07 2792 -235102.6197 +0.00237529691211 0.82 8.76338000871e-07 2792 -250411.237382 +0.00237529691211 0.85 8.76338000871e-07 2792 -268309.567556 +0.00237529691211 0.88 8.76338000871e-07 2792 -289717.489069 +0.00232018561485 0.01 2.23541520136e-06 7122 -147201.919993 +0.00232018561485 0.04 1.11017460927e-06 3537 -140227.143287 +0.00232018561485 0.07 9.52295664271e-07 3034 -134695.530603 +0.00232018561485 0.1 9.14316832571e-07 2913 -131509.854122 +0.00232018561485 0.13 8.98936975106e-07 2864 -129647.422346 +0.00232018561485 0.16 8.89834610484e-07 2835 -128677.393489 +0.00232018561485 0.19 8.84812616209e-07 2819 -128389.071352 +0.00232018561485 0.22 8.81673869788e-07 2809 -128668.972073 +0.00232018561485 0.25 8.79476747293e-07 2802 -129448.347983 +0.00232018561485 0.28 8.78221248724e-07 2798 -130686.074789 +0.00232018561485 0.31 8.77279624798e-07 2795 -132359.331116 +0.00232018561485 0.34 8.76338000871e-07 2792 -134456.180447 +0.00232018561485 0.37 8.76338000871e-07 2792 -136975.175113 +0.00232018561485 0.4 8.76338000871e-07 2792 -139921.515887 +0.00232018561485 0.43 8.76338000871e-07 2792 -143306.61441 +0.00232018561485 0.46 8.76338000871e-07 2792 -147147.888932 +0.00232018561485 0.49 8.76338000871e-07 2792 -151469.520314 +0.00232018561485 0.52 8.76338000871e-07 2792 -156302.272219 +0.00232018561485 0.55 8.76338000871e-07 2792 -161685.55821 +0.00232018561485 0.58 8.76338000871e-07 2792 -167668.636581 +0.00232018561485 0.61 8.76338000871e-07 2792 -174312.061458 +0.00232018561485 0.64 8.76338000871e-07 2792 -181691.032068 +0.00232018561485 0.67 8.76338000871e-07 2792 -189900.10322 +0.00232018561485 0.7 8.76338000871e-07 2792 -199059.042383 +0.00232018561485 0.73 8.76338000871e-07 2792 -209322.474243 +0.00232018561485 0.76 8.76338000871e-07 2792 -220894.280816 +0.00232018561485 0.79 8.76338000871e-07 2792 -234050.937778 +0.00232018561485 0.82 8.76338000871e-07 2792 -249180.722782 +0.00232018561485 0.85 8.76338000871e-07 2792 -266855.495851 +0.00232018561485 0.88 8.76338000871e-07 2792 -287973.363852 +0.00226757369615 0.01 2.23039320709e-06 7106 -147228.353408 +0.00226757369615 0.04 1.1089191107e-06 3533 -140274.748414 +0.00226757369615 0.07 9.51040165702e-07 3030 -134735.775621 +0.00226757369615 0.1 9.13061334002e-07 2909 -131543.414317 +0.00226757369615 0.13 8.97367601895e-07 2859 -129674.379354 +0.00226757369615 0.16 8.88265237273e-07 2830 -128695.053907 +0.00226757369615 0.19 8.83870992283e-07 2816 -128396.265326 +0.00226757369615 0.22 8.81359995146e-07 2808 -128663.654115 +0.00226757369615 0.25 8.78848998009e-07 2800 -129428.339355 +0.00226757369615 0.28 8.7759349944e-07 2796 -130649.533785 +0.00226757369615 0.31 8.76651875514e-07 2793 -132303.911687 +0.00226757369615 0.34 8.76338000871e-07 2792 -134379.526768 +0.00226757369615 0.37 8.76338000871e-07 2792 -136874.381016 +0.00226757369615 0.4 8.76338000871e-07 2792 -139793.628669 +0.00226757369615 0.43 8.76338000871e-07 2792 -143148.267528 +0.00226757369615 0.46 8.76338000871e-07 2792 -146955.742723 +0.00226757369615 0.49 8.76338000871e-07 2792 -151239.444439 +0.00226757369615 0.52 8.76338000871e-07 2792 -156030.212202 +0.00226757369615 0.55 8.76338000871e-07 2792 -161366.195002 +0.00226757369615 0.58 8.76338000871e-07 2792 -167295.93926 +0.00226757369615 0.61 8.76338000871e-07 2792 -173879.185901 +0.00226757369615 0.64 8.76338000871e-07 2792 -181190.110585 +0.00226757369615 0.67 8.76338000871e-07 2792 -189321.468683 +0.00226757369615 0.7 8.76338000871e-07 2792 -198391.189288 +0.00226757369615 0.73 8.76338000871e-07 2792 -208551.11452 +0.00226757369615 0.76 8.76338000871e-07 2792 -220001.412069 +0.00226757369615 0.79 8.76338000871e-07 2792 -233013.144953 +0.00226757369615 0.82 8.76338000871e-07 2792 -247966.712056 +0.00226757369615 0.85 8.76338000871e-07 2792 -265421.41593 +0.00226757369615 0.88 8.76338000871e-07 2792 -286254.005469 +0.00221729490022 0.01 2.22694058603e-06 7095 -147255.330452 +0.00221729490022 0.04 1.10703586285e-06 3527 -140322.8558 +0.00221729490022 0.07 9.47273669996e-07 3018 -134776.695233 +0.00221729490022 0.1 9.1117808615e-07 2903 -131578.010071 +0.00221729490022 0.13 8.96425977969e-07 2856 -129702.198617 +0.00221729490022 0.16 8.87323613346e-07 2827 -128713.623734 +0.00221729490022 0.19 8.82929368356e-07 2813 -128404.820697 +0.00221729490022 0.22 8.80418371219e-07 2805 -128659.552266 +0.00221729490022 0.25 8.78221248724e-07 2798 -129409.877247 +0.00221729490022 0.28 8.77279624798e-07 2795 -130614.576892 +0.00221729490022 0.31 8.76338000871e-07 2792 -132250.029694 +0.00221729490022 0.34 8.76338000871e-07 2792 -134304.875352 +0.00221729490022 0.37 8.76338000871e-07 2792 -136775.948618 +0.00221729490022 0.4 8.76338000871e-07 2792 -139668.316433 +0.00221729490022 0.43 8.76338000871e-07 2792 -142992.90707 +0.00221729490022 0.46 8.76338000871e-07 2792 -146766.745495 +0.00221729490022 0.49 8.76338000871e-07 2792 -151013.043345 +0.00221729490022 0.52 8.76338000871e-07 2792 -155761.953098 +0.00221729490022 0.55 8.76338000871e-07 2792 -161051.344941 +0.00221729490022 0.58 8.76338000871e-07 2792 -166928.37411 +0.00221729490022 0.61 8.76338000871e-07 2792 -173452.209813 +0.00221729490022 0.64 8.76338000871e-07 2792 -180695.754012 +0.00221729490022 0.67 8.76338000871e-07 2792 -188750.429604 +0.00221729490022 0.7 8.76338000871e-07 2792 -197731.995156 +0.00221729490022 0.73 8.76338000871e-07 2792 -207789.764847 +0.00221729490022 0.76 8.76338000871e-07 2792 -219120.164773 +0.00221729490022 0.79 8.76338000871e-07 2792 -231989.031777 +0.00221729490022 0.82 8.76338000871e-07 2792 -246768.960651 +0.00221729490022 0.85 8.76338000871e-07 2792 -264007.00014 +0.00221729490022 0.88 8.76338000871e-07 2792 -284559.052071 +0.00216919739696 0.01 2.2238018396e-06 7085 -147282.800089 +0.00216919739696 0.04 1.10609423892e-06 3524 -140371.652954 +0.00216919739696 0.07 9.44134923575e-07 3008 -134818.10161 +0.00216919739696 0.1 9.09294838297e-07 2897 -131613.215196 +0.00216919739696 0.13 8.92973356905e-07 2845 -129730.446726 +0.00216919739696 0.16 8.8638198942e-07 2824 -128733.163296 +0.00216919739696 0.19 8.8198774443e-07 2810 -128414.46293 +0.00216919739696 0.22 8.79476747293e-07 2802 -128656.736223 +0.00216919739696 0.25 8.7759349944e-07 2796 -129392.742209 +0.00216919739696 0.28 8.76965750156e-07 2794 -130581.079386 +0.00216919739696 0.31 8.76338000871e-07 2792 -132198.009217 +0.00216919739696 0.34 8.76338000871e-07 2792 -134232.13401 +0.00216919739696 0.37 8.76338000871e-07 2792 -136679.768648 +0.00216919739696 0.4 8.76338000871e-07 2792 -139545.548074 +0.00216919739696 0.43 8.76338000871e-07 2792 -142840.399688 +0.00216919739696 0.46 8.76338000871e-07 2792 -146580.910711 +0.00216919739696 0.49 8.76338000871e-07 2792 -150790.137445 +0.00216919739696 0.52 8.76338000871e-07 2792 -155497.540233 +0.00216919739696 0.55 8.76338000871e-07 2792 -160740.718536 +0.00216919739696 0.58 8.76338000871e-07 2792 -166565.850819 +0.00216919739696 0.61 8.76338000871e-07 2792 -173030.885615 +0.00216919739696 0.64 8.76338000871e-07 2792 -180207.915501 +0.00216919739696 0.67 8.76338000871e-07 2792 -188186.792101 +0.00216919739696 0.7 8.76338000871e-07 2792 -197081.334657 +0.00216919739696 0.73 8.76338000871e-07 2792 -207038.233596 +0.00216919739696 0.76 8.76338000871e-07 2792 -218250.360184 +0.00216919739696 0.79 8.76338000871e-07 2792 -230978.381752 +0.00216919739696 0.82 8.76338000871e-07 2792 -245587.22239 +0.00216919739696 0.85 8.76338000871e-07 2792 -262611.968725 +0.00216919739696 0.88 8.76338000871e-07 2792 -282888.12568 +0.00212314225053 0.01 2.21815209605e-06 7067 -147310.491407 +0.00212314225053 0.04 1.10578036428e-06 3523 -140421.199684 +0.00212314225053 0.07 9.39112929301e-07 2992 -134859.755188 +0.00212314225053 0.1 9.08667089012e-07 2895 -131648.963486 +0.00212314225053 0.13 8.92659482263e-07 2844 -129759.199194 +0.00212314225053 0.16 8.84812616209e-07 2819 -128753.811288 +0.00212314225053 0.19 8.81673869788e-07 2809 -128424.825883 +0.00212314225053 0.22 8.78848998009e-07 2800 -128654.998244 +0.00212314225053 0.25 8.77279624798e-07 2795 -129376.78548 +0.00212314225053 0.28 8.76338000871e-07 2792 -130548.990094 +0.00212314225053 0.31 8.76338000871e-07 2792 -132147.747544 +0.00212314225053 0.34 8.76338000871e-07 2792 -134160.975578 +0.00212314225053 0.37 8.76338000871e-07 2792 -136585.596196 +0.00212314225053 0.4 8.76338000871e-07 2792 -139425.148855 +0.00212314225053 0.43 8.76338000871e-07 2792 -142690.510937 +0.00212314225053 0.46 8.76338000871e-07 2792 -146398.126357 +0.00212314225053 0.49 8.76338000871e-07 2792 -150570.550917 +0.00212314225053 0.52 8.76338000871e-07 2792 -155237.022781 +0.00212314225053 0.55 8.76338000871e-07 2792 -160434.219052 +0.00212314225053 0.58 8.76338000871e-07 2792 -166208.108128 +0.00212314225053 0.61 8.76338000871e-07 2792 -172615.172935 +0.00212314225053 0.64 8.76338000871e-07 2792 -179726.430529 +0.00212314225053 0.67 8.76338000871e-07 2792 -187630.394206 +0.00212314225053 0.7 8.76338000871e-07 2792 -196439.054159 +0.00212314225053 0.73 8.76338000871e-07 2792 -206296.37535 +0.00212314225053 0.76 8.76338000871e-07 2792 -217391.805418 +0.00212314225053 0.79 8.76338000871e-07 2792 -229980.960327 +0.00212314225053 0.82 8.76338000871e-07 2792 -244421.280144 +0.00212314225053 0.85 8.76338000871e-07 2792 -261236.031786 +0.00212314225053 0.88 8.76338000871e-07 2792 -281240.889701 +0.002079002079 0.01 2.21281622713e-06 7050 -147338.467751 +0.002079002079 0.04 1.10421099107e-06 3518 -140470.995334 +0.002079002079 0.07 9.3754355609e-07 2987 -134901.862787 +0.002079002079 0.1 9.07097715802e-07 2890 -131685.58954 +0.002079002079 0.13 8.91717858337e-07 2841 -129788.536889 +0.002079002079 0.16 8.84498741567e-07 2818 -128775.305125 +0.002079002079 0.19 8.81046120504e-07 2807 -128436.09363 +0.002079002079 0.22 8.78535123366e-07 2799 -128654.488499 +0.002079002079 0.25 8.77279624798e-07 2795 -129361.998619 +0.002079002079 0.28 8.76338000871e-07 2792 -130518.311679 +0.002079002079 0.31 8.76338000871e-07 2792 -132098.897212 +0.002079002079 0.34 8.76338000871e-07 2792 -134091.669514 +0.002079002079 0.37 8.76338000871e-07 2792 -136493.365967 +0.002079002079 0.4 8.76338000871e-07 2792 -139307.02939 +0.002079002079 0.43 8.76338000871e-07 2792 -142543.233491 +0.002079002079 0.46 8.76338000871e-07 2792 -146218.300325 +0.002079002079 0.49 8.76338000871e-07 2792 -150354.292706 +0.002079002079 0.52 8.76338000871e-07 2792 -154980.152215 +0.002079002079 0.55 8.76338000871e-07 2792 -160131.960048 +0.002079002079 0.58 8.76338000871e-07 2792 -165854.951009 +0.002079002079 0.61 8.76338000871e-07 2792 -172204.873103 +0.002079002079 0.64 8.76338000871e-07 2792 -179251.17042 +0.002079002079 0.67 8.76338000871e-07 2792 -187081.180967 +0.002079002079 0.7 8.76338000871e-07 2792 -195804.941353 +0.002079002079 0.73 8.76338000871e-07 2792 -205564.07283 +0.002079002079 0.76 8.76338000871e-07 2792 -216544.349537 +0.002079002079 0.79 8.76338000871e-07 2792 -228996.584283 +0.002079002079 0.82 8.76338000871e-07 2792 -243270.856136 +0.002079002079 0.85 8.76338000871e-07 2792 -259878.951767 +0.002079002079 0.88 8.76338000871e-07 2792 -279616.997715 +0.0020366598778 0.01 2.20653873429e-06 7030 -147366.657378 +0.0020366598778 0.04 1.10169999393e-06 3510 -140521.097313 +0.0020366598778 0.07 9.35974182879e-07 2982 -134944.811954 +0.0020366598778 0.1 9.05214467949e-07 2884 -131722.614467 +0.0020366598778 0.13 8.90462359768e-07 2837 -129818.472425 +0.0020366598778 0.16 8.83870992283e-07 2816 -128797.487364 +0.0020366598778 0.19 8.79790621935e-07 2803 -128448.146832 +0.0020366598778 0.22 8.77907374082e-07 2797 -128654.944284 +0.0020366598778 0.25 8.76651875514e-07 2793 -129348.545288 +0.0020366598778 0.28 8.76338000871e-07 2792 -130488.901182 +0.0020366598778 0.31 8.76338000871e-07 2792 -132051.563124 +0.0020366598778 0.34 8.76338000871e-07 2792 -134024.129151 +0.0020366598778 0.37 8.76338000871e-07 2792 -136402.746626 +0.0020366598778 0.4 8.76338000871e-07 2792 -139190.997296 +0.0020366598778 0.43 8.76338000871e-07 2792 -142398.413766 +0.0020366598778 0.46 8.76338000871e-07 2792 -146041.214592 +0.0020366598778 0.49 8.76338000871e-07 2792 -150141.270477 +0.0020366598778 0.52 8.76338000871e-07 2792 -154726.879642 +0.0020366598778 0.55 8.76338000871e-07 2792 -159833.839546 +0.0020366598778 0.58 8.76338000871e-07 2792 -165506.377582 +0.0020366598778 0.61 8.76338000871e-07 2792 -171799.756504 +0.0020366598778 0.64 8.76338000871e-07 2792 -178782.04091 +0.0020366598778 0.67 8.76338000871e-07 2792 -186538.956645 +0.0020366598778 0.7 8.76338000871e-07 2792 -195178.969611 +0.0020366598778 0.73 8.76338000871e-07 2792 -204841.103007 +0.0020366598778 0.76 8.76338000871e-07 2792 -215707.855683 +0.0020366598778 0.79 8.76338000871e-07 2792 -228025.077359 +0.0020366598778 0.82 8.76338000871e-07 2792 -242135.760789 +0.0020366598778 0.85 8.76338000871e-07 2792 -258540.401976 +0.0020366598778 0.88 8.76338000871e-07 2792 -278016.151974 +0.00199600798403 0.01 2.20308611322e-06 7019 -147394.978768 +0.00199600798403 0.04 1.10044449536e-06 3506 -140571.69612 +0.00199600798403 0.07 9.35346433595e-07 2980 -134988.348449 +0.00199600798403 0.1 9.03017345454e-07 2877 -131760.084209 +0.00199600798403 0.13 8.88892986557e-07 2832 -129849.228452 +0.00199600798403 0.16 8.82929368356e-07 2813 -128820.128461 +0.00199600798403 0.19 8.79476747293e-07 2802 -128460.868102 +0.00199600798403 0.22 8.7759349944e-07 2796 -128656.104516 +0.00199600798403 0.25 8.76338000871e-07 2792 -129336.063513 +0.00199600798403 0.28 8.76338000871e-07 2792 -130460.663625 +0.00199600798403 0.31 8.76338000871e-07 2792 -132005.62897 +0.00199600798403 0.34 8.76338000871e-07 2792 -133958.073654 +0.00199600798403 0.37 8.76338000871e-07 2792 -136313.982107 +0.00199600798403 0.4 8.76338000871e-07 2792 -139076.993276 +0.00199600798403 0.43 8.76338000871e-07 2792 -142255.978643 +0.00199600798403 0.46 8.76338000871e-07 2792 -145866.893255 +0.00199600798403 0.49 8.76338000871e-07 2792 -149931.36575 +0.00199600798403 0.52 8.76338000871e-07 2792 -154477.183171 +0.00199600798403 0.55 8.76338000871e-07 2792 -159539.666717 +0.00199600798403 0.58 8.76338000871e-07 2792 -165162.441944 +0.00199600798403 0.61 8.76338000871e-07 2792 -171399.726992 +0.00199600798403 0.64 8.76338000871e-07 2792 -178318.826 +0.00199600798403 0.67 8.76338000871e-07 2792 -186003.668609 +0.00199600798403 0.7 8.76338000871e-07 2792 -194560.939637 +0.00199600798403 0.73 8.76338000871e-07 2792 -204127.378989 +0.00199600798403 0.76 8.76338000871e-07 2792 -214882.126619 +0.00199600798403 0.79 8.76338000871e-07 2792 -227066.27179 +0.00199600798403 0.82 8.76338000871e-07 2792 -241015.775219 +0.00199600798403 0.85 8.76338000871e-07 2792 -257220.161639 +0.00199600798403 0.88 8.76338000871e-07 2792 -276437.979078 +0.00195694716243 0.01 2.19649474574e-06 6998 -147423.428163 +0.00195694716243 0.04 1.09981674608e-06 3504 -140622.535126 +0.00195694716243 0.07 9.34404809668e-07 2977 -135032.440906 +0.00195694716243 0.1 9.02075721527e-07 2874 -131797.857223 +0.00195694716243 0.13 8.88265237273e-07 2830 -129880.299354 +0.00195694716243 0.16 8.82301619072e-07 2811 -128843.299019 +0.00195694716243 0.19 8.78848998009e-07 2800 -128474.502796 +0.00195694716243 0.22 8.77279624798e-07 2795 -128658.030755 +0.00195694716243 0.25 8.76338000871e-07 2792 -129324.662821 +0.00195694716243 0.28 8.76338000871e-07 2792 -130433.647001 +0.00195694716243 0.31 8.76338000871e-07 2792 -131961.086088 +0.00195694716243 0.34 8.76338000871e-07 2792 -133893.487612 +0.00195694716243 0.37 8.76338000871e-07 2792 -136227.015655 +0.00195694716243 0.4 8.76338000871e-07 2792 -138964.729615 +0.00195694716243 0.43 8.76338000871e-07 2792 -142115.772987 +0.00195694716243 0.46 8.76338000871e-07 2792 -145695.18458 +0.00195694716243 0.49 8.76338000871e-07 2792 -149724.414817 +0.00195694716243 0.52 8.76338000871e-07 2792 -154230.972533 +0.00195694716243 0.55 8.76338000871e-07 2792 -159249.434361 +0.00195694716243 0.58 8.76338000871e-07 2792 -164822.992682 +0.00195694716243 0.61 8.76338000871e-07 2792 -171004.83682 +0.00195694716243 0.64 8.76338000871e-07 2792 -177861.357919 +0.00195694716243 0.67 8.76338000871e-07 2792 -185475.133208 +0.00195694716243 0.7 8.76338000871e-07 2792 -193950.754192 +0.00195694716243 0.73 8.76338000871e-07 2792 -203422.758017 +0.00195694716243 0.76 8.76338000871e-07 2792 -214066.987443 +0.00195694716243 0.79 8.76338000871e-07 2792 -226119.983946 +0.00195694716243 0.82 8.76338000871e-07 2792 -239910.701348 +0.00195694716243 0.85 8.76338000871e-07 2792 -255917.968513 +0.00195694716243 0.88 8.76338000871e-07 2792 -274882.193269 +0.00191938579655 0.01 2.19115887682e-06 6981 -147451.934341 +0.00191938579655 0.04 1.09856124751e-06 3500 -140673.678257 +0.00191938579655 0.07 9.32521561815e-07 2971 -135076.842628 +0.00191938579655 0.1 9.00820222959e-07 2870 -131836.165762 +0.00191938579655 0.13 8.87637487989e-07 2828 -129911.724527 +0.00191938579655 0.16 8.81673869788e-07 2809 -128866.8353 +0.00191938579655 0.19 8.78535123366e-07 2799 -128488.863071 +0.00191938579655 0.22 8.76965750156e-07 2794 -128660.639883 +0.00191938579655 0.25 8.76338000871e-07 2792 -129314.27788 +0.00191938579655 0.28 8.76338000871e-07 2792 -130407.897907 +0.00191938579655 0.31 8.76338000871e-07 2792 -131917.738869 +0.00191938579655 0.34 8.76338000871e-07 2792 -133830.354281 +0.00191938579655 0.37 8.76338000871e-07 2792 -136141.691268 +0.00191938579655 0.4 8.76338000871e-07 2792 -138854.365008 +0.00191938579655 0.43 8.76338000871e-07 2792 -141977.735716 +0.00191938579655 0.46 8.76338000871e-07 2792 -145526.033949 +0.00191938579655 0.49 8.76338000871e-07 2792 -149520.445531 +0.00191938579655 0.52 8.76338000871e-07 2792 -153988.114946 +0.00191938579655 0.55 8.76338000871e-07 2792 -158963.087222 +0.00191938579655 0.58 8.76338000871e-07 2792 -164487.894852 +0.00191938579655 0.61 8.76338000871e-07 2792 -170615.036269 +0.00191938579655 0.64 8.76338000871e-07 2792 -177409.602908 +0.00191938579655 0.67 8.76338000871e-07 2792 -184953.154828 +0.00191938579655 0.7 8.76338000871e-07 2792 -193348.294442 +0.00191938579655 0.73 8.76338000871e-07 2792 -202727.079487 +0.00191938579655 0.76 8.76338000871e-07 2792 -213262.351354 +0.00191938579655 0.79 8.76338000871e-07 2792 -225185.989135 +0.00191938579655 0.82 8.76338000871e-07 2792 -238820.34477 +0.00191938579655 0.85 8.76338000871e-07 2792 -254633.578146 +0.00191938579655 0.88 8.76338000871e-07 2792 -273348.471185 +0.00188323917137 0.01 2.18770625576e-06 6970 -147480.571156 +0.00188323917137 0.04 1.09793349823e-06 3498 -140724.908812 +0.00188323917137 0.07 9.30638313963e-07 2965 -135121.49168 +0.00188323917137 0.1 8.99878599032e-07 2867 -131874.797941 +0.00188323917137 0.13 8.86695864062e-07 2825 -129943.800368 +0.00188323917137 0.16 8.81673869788e-07 2809 -128890.905937 +0.00188323917137 0.19 8.78221248724e-07 2798 -128503.723225 +0.00188323917137 0.22 8.76651875514e-07 2793 -128663.9337 +0.00188323917137 0.25 8.76338000871e-07 2792 -129304.680029 +0.00188323917137 0.28 8.76338000871e-07 2792 -130383.124795 +0.00188323917137 0.31 8.76338000871e-07 2792 -131875.49038 +0.00188323917137 0.34 8.76338000871e-07 2792 -133768.649334 +0.00188323917137 0.37 8.76338000871e-07 2792 -136057.874494 +0.00188323917137 0.4 8.76338000871e-07 2792 -138745.900827 +0.00188323917137 0.43 8.76338000871e-07 2792 -141841.632305 +0.00188323917137 0.46 8.76338000871e-07 2792 -145359.308678 +0.00188323917137 0.49 8.76338000871e-07 2792 -149319.306333 +0.00188323917137 0.52 8.76338000871e-07 2792 -153748.506885 +0.00188323917137 0.55 8.76338000871e-07 2792 -158680.550231 +0.00188323917137 0.58 8.76338000871e-07 2792 -164157.153858 +0.00188323917137 0.61 8.76338000871e-07 2792 -170230.148256 +0.00188323917137 0.64 8.76338000871e-07 2792 -176963.585599 +0.00188323917137 0.67 8.76338000871e-07 2792 -184437.63751 +0.00188323917137 0.7 8.76338000871e-07 2792 -192753.368592 +0.00188323917137 0.73 8.76338000871e-07 2792 -202040.259323 +0.00188323917137 0.76 8.76338000871e-07 2792 -212468.01416 +0.00188323917137 0.79 8.76338000871e-07 2792 -224264.191284 +0.00188323917137 0.82 8.76338000871e-07 2792 -237744.464747 +0.00188323917137 0.85 8.76338000871e-07 2792 -253366.771419 +0.00188323917137 0.88 8.76338000871e-07 2792 -271836.514871 +0.00184842883549 0.01 2.18268426148e-06 6954 -147509.330856 +0.00184842883549 0.04 1.09793349823e-06 3498 -140776.2088 +0.00184842883549 0.07 9.28441191468e-07 2958 -135166.438478 +0.00184842883549 0.1 8.98309225822e-07 2862 -131913.666798 +0.00184842883549 0.13 8.85754240136e-07 2822 -129976.176665 +0.00184842883549 0.16 8.81046120504e-07 2807 -128915.54008 +0.00184842883549 0.19 8.7759349944e-07 2796 -128518.971293 +0.00184842883549 0.22 8.76338000871e-07 2792 -128668.092906 +0.00184842883549 0.25 8.76338000871e-07 2792 -129295.838809 +0.00184842883549 0.28 8.76338000871e-07 2792 -130359.423772 +0.00184842883549 0.31 8.76338000871e-07 2792 -131834.491199 +0.00184842883549 0.34 8.76338000871e-07 2792 -133708.228708 +0.00184842883549 0.37 8.76338000871e-07 2792 -135975.606996 +0.00184842883549 0.4 8.76338000871e-07 2792 -138639.277198 +0.00184842883549 0.43 8.76338000871e-07 2792 -141707.53089 +0.00184842883549 0.46 8.76338000871e-07 2792 -145194.943785 +0.00184842883549 0.49 8.76338000871e-07 2792 -149120.960527 +0.00184842883549 0.52 8.76338000871e-07 2792 -153512.15242 +0.00184842883549 0.55 8.76338000871e-07 2792 -158401.679795 +0.00184842883549 0.58 8.76338000871e-07 2792 -163830.674641 +0.00184842883549 0.61 8.76338000871e-07 2792 -169850.123689 +0.00184842883549 0.64 8.76338000871e-07 2792 -176523.197684 +0.00184842883549 0.67 8.76338000871e-07 2792 -183928.569319 +0.00184842883549 0.7 8.76338000871e-07 2792 -192165.818205 +0.00184842883549 0.73 8.76338000871e-07 2792 -201362.114689 +0.00184842883549 0.76 8.76338000871e-07 2792 -211683.870526 +0.00184842883549 0.79 8.76338000871e-07 2792 -223354.386774 +0.00184842883549 0.82 8.76338000871e-07 2792 -236682.894956 +0.00184842883549 0.85 8.76338000871e-07 2792 -252117.279001 +0.00184842883549 0.88 8.76338000871e-07 2792 -270346.036232 +0.00181488203267 0.01 2.17954551506e-06 6944 -147538.237177 +0.00181488203267 0.04 1.09730574894e-06 3496 -140827.771208 +0.00181488203267 0.07 9.26244068973e-07 2951 -135211.761621 +0.00181488203267 0.1 8.97053727253e-07 2858 -131952.970885 +0.00181488203267 0.13 8.84812616209e-07 2819 -130008.784529 +0.00181488203267 0.16 8.79790621935e-07 2803 -128940.709885 +0.00181488203267 0.19 8.77279624798e-07 2795 -128534.669611 +0.00181488203267 0.22 8.76338000871e-07 2792 -128672.980091 +0.00181488203267 0.25 8.76338000871e-07 2792 -129287.664583 +0.00181488203267 0.28 8.76338000871e-07 2792 -130336.686148 +0.00181488203267 0.31 8.76338000871e-07 2792 -131794.680395 +0.00181488203267 0.34 8.76338000871e-07 2792 -133649.052967 +0.00181488203267 0.37 8.76338000871e-07 2792 -135894.813567 +0.00181488203267 0.4 8.76338000871e-07 2792 -138534.251962 +0.00181488203267 0.43 8.76338000871e-07 2792 -141575.506642 +0.00181488203267 0.46 8.76338000871e-07 2792 -145032.761774 +0.00181488203267 0.49 8.76338000871e-07 2792 -148925.287839 +0.00181488203267 0.52 8.76338000871e-07 2792 -153278.907731 +0.00181488203267 0.55 8.76338000871e-07 2792 -158126.423916 +0.00181488203267 0.58 8.76338000871e-07 2792 -163508.402048 +0.00181488203267 0.61 8.76338000871e-07 2792 -169474.929525 +0.00181488203267 0.64 8.76338000871e-07 2792 -176088.285356 +0.00181488203267 0.67 8.76338000871e-07 2792 -183425.913613 +0.00181488203267 0.7 8.76338000871e-07 2792 -191585.574939 +0.00181488203267 0.73 8.76338000871e-07 2792 -200692.460894 +0.00181488203267 0.76 8.76338000871e-07 2792 -210909.765374 +0.00181488203267 0.79 8.76338000871e-07 2792 -222456.409111 +0.00181488203267 0.82 8.76338000871e-07 2792 -235635.444227 +0.00181488203267 0.85 8.76338000871e-07 2792 -250884.853278 +0.00181488203267 0.88 8.76338000871e-07 2792 -268876.726345 +0.0017825311943 0.01 2.17546514471e-06 6931 -147567.252991 +0.0017825311943 0.04 1.0969918743e-06 3495 -140879.407946 +0.0017825311943 0.07 9.24988570404e-07 2947 -135257.426371 +0.0017825311943 0.1 8.97053727253e-07 2858 -131992.812075 +0.0017825311943 0.13 8.84184866925e-07 2817 -130041.824646 +0.0017825311943 0.16 8.79476747293e-07 2802 -128965.924039 +0.0017825311943 0.19 8.77279624798e-07 2795 -128550.745689 +0.0017825311943 0.22 8.76338000871e-07 2792 -128678.505641 +0.0017825311943 0.25 8.76338000871e-07 2792 -129280.222686 +0.0017825311943 0.28 8.76338000871e-07 2792 -130314.738149 +0.0017825311943 0.31 8.76338000871e-07 2792 -131755.8442 +0.0017825311943 0.34 8.76338000871e-07 2792 -133591.020879 +0.0017825311943 0.37 8.76338000871e-07 2792 -135815.505313 +0.0017825311943 0.4 8.76338000871e-07 2792 -138430.914521 +0.0017825311943 0.43 8.76338000871e-07 2792 -141445.499098 +0.0017825311943 0.46 8.76338000871e-07 2792 -144872.757407 +0.0017825311943 0.49 8.76338000871e-07 2792 -148732.220592 +0.0017825311943 0.52 8.76338000871e-07 2792 -153048.749628 +0.0017825311943 0.55 8.76338000871e-07 2792 -157854.748128 +0.0017825311943 0.58 8.76338000871e-07 2792 -163190.189815 +0.0017825311943 0.61 8.76338000871e-07 2792 -169104.478392 +0.0017825311943 0.64 8.76338000871e-07 2792 -175658.812645 +0.0017825311943 0.67 8.76338000871e-07 2792 -182929.526532 +0.0017825311943 0.7 8.76338000871e-07 2792 -191012.632192 +0.0017825311943 0.73 8.76338000871e-07 2792 -200031.188071 +0.0017825311943 0.76 8.76338000871e-07 2792 -210145.507209 +0.0017825311943 0.79 8.76338000871e-07 2792 -221570.120343 +0.0017825311943 0.82 8.76338000871e-07 2792 -234601.896362 +0.0017825311943 0.85 8.76338000871e-07 2792 -249669.299465 +0.0017825311943 0.88 8.76338000871e-07 2792 -267428.261488 +0.00175131348511 0.01 2.17326802222e-06 6924 -147596.363951 +0.00175131348511 0.04 1.0969918743e-06 3495 -140931.330887 +0.00175131348511 0.07 9.23733071835e-07 2943 -135303.314239 +0.00175131348511 0.1 8.94856604758e-07 2851 -132032.928508 +0.00175131348511 0.13 8.83870992283e-07 2816 -130075.111321 +0.00175131348511 0.16 8.78848998009e-07 2800 -128991.502422 +0.00175131348511 0.19 8.76965750156e-07 2794 -128567.22579 +0.00175131348511 0.22 8.76338000871e-07 2792 -128684.493643 +0.00175131348511 0.25 8.76338000871e-07 2792 -129273.539732 +0.00175131348511 0.28 8.76338000871e-07 2792 -130293.524715 +0.00175131348511 0.31 8.76338000871e-07 2792 -131718.088874 +0.00175131348511 0.34 8.76338000871e-07 2792 -133534.306886 +0.00175131348511 0.37 8.76338000871e-07 2792 -135737.528194 +0.00175131348511 0.4 8.76338000871e-07 2792 -138329.19723 +0.00175131348511 0.43 8.76338000871e-07 2792 -141317.308209 +0.00175131348511 0.46 8.76338000871e-07 2792 -144715.040207 +0.00175131348511 0.49 8.76338000871e-07 2792 -148541.630493 +0.00175131348511 0.52 8.76338000871e-07 2792 -152821.563483 +0.00175131348511 0.55 8.76338000871e-07 2792 -157586.523226 +0.00175131348511 0.58 8.76338000871e-07 2792 -162876.008632 +0.00175131348511 0.61 8.76338000871e-07 2792 -168738.691706 +0.00175131348511 0.64 8.76338000871e-07 2792 -175234.728701 +0.00175131348511 0.67 8.76338000871e-07 2792 -182439.296502 +0.00175131348511 0.7 8.76338000871e-07 2792 -190446.878899 +0.00175131348511 0.73 8.76338000871e-07 2792 -199378.227204 +0.00175131348511 0.76 8.76338000871e-07 2792 -209390.928882 +0.00175131348511 0.79 8.76338000871e-07 2792 -220695.323746 +0.00175131348511 0.82 8.76338000871e-07 2792 -233582.089632 +0.00175131348511 0.85 8.76338000871e-07 2792 -248470.357221 +0.00175131348511 0.88 8.76338000871e-07 2792 -266000.391474 +0.00172117039587 0.01 2.17107089972e-06 6917 -147625.643274 +0.00172117039587 0.04 1.09636412502e-06 3493 -140983.203564 +0.00172117039587 0.07 9.2153594934e-07 2936 -135349.366716 +0.00172117039587 0.1 8.92973356905e-07 2845 -132073.069473 +0.00172117039587 0.13 8.82929368356e-07 2813 -130108.695845 +0.00172117039587 0.16 8.78848998009e-07 2800 -129017.615057 +0.00172117039587 0.19 8.76651875514e-07 2793 -128584.128077 +0.00172117039587 0.22 8.76338000871e-07 2792 -128690.933592 +0.00172117039587 0.25 8.76338000871e-07 2792 -129267.651592 +0.00172117039587 0.28 8.76338000871e-07 2792 -130272.989103 +0.00172117039587 0.31 8.76338000871e-07 2792 -131681.30229 +0.00172117039587 0.34 8.76338000871e-07 2792 -133478.760218 +0.00172117039587 0.37 8.76338000871e-07 2792 -135660.832289 +0.00172117039587 0.4 8.76338000871e-07 2792 -138229.102973 +0.00172117039587 0.43 8.76338000871e-07 2792 -141190.946684 +0.00172117039587 0.46 8.76338000871e-07 2792 -144559.547639 +0.00172117039587 0.49 8.76338000871e-07 2792 -148353.451707 +0.00172117039587 0.52 8.76338000871e-07 2792 -152597.282087 +0.00172117039587 0.55 8.76338000871e-07 2792 -157321.738166 +0.00172117039587 0.58 8.76338000871e-07 2792 -162565.808712 +0.00172117039587 0.61 8.76338000871e-07 2792 -168377.434394 +0.00172117039587 0.64 8.76338000871e-07 2792 -174815.947262 +0.00172117039587 0.67 8.76338000871e-07 2792 -181955.186545 +0.00172117039587 0.7 8.76338000871e-07 2792 -189888.160576 +0.00172117039587 0.73 8.76338000871e-07 2792 -198733.525342 +0.00172117039587 0.76 8.76338000871e-07 2792 -208645.924142 +0.00172117039587 0.79 8.76338000871e-07 2792 -219831.818475 +0.00172117039587 0.82 8.76338000871e-07 2792 -232575.821142 +0.00172117039587 0.85 8.76338000871e-07 2792 -247287.805464 +0.00172117039587 0.88 8.76338000871e-07 2792 -264592.808041 +0.00169204737733 0.01 2.16981540115e-06 6913 -147655.056199 +0.00169204737733 0.04 1.09730574894e-06 3496 -141035.122092 +0.00169204737733 0.07 9.20280450772e-07 2932 -135395.681449 +0.00169204737733 0.1 8.92659482263e-07 2844 -132113.403544 +0.00169204737733 0.13 8.82615493714e-07 2812 -130142.492656 +0.00169204737733 0.16 8.78221248724e-07 2798 -129043.943149 +0.00169204737733 0.19 8.76338000871e-07 2792 -128601.566642 +0.00169204737733 0.22 8.76338000871e-07 2792 -128697.809687 +0.00169204737733 0.25 8.76338000871e-07 2792 -129262.382769 +0.00169204737733 0.28 8.76338000871e-07 2792 -130253.195771 +0.00169204737733 0.31 8.76338000871e-07 2792 -131645.35664 +0.00169204737733 0.34 8.76338000871e-07 2792 -133424.267756 +0.00169204737733 0.37 8.76338000871e-07 2792 -135585.451047 +0.00169204737733 0.4 8.76338000871e-07 2792 -138130.520426 +0.00169204737733 0.43 8.76338000871e-07 2792 -141066.408828 +0.00169204737733 0.46 8.76338000871e-07 2792 -144406.135524 +0.00169204737733 0.49 8.76338000871e-07 2792 -148167.811956 +0.00169204737733 0.52 8.76338000871e-07 2792 -152375.804707 +0.00169204737733 0.55 8.76338000871e-07 2792 -157060.274288 +0.00169204737733 0.58 8.76338000871e-07 2792 -162259.460656 +0.00169204737733 0.61 8.76338000871e-07 2792 -168020.690737 +0.00169204737733 0.64 8.76338000871e-07 2792 -174402.3736 +0.00169204737733 0.67 8.76338000871e-07 2792 -181477.105347 +0.00169204737733 0.7 8.76338000871e-07 2792 -189336.407745 +0.00169204737733 0.73 8.76338000871e-07 2792 -198096.943229 +0.00169204737733 0.76 8.76338000871e-07 2792 -207910.431606 +0.00169204737733 0.79 8.76338000871e-07 2792 -218979.460383 +0.00169204737733 0.82 8.76338000871e-07 2792 -231582.870438 +0.00169204737733 0.85 8.76338000871e-07 2792 -246121.425374 +0.00169204737733 0.88 8.76338000871e-07 2792 -263205.21655 +0.00166389351082 0.01 2.16636278009e-06 6902 -147684.574539 +0.00166389351082 0.04 1.09730574894e-06 3496 -141087.289802 +0.00166389351082 0.07 9.19024952203e-07 2928 -135442.244954 +0.00166389351082 0.1 8.92031732979e-07 2842 -132153.929226 +0.00166389351082 0.13 8.81673869788e-07 2809 -130176.468284 +0.00166389351082 0.16 8.7759349944e-07 2796 -129070.507705 +0.00166389351082 0.19 8.76338000871e-07 2792 -128619.274978 +0.00166389351082 0.22 8.76338000871e-07 2792 -128705.069457 +0.00166389351082 0.25 8.76338000871e-07 2792 -129257.693491 +0.00166389351082 0.28 8.76338000871e-07 2792 -130234.120319 +0.00166389351082 0.31 8.76338000871e-07 2792 -131610.189757 +0.00166389351082 0.34 8.76338000871e-07 2792 -133370.914978 +0.00166389351082 0.37 8.76338000871e-07 2792 -135511.461271 +0.00166389351082 0.4 8.76338000871e-07 2792 -138033.430914 +0.00166389351082 0.43 8.76338000871e-07 2792 -140943.643936 +0.00166389351082 0.46 8.76338000871e-07 2792 -144254.755483 +0.00166389351082 0.49 8.76338000871e-07 2792 -147984.643811 +0.00166389351082 0.52 8.76338000871e-07 2792 -152157.038776 +0.00166389351082 0.55 8.76338000871e-07 2792 -156802.067357 +0.00166389351082 0.58 8.76338000871e-07 2792 -161956.961219 +0.00166389351082 0.61 8.76338000871e-07 2792 -167668.392843 +0.00166389351082 0.64 8.76338000871e-07 2792 -173993.881483 +0.00166389351082 0.67 8.76338000871e-07 2792 -181004.98082 +0.00166389351082 0.7 8.76338000871e-07 2792 -188791.554034 +0.00166389351082 0.73 8.76338000871e-07 2792 -197468.332983 +0.00166389351082 0.76 8.76338000871e-07 2792 -207184.325026 +0.00166389351082 0.79 8.76338000871e-07 2792 -218138.125082 +0.00166389351082 0.82 8.76338000871e-07 2792 -230603.035827 +0.00166389351082 0.85 8.76338000871e-07 2792 -244970.969511 +0.00166389351082 0.88 8.76338000871e-07 2792 -261837.351272 +0.00163666121113 0.01 2.16385178295e-06 6894 -147714.171839 +0.00163666121113 0.04 1.09793349823e-06 3498 -141139.54726 +0.00163666121113 0.07 9.1714170435e-07 2922 -135488.889182 +0.00163666121113 0.1 8.91090109052e-07 2839 -132194.600661 +0.00163666121113 0.13 8.81673869788e-07 2809 -130210.767385 +0.00163666121113 0.16 8.7759349944e-07 2796 -129097.358364 +0.00163666121113 0.19 8.76338000871e-07 2792 -128637.2315 +0.00163666121113 0.22 8.76338000871e-07 2792 -128712.736766 +0.00163666121113 0.25 8.76338000871e-07 2792 -129253.414229 +0.00163666121113 0.28 8.76338000871e-07 2792 -130215.881668 +0.00163666121113 0.31 8.76338000871e-07 2792 -131575.776139 +0.00163666121113 0.34 8.76338000871e-07 2792 -133318.585749 +0.00163666121113 0.37 8.76338000871e-07 2792 -135438.686707 +0.00163666121113 0.4 8.76338000871e-07 2792 -137937.729188 +0.00163666121113 0.43 8.76338000871e-07 2792 -140822.65234 +0.00163666121113 0.46 8.76338000871e-07 2792 -144105.426079 +0.00163666121113 0.49 8.76338000871e-07 2792 -147803.869644 +0.00163666121113 0.52 8.76338000871e-07 2792 -151941.108179 +0.00163666121113 0.55 8.76338000871e-07 2792 -156547.033779 +0.00163666121113 0.58 8.76338000871e-07 2792 -161658.187466 +0.00163666121113 0.61 8.76338000871e-07 2792 -167320.420411 +0.00163666121113 0.64 8.76338000871e-07 2792 -173590.456413 +0.00163666121113 0.67 8.76338000871e-07 2792 -180538.693388 +0.00163666121113 0.7 8.76338000871e-07 2792 -188253.492777 +0.00163666121113 0.73 8.76338000871e-07 2792 -196847.618376 +0.00163666121113 0.76 8.76338000871e-07 2792 -206467.441803 +0.00163666121113 0.79 8.76338000871e-07 2792 -217307.711062 +0.00163666121113 0.82 8.76338000871e-07 2792 -229636.15363 +0.00163666121113 0.85 8.76338000871e-07 2792 -243836.18609 +0.00163666121113 0.88 8.76338000871e-07 2792 -260488.913912 +0.00161030595813 0.01 2.16102691117e-06 6885 -147743.754111 +0.00161030595813 0.04 1.09918899679e-06 3502 -141192.014986 +0.00161030595813 0.07 9.16513955066e-07 2920 -135535.669577 +0.00161030595813 0.1 8.90462359768e-07 2837 -132235.503658 +0.00161030595813 0.13 8.81673869788e-07 2809 -130245.452531 +0.00161030595813 0.16 8.77279624798e-07 2795 -129124.388752 +0.00161030595813 0.19 8.76338000871e-07 2792 -128655.631057 +0.00161030595813 0.22 8.76338000871e-07 2792 -128720.829269 +0.00161030595813 0.25 8.76338000871e-07 2792 -129249.621769 +0.00161030595813 0.28 8.76338000871e-07 2792 -130198.318372 +0.00161030595813 0.31 8.76338000871e-07 2792 -131542.1528 +0.00161030595813 0.34 8.76338000871e-07 2792 -133267.186464 +0.00161030595813 0.37 8.76338000871e-07 2792 -135367.095255 +0.00161030595813 0.4 8.76338000871e-07 2792 -137843.533122 +0.00161030595813 0.43 8.76338000871e-07 2792 -140703.311484 +0.00161030595813 0.46 8.76338000871e-07 2792 -143958.087857 +0.00161030595813 0.49 8.76338000871e-07 2792 -147625.36142 +0.00161030595813 0.52 8.76338000871e-07 2792 -151727.939483 +0.00161030595813 0.55 8.76338000871e-07 2792 -156295.067752 +0.00161030595813 0.58 8.76338000871e-07 2792 -161363.077877 +0.00161030595813 0.61 8.76338000871e-07 2792 -166976.763734 +0.00161030595813 0.64 8.76338000871e-07 2792 -173192.012884 +0.00161030595813 0.67 8.76338000871e-07 2792 -180078.140172 +0.00161030595813 0.7 8.76338000871e-07 2792 -187722.141133 +0.00161030595813 0.73 8.76338000871e-07 2792 -196234.714606 +0.00161030595813 0.76 8.76338000871e-07 2792 -205759.661456 +0.00161030595813 0.79 8.76338000871e-07 2792 -216488.058055 +0.00161030595813 0.82 8.76338000871e-07 2792 -228682.089653 +0.00161030595813 0.85 8.76338000871e-07 2792 -242716.863835 +0.00161030595813 0.88 8.76338000871e-07 2792 -259159.605255 +0.00158478605388 0.01 2.15757429011e-06 6874 -147773.344835 +0.00158478605388 0.04 1.09918899679e-06 3502 -141244.603881 +0.00158478605388 0.07 9.1557233114e-07 2917 -135582.54642 +0.00158478605388 0.1 8.89520735842e-07 2834 -132276.612825 +0.00158478605388 0.13 8.81046120504e-07 2807 -130280.326047 +0.00158478605388 0.16 8.77279624798e-07 2795 -129151.710716 +0.00158478605388 0.19 8.76338000871e-07 2792 -128674.386634 +0.00158478605388 0.22 8.76338000871e-07 2792 -128729.442051 +0.00158478605388 0.25 8.76338000871e-07 2792 -129246.247075 +0.00158478605388 0.28 8.76338000871e-07 2792 -130181.388678 +0.00158478605388 0.31 8.76338000871e-07 2792 -131509.290681 +0.00158478605388 0.34 8.76338000871e-07 2792 -133216.661777 +0.00158478605388 0.37 8.76338000871e-07 2792 -135296.737583 +0.00158478605388 0.4 8.76338000871e-07 2792 -137750.812838 +0.00158478605388 0.43 8.76338000871e-07 2792 -140585.597244 +0.00158478605388 0.46 8.76338000871e-07 2792 -143812.74898 +0.00158478605388 0.49 8.76338000871e-07 2792 -147449.165653 +0.00158478605388 0.52 8.76338000871e-07 2792 -151517.495339 +0.00158478605388 0.55 8.76338000871e-07 2792 -156046.276077 +0.00158478605388 0.58 8.76338000871e-07 2792 -161071.557795 +0.00158478605388 0.61 8.76338000871e-07 2792 -166637.296514 +0.00158478605388 0.64 8.76338000871e-07 2792 -172798.444969 +0.00158478605388 0.67 8.76338000871e-07 2792 -179623.288587 +0.00158478605388 0.7 8.76338000871e-07 2792 -187197.366775 +0.00158478605388 0.73 8.76338000871e-07 2792 -195629.506641 +0.00158478605388 0.76 8.76338000871e-07 2792 -205060.884694 +0.00158478605388 0.79 8.76338000871e-07 2792 -215678.98492 +0.00158478605388 0.82 8.76338000871e-07 2792 -227740.674158 +0.00158478605388 0.85 8.76338000871e-07 2792 -241612.799061 +0.00158478605388 0.88 8.76338000871e-07 2792 -257849.138215 +0.0015600624025 0.01 2.15537716762e-06 6867 -147802.940116 +0.0015600624025 0.04 1.09918899679e-06 3502 -141297.218923 +0.0015600624025 0.07 9.14630707213e-07 2914 -135629.398273 +0.0015600624025 0.1 8.88579111915e-07 2831 -132317.865829 +0.0015600624025 0.13 8.80418371219e-07 2805 -130315.30277 +0.0015600624025 0.16 8.76965750156e-07 2794 -129179.208377 +0.0015600624025 0.19 8.76338000871e-07 2792 -128693.371977 +0.0015600624025 0.22 8.76338000871e-07 2792 -128738.391221 +0.0015600624025 0.25 8.76338000871e-07 2792 -129243.264318 +0.0015600624025 0.28 8.76338000871e-07 2792 -130164.982029 +0.0015600624025 0.31 8.76338000871e-07 2792 -131477.302283 +0.0015600624025 0.34 8.76338000871e-07 2792 -133167.003776 +0.0015600624025 0.37 8.76338000871e-07 2792 -135227.50822 +0.0015600624025 0.4 8.76338000871e-07 2792 -137659.418124 +0.0015600624025 0.43 8.76338000871e-07 2792 -140469.48931 +0.0015600624025 0.46 8.76338000871e-07 2792 -143669.300582 +0.0015600624025 0.49 8.76338000871e-07 2792 -147275.226885 +0.0015600624025 0.52 8.76338000871e-07 2792 -151309.62049 +0.0015600624025 0.55 8.76338000871e-07 2792 -155800.586493 +0.0015600624025 0.58 8.76338000871e-07 2792 -160783.515148 +0.0015600624025 0.61 8.76338000871e-07 2792 -166301.960203 +0.0015600624025 0.64 8.76338000871e-07 2792 -172409.725609 +0.0015600624025 0.67 8.76338000871e-07 2792 -179174.036194 +0.0015600624025 0.7 8.76338000871e-07 2792 -186679.084804 +0.0015600624025 0.73 8.76338000871e-07 2792 -195031.887731 +0.0015600624025 0.76 8.76338000871e-07 2792 -204370.989674 +0.0015600624025 0.79 8.76338000871e-07 2792 -214880.368561 +0.0015600624025 0.82 8.76338000871e-07 2792 -226811.717526 +0.0015600624025 0.85 8.76338000871e-07 2792 -240523.810894 +0.0015600624025 0.88 8.76338000871e-07 2792 -256557.247706 +0.00153609831029 0.01 2.15318004512e-06 6860 -147832.552215 +0.00153609831029 0.04 1.09856124751e-06 3500 -141349.766433 +0.00153609831029 0.07 9.13689083287e-07 2911 -135676.356261 +0.00153609831029 0.1 8.87951362631e-07 2829 -132359.173658 +0.00153609831029 0.13 8.79476747293e-07 2802 -130350.327491 +0.00153609831029 0.16 8.76651875514e-07 2793 -129206.816162 +0.00153609831029 0.19 8.76338000871e-07 2792 -128712.612087 +0.00153609831029 0.22 8.76338000871e-07 2792 -128747.532376 +0.00153609831029 0.25 8.76338000871e-07 2792 -129240.702246 +0.00153609831029 0.28 8.76338000871e-07 2792 -130149.056156 +0.00153609831029 0.31 8.76338000871e-07 2792 -131446.093947 +0.00153609831029 0.34 8.76338000871e-07 2792 -133118.225508 +0.00153609831029 0.37 8.76338000871e-07 2792 -135159.327036 +0.00153609831029 0.4 8.76338000871e-07 2792 -137569.386877 +0.00153609831029 0.43 8.76338000871e-07 2792 -140355.073576 +0.00153609831029 0.46 8.76338000871e-07 2792 -143527.742673 +0.00153609831029 0.49 8.76338000871e-07 2792 -147103.526229 +0.00153609831029 0.52 8.76338000871e-07 2792 -151104.340971 +0.00153609831029 0.55 8.76338000871e-07 2792 -155557.973386 +0.00153609831029 0.58 8.76338000871e-07 2792 -160499.032267 +0.00153609831029 0.61 8.76338000871e-07 2792 -165970.682162 +0.00153609831029 0.64 8.76338000871e-07 2792 -172025.726896 +0.00153609831029 0.67 8.76338000871e-07 2792 -178730.290674 +0.00153609831029 0.7 8.76338000871e-07 2792 -186167.235872 +0.00153609831029 0.73 8.76338000871e-07 2792 -194441.721985 +0.00153609831029 0.76 8.76338000871e-07 2792 -203689.862292 +0.00153609831029 0.79 8.76338000871e-07 2792 -214092.085319 +0.00153609831029 0.82 8.76338000871e-07 2792 -225895.03017 +0.00153609831029 0.85 8.76338000871e-07 2792 -239449.679382 +0.00153609831029 0.88 8.76338000871e-07 2792 -255283.686324 +0.00151285930408 0.01 2.15035517334e-06 6851 -147862.174773 +0.00151285930408 0.04 1.09981674608e-06 3504 -141402.230606 +0.00151285930408 0.07 9.13689083287e-07 2911 -135723.409635 +0.00151285930408 0.1 8.87637487989e-07 2828 -132400.558869 +0.00151285930408 0.13 8.79162872651e-07 2801 -130385.447446 +0.00151285930408 0.16 8.76338000871e-07 2792 -129234.640286 +0.00151285930408 0.19 8.76338000871e-07 2792 -128732.123964 +0.00151285930408 0.22 8.76338000871e-07 2792 -128757.038206 +0.00151285930408 0.25 8.76338000871e-07 2792 -129238.585337 +0.00151285930408 0.28 8.76338000871e-07 2792 -130133.66028 +0.00151285930408 0.31 8.76338000871e-07 2792 -131415.582489 +0.00151285930408 0.34 8.76338000871e-07 2792 -133070.302563 +0.00151285930408 0.37 8.76338000871e-07 2792 -135092.157802 +0.00151285930408 0.4 8.76338000871e-07 2792 -137480.717849 +0.00151285930408 0.43 8.76338000871e-07 2792 -140242.253338 +0.00151285930408 0.46 8.76338000871e-07 2792 -143387.97936 +0.00151285930408 0.49 8.76338000871e-07 2792 -146934.031924 +0.00151285930408 0.52 8.76338000871e-07 2792 -150901.633287 +0.00151285930408 0.55 8.76338000871e-07 2792 -155318.290283 +0.00151285930408 0.58 8.76338000871e-07 2792 -160218.045356 +0.00151285930408 0.61 8.76338000871e-07 2792 -165643.347354 +0.00151285930408 0.64 8.76338000871e-07 2792 -171646.391258 +0.00151285930408 0.67 8.76338000871e-07 2792 -178292.005482 +0.00151285930408 0.7 8.76338000871e-07 2792 -185661.704151 +0.00151285930408 0.73 8.76338000871e-07 2792 -193858.927174 +0.00151285930408 0.76 8.76338000871e-07 2792 -203017.370881 +0.00151285930408 0.79 8.76338000871e-07 2792 -213313.981561 +0.00151285930408 0.82 8.76338000871e-07 2792 -224990.461454 +0.00151285930408 0.85 8.76338000871e-07 2792 -238390.170536 +0.00151285930408 0.88 8.76338000871e-07 2792 -254028.192551 +0.00149031296572 0.01 2.14941354942e-06 6848 -147891.7945 +0.00149031296572 0.04 1.10107224465e-06 3508 -141454.659257 +0.00149031296572 0.07 9.13689083287e-07 2911 -135770.581633 +0.00149031296572 0.1 8.87009738704e-07 2826 -132442.101597 +0.00149031296572 0.13 8.78848998009e-07 2800 -130420.664655 +0.00149031296572 0.16 8.76338000871e-07 2792 -129262.776979 +0.00149031296572 0.19 8.76338000871e-07 2792 -128751.82694 +0.00149031296572 0.22 8.76338000871e-07 2792 -128766.969231 +0.00149031296572 0.25 8.76338000871e-07 2792 -129236.985864 +0.00149031296572 0.28 8.76338000871e-07 2792 -130118.732684 +0.00149031296572 0.31 8.76338000871e-07 2792 -131385.746612 +0.00149031296572 0.34 8.76338000871e-07 2792 -133023.316737 +0.00149031296572 0.37 8.76338000871e-07 2792 -135025.989113 +0.00149031296572 0.4 8.76338000871e-07 2792 -137393.305598 +0.00149031296572 0.43 8.76338000871e-07 2792 -140130.924764 +0.00149031296572 0.46 8.76338000871e-07 2792 -143250.076424 +0.00149031296572 0.49 8.76338000871e-07 2792 -146766.655953 +0.00149031296572 0.52 8.76338000871e-07 2792 -150701.442939 +0.00149031296572 0.55 8.76338000871e-07 2792 -155081.535476 +0.00149031296572 0.58 8.76338000871e-07 2792 -159940.523537 +0.00149031296572 0.61 8.76338000871e-07 2792 -165320.011121 +0.00149031296572 0.64 8.76338000871e-07 2792 -171271.643114 +0.00149031296572 0.67 8.76338000871e-07 2792 -177859.049273 +0.00149031296572 0.7 8.76338000871e-07 2792 -185162.404407 +0.00149031296572 0.73 8.76338000871e-07 2792 -193283.414948 +0.00149031296572 0.76 8.76338000871e-07 2792 -202353.365497 +0.00149031296572 0.79 8.76338000871e-07 2792 -212545.92882 +0.00149031296572 0.82 8.76338000871e-07 2792 -224097.853487 +0.00149031296572 0.85 8.76338000871e-07 2792 -237345.0849 +0.00149031296572 0.88 8.76338000871e-07 2792 -252790.491961 +0.0014684287812 0.01 2.14721642692e-06 6841 -147921.453232 +0.0014684287812 0.04 1.1029554925e-06 3514 -141507.057359 +0.0014684287812 0.07 9.13061334002e-07 2909 -135817.932583 +0.0014684287812 0.1 8.8638198942e-07 2824 -132483.801 +0.0014684287812 0.13 8.78848998009e-07 2800 -130456.022258 +0.0014684287812 0.16 8.76338000871e-07 2792 -129291.140067 +0.0014684287812 0.19 8.76338000871e-07 2792 -128771.785725 +0.0014684287812 0.22 8.76338000871e-07 2792 -128777.141262 +0.0014684287812 0.25 8.76338000871e-07 2792 -129235.768735 +0.0014684287812 0.28 8.76338000871e-07 2792 -130104.261627 +0.0014684287812 0.31 8.76338000871e-07 2792 -131356.470376 +0.0014684287812 0.34 8.76338000871e-07 2792 -132977.234661 +0.0014684287812 0.37 8.76338000871e-07 2792 -134960.825707 +0.0014684287812 0.4 8.76338000871e-07 2792 -137307.090404 +0.0014684287812 0.43 8.76338000871e-07 2792 -140021.148323 +0.0014684287812 0.46 8.76338000871e-07 2792 -143114.050769 +0.0014684287812 0.49 8.76338000871e-07 2792 -146601.374272 +0.0014684287812 0.52 8.76338000871e-07 2792 -150503.777266 +0.0014684287812 0.55 8.76338000871e-07 2792 -154847.690653 +0.0014684287812 0.58 8.76338000871e-07 2792 -159666.34133 +0.0014684287812 0.61 8.76338000871e-07 2792 -165000.619694 +0.0014684287812 0.64 8.76338000871e-07 2792 -170901.365954 +0.0014684287812 0.67 8.76338000871e-07 2792 -177431.362955 +0.0014684287812 0.7 8.76338000871e-07 2792 -184669.269374 +0.0014684287812 0.73 8.76338000871e-07 2792 -192715.06149 +0.0014684287812 0.76 8.76338000871e-07 2792 -201697.763806 +0.0014684287812 0.79 8.76338000871e-07 2792 -211787.769501 +0.0014684287812 0.82 8.76338000871e-07 2792 -223217.032215 +0.0014684287812 0.85 8.76338000871e-07 2792 -236314.22499 +0.0014684287812 0.88 8.76338000871e-07 2792 -251570.305669 +0.00144717800289 0.01 2.14533317907e-06 6835 -147951.068728 +0.00144717800289 0.04 1.10326936714e-06 3515 -141559.409097 +0.00144717800289 0.07 9.12433584718e-07 2907 -135865.245024 +0.00144717800289 0.1 8.85754240136e-07 2822 -132525.485863 +0.00144717800289 0.13 8.78221248724e-07 2798 -130491.525146 +0.00144717800289 0.16 8.76338000871e-07 2792 -129319.645965 +0.00144717800289 0.19 8.76338000871e-07 2792 -128791.933798 +0.00144717800289 0.22 8.76338000871e-07 2792 -128787.540619 +0.00144717800289 0.25 8.76338000871e-07 2792 -129234.781198 +0.00144717800289 0.28 8.76338000871e-07 2792 -130090.264802 +0.00144717800289 0.31 8.76338000871e-07 2792 -131327.806186 +0.00144717800289 0.34 8.76338000871e-07 2792 -132931.962503 +0.00144717800289 0.37 8.76338000871e-07 2792 -134896.653051 +0.00144717800289 0.4 8.76338000871e-07 2792 -137222.058447 +0.00144717800289 0.43 8.76338000871e-07 2792 -139912.892778 +0.00144717800289 0.46 8.76338000871e-07 2792 -142979.777621 +0.00144717800289 0.49 8.76338000871e-07 2792 -146438.151017 +0.00144717800289 0.52 8.76338000871e-07 2792 -150308.514215 +0.00144717800289 0.55 8.76338000871e-07 2792 -154616.699524 +0.00144717800289 0.58 8.76338000871e-07 2792 -159395.461595 +0.00144717800289 0.61 8.76338000871e-07 2792 -164685.12941 +0.00144717800289 0.64 8.76338000871e-07 2792 -170535.588302 +0.00144717800289 0.67 8.76338000871e-07 2792 -177008.864673 +0.00144717800289 0.7 8.76338000871e-07 2792 -184182.163472 +0.00144717800289 0.73 8.76338000871e-07 2792 -192153.779613 +0.00144717800289 0.76 8.76338000871e-07 2792 -201050.451089 +0.00144717800289 0.79 8.76338000871e-07 2792 -211039.347276 +0.00144717800289 0.82 8.76338000871e-07 2792 -222347.83443 +0.00144717800289 0.85 8.76338000871e-07 2792 -235297.38648 +0.00144717800289 0.88 8.76338000871e-07 2792 -250367.381413 +0.00142653352354 0.01 2.14376380586e-06 6830 -147980.662378 +0.00142653352354 0.04 1.10578036428e-06 3523 -141611.736322 +0.00142653352354 0.07 9.11805835434e-07 2905 -135912.501527 +0.00142653352354 0.1 8.84812616209e-07 2819 -132567.168033 +0.00142653352354 0.13 8.78221248724e-07 2798 -130527.149318 +0.00142653352354 0.16 8.76338000871e-07 2792 -129348.26836 +0.00142653352354 0.19 8.76338000871e-07 2792 -128812.214384 +0.00142653352354 0.22 8.76338000871e-07 2792 -128798.234463 +0.00142653352354 0.25 8.76338000871e-07 2792 -129234.169716 +0.00142653352354 0.28 8.76338000871e-07 2792 -130076.773946 +0.00142653352354 0.31 8.76338000871e-07 2792 -131299.71845 +0.00142653352354 0.34 8.76338000871e-07 2792 -132887.497934 +0.00142653352354 0.37 8.76338000871e-07 2792 -134833.508842 +0.00142653352354 0.4 8.76338000871e-07 2792 -137138.179329 +0.00142653352354 0.43 8.76338000871e-07 2792 -139806.064828 +0.00142653352354 0.46 8.76338000871e-07 2792 -142847.217493 +0.00142653352354 0.49 8.76338000871e-07 2792 -146277.045682 +0.00142653352354 0.52 8.76338000871e-07 2792 -150115.668849 +0.00142653352354 0.55 8.76338000871e-07 2792 -154388.546342 +0.00142653352354 0.58 8.76338000871e-07 2792 -159127.873606 +0.00142653352354 0.61 8.76338000871e-07 2792 -164373.437033 +0.00142653352354 0.64 8.76338000871e-07 2792 -170174.262869 +0.00142653352354 0.67 8.76338000871e-07 2792 -176591.435797 +0.00142653352354 0.7 8.76338000871e-07 2792 -183701.023184 +0.00142653352354 0.73 8.76338000871e-07 2792 -191599.480417 +0.00142653352354 0.76 8.76338000871e-07 2792 -200411.288261 +0.00142653352354 0.79 8.76338000871e-07 2792 -210300.556173 +0.00142653352354 0.82 8.76338000871e-07 2792 -221490.076356 +0.00142653352354 0.85 8.76338000871e-07 2792 -234294.368329 +0.00142653352354 0.88 8.76338000871e-07 2792 -249181.472311 +0.0014064697609 0.01 2.14282218193e-06 6827 -148010.238267 +0.0014064697609 0.04 1.1089191107e-06 3533 -141663.991079 +0.0014064697609 0.07 9.1117808615e-07 2903 -135959.821443 +0.0014064697609 0.1 8.84812616209e-07 2819 -132608.933946 +0.0014064697609 0.13 8.7759349944e-07 2796 -130562.885536 +0.0014064697609 0.16 8.76338000871e-07 2792 -129377.023736 +0.0014064697609 0.19 8.76338000871e-07 2792 -128832.689603 +0.0014064697609 0.22 8.76338000871e-07 2792 -128809.151799 +0.0014064697609 0.25 8.76338000871e-07 2792 -129234.011735 +0.0014064697609 0.28 8.76338000871e-07 2792 -130063.847337 +0.0014064697609 0.31 8.76338000871e-07 2792 -131272.185966 +0.0014064697609 0.34 8.76338000871e-07 2792 -132843.736369 +0.0014064697609 0.37 8.76338000871e-07 2792 -134771.414753 +0.0014064697609 0.4 8.76338000871e-07 2792 -137055.462219 +0.0014064697609 0.43 8.76338000871e-07 2792 -139700.601872 +0.0014064697609 0.46 8.76338000871e-07 2792 -142716.408278 +0.0014064697609 0.49 8.76338000871e-07 2792 -146118.001755 +0.0014064697609 0.52 8.76338000871e-07 2792 -149925.147477 +0.0014064697609 0.55 8.76338000871e-07 2792 -154163.169947 +0.0014064697609 0.58 8.76338000871e-07 2792 -158863.514756 +0.0014064697609 0.61 8.76338000871e-07 2792 -164065.470011 +0.0014064697609 0.64 8.76338000871e-07 2792 -169817.328949 +0.0014064697609 0.67 8.76338000871e-07 2792 -176179.080608 +0.0014064697609 0.7 8.76338000871e-07 2792 -183225.75667 +0.0014064697609 0.73 8.76338000871e-07 2792 -191052.022752 +0.0014064697609 0.76 8.76338000871e-07 2792 -199780.180165 +0.0014064697609 0.79 8.76338000871e-07 2792 -209571.26235 +0.0014064697609 0.82 8.76338000871e-07 2792 -220643.591828 +0.0014064697609 0.85 8.76338000871e-07 2792 -233304.963711 +0.0014064697609 0.88 8.76338000871e-07 2792 -248012.312002 +0.00138696255201 0.01 2.14125280872e-06 6822 -148039.805716 +0.00138696255201 0.04 1.11048848391e-06 3538 -141716.150516 +0.00138696255201 0.07 9.10236462223e-07 2900 -136007.180008 +0.00138696255201 0.1 8.84184866925e-07 2817 -132650.633693 +0.00138696255201 0.13 8.7759349944e-07 2796 -130598.630429 +0.00138696255201 0.16 8.76338000871e-07 2792 -129405.85403 +0.00138696255201 0.19 8.76338000871e-07 2792 -128853.440153 +0.00138696255201 0.22 8.76338000871e-07 2792 -128820.322217 +0.00138696255201 0.25 8.76338000871e-07 2792 -129234.157911 +0.00138696255201 0.28 8.76338000871e-07 2792 -130051.356613 +0.00138696255201 0.31 8.76338000871e-07 2792 -131245.217462 +0.00138696255201 0.34 8.76338000871e-07 2792 -132800.663718 +0.00138696255201 0.37 8.76338000871e-07 2792 -134710.268676 +0.00138696255201 0.4 8.76338000871e-07 2792 -136973.89232 +0.00138696255201 0.43 8.76338000871e-07 2792 -139596.517831 +0.00138696255201 0.46 8.76338000871e-07 2792 -142587.301012 +0.00138696255201 0.49 8.76338000871e-07 2792 -145960.91684 +0.00138696255201 0.52 8.76338000871e-07 2792 -149736.987776 +0.00138696255201 0.55 8.76338000871e-07 2792 -153940.509061 +0.00138696255201 0.58 8.76338000871e-07 2792 -158602.354167 +0.00138696255201 0.61 8.76338000871e-07 2792 -163761.216657 +0.00138696255201 0.64 8.76338000871e-07 2792 -169464.707283 +0.00138696255201 0.67 8.76338000871e-07 2792 -175771.75078 +0.00138696255201 0.7 8.76338000871e-07 2792 -182756.24304 +0.00138696255201 0.73 8.76338000871e-07 2792 -190511.335026 +0.00138696255201 0.76 8.76338000871e-07 2792 -199157.017314 +0.00138696255201 0.79 8.76338000871e-07 2792 -208851.303994 +0.00138696255201 0.82 8.76338000871e-07 2792 -219808.238355 +0.00138696255201 0.85 8.76338000871e-07 2792 -232328.959397 +0.00138696255201 0.88 8.76338000871e-07 2792 -246859.654063 +0.00136798905609 0.01 2.13999731015e-06 6818 -148069.343583 +0.00136798905609 0.04 1.11362723033e-06 3548 -141768.075396 +0.00136798905609 0.07 9.08980963655e-07 2896 -136054.517841 +0.00136798905609 0.1 8.83870992283e-07 2816 -132692.277892 +0.00136798905609 0.13 8.77279624798e-07 2795 -130634.414213 +0.00136798905609 0.16 8.76338000871e-07 2792 -129434.808588 +0.00136798905609 0.19 8.76338000871e-07 2792 -128874.416837 +0.00136798905609 0.22 8.76338000871e-07 2792 -128831.716101 +0.00136798905609 0.25 8.76338000871e-07 2792 -129234.5967 +0.00136798905609 0.28 8.76338000871e-07 2792 -130039.179047 +0.00136798905609 0.31 8.76338000871e-07 2792 -131218.811577 +0.00136798905609 0.34 8.76338000871e-07 2792 -132758.323485 +0.00136798905609 0.37 8.76338000871e-07 2792 -134650.061587 +0.00136798905609 0.4 8.76338000871e-07 2792 -136893.479361 +0.00136798905609 0.43 8.76338000871e-07 2792 -139493.759241 +0.00136798905609 0.46 8.76338000871e-07 2792 -142459.825917 +0.00136798905609 0.49 8.76338000871e-07 2792 -145805.801542 +0.00136798905609 0.52 8.76338000871e-07 2792 -149551.203028 +0.00136798905609 0.55 8.76338000871e-07 2792 -153720.529396 +0.00136798905609 0.58 8.76338000871e-07 2792 -158344.366721 +0.00136798905609 0.61 8.76338000871e-07 2792 -163460.625504 +0.00136798905609 0.64 8.76338000871e-07 2792 -169116.290734 +0.00136798905609 0.67 8.76338000871e-07 2792 -175369.371421 +0.00136798905609 0.7 8.76338000871e-07 2792 -182292.462425 +0.00136798905609 0.73 8.76338000871e-07 2792 -189977.312126 +0.00136798905609 0.76 8.76338000871e-07 2792 -198541.649937 +0.00136798905609 0.79 8.76338000871e-07 2792 -208140.573965 +0.00136798905609 0.82 8.76338000871e-07 2792 -218983.855316 +0.00136798905609 0.85 8.76338000871e-07 2792 -231366.162222 +0.00136798905609 0.88 8.76338000871e-07 2792 -245723.239447 +0.00134952766532 0.01 2.13936956087e-06 6816 -148098.864195 +0.00134952766532 0.04 1.11582435283e-06 3555 -141819.86843 +0.00134952766532 0.07 9.0835321437e-07 2894 -136101.934751 +0.00134952766532 0.1 8.83557117641e-07 2815 -132733.990113 +0.00134952766532 0.13 8.77279624798e-07 2795 -130670.290126 +0.00134952766532 0.16 8.76338000871e-07 2792 -129463.838526 +0.00134952766532 0.19 8.76338000871e-07 2792 -128895.56416 +0.00134952766532 0.22 8.76338000871e-07 2792 -128843.326304 +0.00134952766532 0.25 8.76338000871e-07 2792 -129235.33291 +0.00134952766532 0.28 8.76338000871e-07 2792 -130027.436236 +0.00134952766532 0.31 8.76338000871e-07 2792 -131192.998968 +0.00134952766532 0.34 8.76338000871e-07 2792 -132716.655486 +0.00134952766532 0.37 8.76338000871e-07 2792 -134590.720755 +0.00134952766532 0.4 8.76338000871e-07 2792 -136814.273905 +0.00134952766532 0.43 8.76338000871e-07 2792 -139392.344737 +0.00134952766532 0.46 8.76338000871e-07 2792 -142333.905505 +0.00134952766532 0.49 8.76338000871e-07 2792 -145652.652113 +0.00134952766532 0.52 8.76338000871e-07 2792 -149367.694533 +0.00134952766532 0.55 8.76338000871e-07 2792 -153503.191932 +0.00134952766532 0.58 8.76338000871e-07 2792 -158089.446046 +0.00134952766532 0.61 8.76338000871e-07 2792 -163163.640084 +0.00134952766532 0.64 8.76338000871e-07 2792 -168772.064672 +0.00134952766532 0.67 8.76338000871e-07 2792 -174971.873557 +0.00134952766532 0.7 8.76338000871e-07 2792 -181834.359955 +0.00134952766532 0.73 8.76338000871e-07 2792 -189449.829172 +0.00134952766532 0.76 8.76338000871e-07 2792 -197933.992644 +0.00134952766532 0.79 8.76338000871e-07 2792 -207438.937876 +0.00134952766532 0.82 8.76338000871e-07 2792 -218170.26264 +0.00134952766532 0.85 8.76338000871e-07 2792 -230416.388764 +0.00134952766532 0.88 8.76338000871e-07 2792 -244602.805168 +0.00133155792277 0.01 2.13623081445e-06 6806 -148128.321699 +0.00133155792277 0.04 1.11833534997e-06 3563 -141871.569403 +0.00133155792277 0.07 9.0835321437e-07 2894 -136149.380837 +0.00133155792277 0.1 8.82929368356e-07 2813 -132775.674892 +0.00133155792277 0.13 8.76965750156e-07 2794 -130706.297133 +0.00133155792277 0.16 8.76338000871e-07 2792 -129493.021749 +0.00133155792277 0.19 8.76338000871e-07 2792 -128916.796581 +0.00133155792277 0.22 8.76338000871e-07 2792 -128855.094987 +0.00133155792277 0.25 8.76338000871e-07 2792 -129236.404501 +0.00133155792277 0.28 8.76338000871e-07 2792 -130016.193797 +0.00133155792277 0.31 8.76338000871e-07 2792 -131167.822146 +0.00133155792277 0.34 8.76338000871e-07 2792 -132675.643997 +0.00133155792277 0.37 8.76338000871e-07 2792 -134532.199811 +0.00133155792277 0.4 8.76338000871e-07 2792 -136736.179545 +0.00133155792277 0.43 8.76338000871e-07 2792 -139292.251591 +0.00133155792277 0.46 8.76338000871e-07 2792 -142209.576933 +0.00133155792277 0.49 8.76338000871e-07 2792 -145501.402112 +0.00133155792277 0.52 8.76338000871e-07 2792 -149186.394945 +0.00133155792277 0.55 8.76338000871e-07 2792 -153288.524689 +0.00133155792277 0.58 8.76338000871e-07 2792 -157837.590713 +0.00133155792277 0.61 8.76338000871e-07 2792 -162870.241788 +0.00133155792277 0.64 8.76338000871e-07 2792 -168431.979243 +0.00133155792277 0.67 8.76338000871e-07 2792 -174579.134786 +0.00133155792277 0.7 8.76338000871e-07 2792 -181381.850238 +0.00133155792277 0.73 8.76338000871e-07 2792 -188928.842235 +0.00133155792277 0.76 8.76338000871e-07 2792 -197333.9251 +0.00133155792277 0.79 8.76338000871e-07 2792 -206746.233792 +0.00133155792277 0.82 8.76338000871e-07 2792 -217367.326413 +0.00133155792277 0.85 8.76338000871e-07 2792 -229479.439203 +0.00133155792277 0.88 8.76338000871e-07 2792 -243498.116687 +0.00131406044678 0.01 2.13434756659e-06 6800 -148157.676317 +0.00131406044678 0.04 1.12116022175e-06 3572 -141923.098369 +0.00131406044678 0.07 9.0835321437e-07 2894 -136196.870193 +0.00131406044678 0.1 8.82615493714e-07 2812 -132817.371239 +0.00131406044678 0.13 8.76651875514e-07 2793 -130742.301155 +0.00131406044678 0.16 8.76338000871e-07 2792 -129522.29796 +0.00131406044678 0.19 8.76338000871e-07 2792 -128938.177177 +0.00131406044678 0.22 8.76338000871e-07 2792 -128867.079212 +0.00131406044678 0.25 8.76338000871e-07 2792 -129237.706882 +0.00131406044678 0.28 8.76338000871e-07 2792 -130005.35379 +0.00131406044678 0.31 8.76338000871e-07 2792 -131143.150326 +0.00131406044678 0.34 8.76338000871e-07 2792 -132635.321718 +0.00131406044678 0.37 8.76338000871e-07 2792 -134474.544138 +0.00131406044678 0.4 8.76338000871e-07 2792 -136659.160385 +0.00131406044678 0.43 8.76338000871e-07 2792 -139193.478825 +0.00131406044678 0.46 8.76338000871e-07 2792 -142086.769376 +0.00131406044678 0.49 8.76338000871e-07 2792 -145352.014811 +0.00131406044678 0.52 8.76338000871e-07 2792 -149007.332281 +0.00131406044678 0.55 8.76338000871e-07 2792 -153076.48191 +0.00131406044678 0.58 8.76338000871e-07 2792 -157588.714522 +0.00131406044678 0.61 8.76338000871e-07 2792 -162580.331804 +0.00131406044678 0.64 8.76338000871e-07 2792 -168095.968672 +0.00131406044678 0.67 8.76338000871e-07 2792 -174191.126419 +0.00131406044678 0.7 8.76338000871e-07 2792 -180934.861749 +0.00131406044678 0.73 8.76338000871e-07 2792 -188414.285745 +0.00131406044678 0.76 8.76338000871e-07 2792 -196741.315107 +0.00131406044678 0.79 8.76338000871e-07 2792 -206062.358505 +0.00131406044678 0.82 8.76338000871e-07 2792 -216574.886416 +0.00131406044678 0.85 8.76338000871e-07 2792 -228555.111594 +0.00131406044678 0.88 8.76338000871e-07 2792 -242408.934935 +0.00129701686122 0.01 2.13371981731e-06 6798 -148186.969876 +0.00129701686122 0.04 1.12272959496e-06 3577 -141974.518923 +0.00129701686122 0.07 9.07097715802e-07 2890 -136244.349788 +0.00129701686122 0.1 8.82301619072e-07 2811 -132859.13452 +0.00129701686122 0.13 8.76651875514e-07 2793 -130778.300909 +0.00129701686122 0.16 8.76338000871e-07 2792 -129551.695984 +0.00129701686122 0.19 8.76338000871e-07 2792 -128959.657886 +0.00129701686122 0.22 8.76338000871e-07 2792 -128879.338756 +0.00129701686122 0.25 8.76338000871e-07 2792 -129239.343987 +0.00129701686122 0.28 8.76338000871e-07 2792 -129994.879282 +0.00129701686122 0.31 8.76338000871e-07 2792 -131118.901789 +0.00129701686122 0.34 8.76338000871e-07 2792 -132595.672493 +0.00129701686122 0.37 8.76338000871e-07 2792 -134417.71116 +0.00129701686122 0.4 8.76338000871e-07 2792 -136583.198717 +0.00129701686122 0.43 8.76338000871e-07 2792 -139096.080586 +0.00129701686122 0.46 8.76338000871e-07 2792 -141965.507794 +0.00129701686122 0.49 8.76338000871e-07 2792 -145204.401848 +0.00129701686122 0.52 8.76338000871e-07 2792 -148830.474157 +0.00129701686122 0.55 8.76338000871e-07 2792 -152866.978662 +0.00129701686122 0.58 8.76338000871e-07 2792 -157342.831852 +0.00129701686122 0.61 8.76338000871e-07 2792 -162293.882744 +0.00129701686122 0.64 8.76338000871e-07 2792 -167763.993076 +0.00129701686122 0.67 8.76338000871e-07 2792 -173807.79663 +0.00129701686122 0.7 8.76338000871e-07 2792 -180493.266826 +0.00129701686122 0.73 8.76338000871e-07 2792 -187906.063092 +0.00129701686122 0.76 8.76338000871e-07 2792 -196156.093863 +0.00129701686122 0.79 8.76338000871e-07 2792 -205387.172076 +0.00129701686122 0.82 8.76338000871e-07 2792 -215792.761594 +0.00129701686122 0.85 8.76338000871e-07 2792 -227643.233255 +0.00129701686122 0.88 8.76338000871e-07 2792 -241335.011586 +0.00128040973111 0.01 2.13058107089e-06 6788 -148216.166883 +0.00128040973111 0.04 1.12618221602e-06 3588 -142025.773791 +0.00128040973111 0.07 9.06156091875e-07 2887 -136291.7299 +0.00128040973111 0.1 8.81673869788e-07 2809 -132900.836041 +0.00128040973111 0.13 8.76338000871e-07 2792 -130814.323246 +0.00128040973111 0.16 8.76338000871e-07 2792 -129581.161368 +0.00128040973111 0.19 8.76338000871e-07 2792 -128981.229989 +0.00128040973111 0.22 8.76338000871e-07 2792 -128891.855314 +0.00128040973111 0.25 8.76338000871e-07 2792 -129241.232242 +0.00128040973111 0.28 8.76338000871e-07 2792 -129984.76031 +0.00128040973111 0.31 8.76338000871e-07 2792 -131095.178347 +0.00128040973111 0.34 8.76338000871e-07 2792 -132556.738723 +0.00128040973111 0.37 8.76338000871e-07 2792 -134361.686141 +0.00128040973111 0.4 8.76338000871e-07 2792 -136508.218988 +0.00128040973111 0.43 8.76338000871e-07 2792 -138999.971938 +0.00128040973111 0.46 8.76338000871e-07 2792 -141845.761191 +0.00128040973111 0.49 8.76338000871e-07 2792 -145058.607724 +0.00128040973111 0.52 8.76338000871e-07 2792 -148655.749387 +0.00128040973111 0.55 8.76338000871e-07 2792 -152659.974877 +0.00128040973111 0.58 8.76338000871e-07 2792 -157099.938311 +0.00128040973111 0.61 8.76338000871e-07 2792 -162010.826432 +0.00128040973111 0.64 8.76338000871e-07 2792 -167435.989086 +0.00128040973111 0.67 8.76338000871e-07 2792 -173429.065889 +0.00128040973111 0.7 8.76338000871e-07 2792 -180057.017675 +0.00128040973111 0.73 8.76338000871e-07 2792 -187404.094118 +0.00128040973111 0.76 8.76338000871e-07 2792 -195578.181737 +0.00128040973111 0.79 8.76338000871e-07 2792 -204720.53073 +0.00128040973111 0.82 8.76338000871e-07 2792 -215020.824888 +0.00128040973111 0.85 8.76338000871e-07 2792 -226743.609895 +0.00128040973111 0.88 8.76338000871e-07 2792 -240276.105333 +0.00126422250316 0.01 2.12712844982e-06 6777 -148245.257377 +0.00126422250316 0.04 1.12932096244e-06 3598 -142076.839229 +0.00126422250316 0.07 9.06156091875e-07 2887 -136339.059868 +0.00126422250316 0.1 8.81673869788e-07 2809 -132942.481406 +0.00126422250316 0.13 8.76338000871e-07 2792 -130850.365956 +0.00126422250316 0.16 8.76338000871e-07 2792 -129610.65228 +0.00126422250316 0.19 8.76338000871e-07 2792 -129002.916375 +0.00126422250316 0.22 8.76338000871e-07 2792 -128904.559282 +0.00126422250316 0.25 8.76338000871e-07 2792 -129243.380423 +0.00126422250316 0.28 8.76338000871e-07 2792 -129975.049426 +0.00126422250316 0.31 8.76338000871e-07 2792 -131072.031018 +0.00126422250316 0.34 8.76338000871e-07 2792 -132518.518875 +0.00126422250316 0.37 8.76338000871e-07 2792 -134306.4604 +0.00126422250316 0.4 8.76338000871e-07 2792 -136434.235024 +0.00126422250316 0.43 8.76338000871e-07 2792 -138905.103259 +0.00126422250316 0.46 8.76338000871e-07 2792 -141727.521982 +0.00126422250316 0.49 8.76338000871e-07 2792 -144914.549745 +0.00126422250316 0.52 8.76338000871e-07 2792 -148483.121826 +0.00126422250316 0.55 8.76338000871e-07 2792 -152455.481533 +0.00126422250316 0.58 8.76338000871e-07 2792 -156859.950309 +0.00126422250316 0.61 8.76338000871e-07 2792 -161731.131248 +0.00126422250316 0.64 8.76338000871e-07 2792 -167111.880965 +0.00126422250316 0.67 8.76338000871e-07 2792 -173054.885557 +0.00126422250316 0.7 8.76338000871e-07 2792 -179626.054453 +0.00126422250316 0.73 8.76338000871e-07 2792 -186908.248131 +0.00126422250316 0.76 8.76338000871e-07 2792 -195007.467909 +0.00126422250316 0.79 8.76338000871e-07 2792 -204062.339971 +0.00126422250316 0.82 8.76338000871e-07 2792 -214258.912025 +0.00126422250316 0.85 8.76338000871e-07 2792 -225856.035372 +0.00126422250316 0.88 8.76338000871e-07 2792 -239231.991245 +0.00124843945069 0.01 2.12493132733e-06 6770 -148274.216781 +0.00124843945069 0.04 1.13402908207e-06 3613 -142127.690155 +0.00124843945069 0.07 9.05214467949e-07 2884 -136386.300559 +0.00124843945069 0.1 8.81673869788e-07 2809 -132984.058496 +0.00124843945069 0.13 8.76338000871e-07 2792 -130886.325714 +0.00124843945069 0.16 8.76338000871e-07 2792 -129640.177292 +0.00124843945069 0.19 8.76338000871e-07 2792 -129024.705466 +0.00124843945069 0.22 8.76338000871e-07 2792 -128917.414597 +0.00124843945069 0.25 8.76338000871e-07 2792 -129245.750268 +0.00124843945069 0.28 8.76338000871e-07 2792 -129965.679485 +0.00124843945069 0.31 8.76338000871e-07 2792 -131049.388073 +0.00124843945069 0.34 8.76338000871e-07 2792 -132480.893453 +0.00124843945069 0.37 8.76338000871e-07 2792 -134252.032353 +0.00124843945069 0.4 8.76338000871e-07 2792 -136361.24493 +0.00124843945069 0.43 8.76338000871e-07 2792 -138811.479755 +0.00124843945069 0.46 8.76338000871e-07 2792 -141610.841067 +0.00124843945069 0.49 8.76338000871e-07 2792 -144772.259105 +0.00124843945069 0.52 8.76338000871e-07 2792 -148312.522449 +0.00124843945069 0.55 8.76338000871e-07 2792 -152253.458021 +0.00124843945069 0.58 8.76338000871e-07 2792 -156622.791801 +0.00124843945069 0.61 8.76338000871e-07 2792 -161454.793724 +0.00124843945069 0.64 8.76338000871e-07 2792 -166791.63199 +0.00124843945069 0.67 8.76338000871e-07 2792 -172685.208046 +0.00124843945069 0.7 8.76338000871e-07 2792 -179200.294176 +0.00124843945069 0.73 8.76338000871e-07 2792 -186418.455493 +0.00124843945069 0.76 8.76338000871e-07 2792 -194443.859166 +0.00124843945069 0.79 8.76338000871e-07 2792 -203412.50052 +0.00124843945069 0.82 8.76338000871e-07 2792 -213506.861899 +0.00124843945069 0.85 8.76338000871e-07 2792 -224980.348268 +0.00124843945069 0.88 8.76338000871e-07 2792 -238202.428574 +0.00123304562269 0.01 2.1239897034e-06 6767 -148303.098326 +0.00123304562269 0.04 1.13654007921e-06 3621 -142178.308363 +0.00123304562269 0.07 9.04586718665e-07 2882 -136433.471965 +0.00123304562269 0.1 8.81359995146e-07 2808 -133025.690871 +0.00123304562269 0.13 8.76338000871e-07 2792 -130922.260517 +0.00123304562269 0.16 8.76338000871e-07 2792 -129669.793285 +0.00123304562269 0.19 8.76338000871e-07 2792 -129046.635894 +0.00123304562269 0.22 8.76338000871e-07 2792 -128930.425078 +0.00123304562269 0.25 8.76338000871e-07 2792 -129248.392329 +0.00123304562269 0.28 8.76338000871e-07 2792 -129956.670646 +0.00123304562269 0.31 8.76338000871e-07 2792 -131027.204885 +0.00123304562269 0.34 8.76338000871e-07 2792 -132443.82264 +0.00123304562269 0.37 8.76338000871e-07 2792 -134198.418725 +0.00123304562269 0.4 8.76338000871e-07 2792 -136289.215307 +0.00123304562269 0.43 8.76338000871e-07 2792 -138719.017327 +0.00123304562269 0.46 8.76338000871e-07 2792 -141495.639405 +0.00123304562269 0.49 8.76338000871e-07 2792 -144631.695237 +0.00123304562269 0.52 8.76338000871e-07 2792 -148143.981275 +0.00123304562269 0.55 8.76338000871e-07 2792 -152053.826307 +0.00123304562269 0.58 8.76338000871e-07 2792 -156388.4639 +0.00123304562269 0.61 8.76338000871e-07 2792 -161181.765655 +0.00123304562269 0.64 8.76338000871e-07 2792 -166475.163527 +0.00123304562269 0.67 8.76338000871e-07 2792 -172319.921687 +0.00123304562269 0.7 8.76338000871e-07 2792 -178779.670781 +0.00123304562269 0.73 8.76338000871e-07 2792 -185934.644989 +0.00123304562269 0.76 8.76338000871e-07 2792 -193887.22292 +0.00123304562269 0.79 8.76338000871e-07 2792 -202770.884258 +0.00123304562269 0.82 8.76338000871e-07 2792 -212764.550511 +0.00123304562269 0.85 8.76338000871e-07 2792 -224116.353617 +0.00123304562269 0.88 8.76338000871e-07 2792 -237187.173408 +0.00121802679659 0.01 2.12179258091e-06 6760 -148331.896982 +0.00121802679659 0.04 1.1431314467e-06 3642 -142228.680041 +0.00121802679659 0.07 9.03331220096e-07 2878 -136480.564836 +0.00121802679659 0.1 8.81046120504e-07 2807 -133067.287133 +0.00121802679659 0.13 8.76338000871e-07 2792 -130958.233571 +0.00121802679659 0.16 8.76338000871e-07 2792 -129699.518706 +0.00121802679659 0.19 8.76338000871e-07 2792 -129068.663572 +0.00121802679659 0.22 8.76338000871e-07 2792 -128943.59736 +0.00121802679659 0.25 8.76338000871e-07 2792 -129251.356245 +0.00121802679659 0.28 8.76338000871e-07 2792 -129948.027801 +0.00121802679659 0.31 8.76338000871e-07 2792 -131005.468559 +0.00121802679659 0.34 8.76338000871e-07 2792 -132407.38493 +0.00121802679659 0.37 8.76338000871e-07 2792 -134145.651692 +0.00121802679659 0.4 8.76338000871e-07 2792 -136218.123348 +0.00121802679659 0.43 8.76338000871e-07 2792 -138627.702037 +0.00121802679659 0.46 8.76338000871e-07 2792 -141381.867168 +0.00121802679659 0.49 8.76338000871e-07 2792 -144492.84622 +0.00121802679659 0.52 8.76338000871e-07 2792 -147977.414345 +0.00121802679659 0.55 8.76338000871e-07 2792 -151856.55017 +0.00121802679659 0.58 8.76338000871e-07 2792 -156156.935012 +0.00121802679659 0.61 8.76338000871e-07 2792 -160911.965192 +0.00121802679659 0.64 8.76338000871e-07 2792 -166162.465035 +0.00121802679659 0.67 8.76338000871e-07 2792 -171959.004926 +0.00121802679659 0.7 8.76338000871e-07 2792 -178364.130386 +0.00121802679659 0.73 8.76338000871e-07 2792 -185456.731633 +0.00121802679659 0.76 8.76338000871e-07 2792 -193337.462473 +0.00121802679659 0.79 8.76338000871e-07 2792 -202137.381658 +0.00121802679659 0.82 8.76338000871e-07 2792 -212031.853594 +0.00121802679659 0.85 8.76338000871e-07 2792 -223263.864495 +0.00121802679659 0.88 8.76338000871e-07 2792 -236186.015684 +0.00120336943442 0.01 2.11990933305e-06 6754 -148360.592082 +0.00120336943442 0.04 1.14972281418e-06 3663 -142278.759985 +0.00120336943442 0.07 9.02075721527e-07 2874 -136527.545137 +0.00120336943442 0.1 8.80732245861e-07 2806 -133108.857376 +0.00120336943442 0.13 8.76338000871e-07 2792 -130994.205752 +0.00120336943442 0.16 8.76338000871e-07 2792 -129729.241768 +0.00120336943442 0.19 8.76338000871e-07 2792 -129090.817881 +0.00120336943442 0.22 8.76338000871e-07 2792 -128956.90077 +0.00120336943442 0.25 8.76338000871e-07 2792 -129254.614797 +0.00120336943442 0.28 8.76338000871e-07 2792 -129939.720979 +0.00120336943442 0.31 8.76338000871e-07 2792 -130984.220759 +0.00120336943442 0.34 8.76338000871e-07 2792 -132371.620326 +0.00120336943442 0.37 8.76338000871e-07 2792 -134093.690256 +0.00120336943442 0.4 8.76338000871e-07 2792 -136147.994714 +0.00120336943442 0.43 8.76338000871e-07 2792 -138537.564612 +0.00120336943442 0.46 8.76338000871e-07 2792 -141269.527191 +0.00120336943442 0.49 8.76338000871e-07 2792 -144355.756445 +0.00120336943442 0.52 8.76338000871e-07 2792 -147812.852951 +0.00120336943442 0.55 8.76338000871e-07 2792 -151661.577674 +0.00120336943442 0.58 8.76338000871e-07 2792 -155928.154111 +0.00120336943442 0.61 8.76338000871e-07 2792 -160645.336683 +0.00120336943442 0.64 8.76338000871e-07 2792 -165853.512778 +0.00120336943442 0.67 8.76338000871e-07 2792 -171602.361756 +0.00120336943442 0.7 8.76338000871e-07 2792 -177953.571909 +0.00120336943442 0.73 8.76338000871e-07 2792 -184984.629376 +0.00120336943442 0.76 8.76338000871e-07 2792 -192794.494772 +0.00120336943442 0.79 8.76338000871e-07 2792 -201511.851646 +0.00120336943442 0.82 8.76338000871e-07 2792 -211308.621561 +0.00120336943442 0.85 8.76338000871e-07 2792 -222422.721056 +0.00120336943442 0.88 8.76338000871e-07 2792 -235198.718958 +0.00118906064209 0.01 2.11865383448e-06 6750 -148389.20324 +0.00118906064209 0.04 1.15600030702e-06 3683 -142328.536871 +0.00118906064209 0.07 9.02075721527e-07 2874 -136574.483848 +0.00118906064209 0.1 8.79790621935e-07 2803 -133150.414749 +0.00118906064209 0.13 8.76338000871e-07 2792 -131030.152672 +0.00118906064209 0.16 8.76338000871e-07 2792 -129758.977891 +0.00118906064209 0.19 8.76338000871e-07 2792 -129113.072881 +0.00118906064209 0.22 8.76338000871e-07 2792 -128970.348754 +0.00118906064209 0.25 8.76338000871e-07 2792 -129258.113471 +0.00118906064209 0.28 8.76338000871e-07 2792 -129931.715614 +0.00118906064209 0.31 8.76338000871e-07 2792 -130963.428878 +0.00118906064209 0.34 8.76338000871e-07 2792 -132336.467603 +0.00118906064209 0.37 8.76338000871e-07 2792 -134042.42602 +0.00118906064209 0.4 8.76338000871e-07 2792 -136078.804282 +0.00118906064209 0.43 8.76338000871e-07 2792 -138448.553077 +0.00118906064209 0.46 8.76338000871e-07 2792 -141158.548764 +0.00118906064209 0.49 8.76338000871e-07 2792 -144220.349848 +0.00118906064209 0.52 8.76338000871e-07 2792 -147650.248449 +0.00118906064209 0.55 8.76338000871e-07 2792 -151468.919957 +0.00118906064209 0.58 8.76338000871e-07 2792 -155702.064542 +0.00118906064209 0.61 8.76338000871e-07 2792 -160381.875824 +0.00118906064209 0.64 8.76338000871e-07 2792 -165548.224552 +0.00118906064209 0.67 8.76338000871e-07 2792 -171249.961144 +0.00118906064209 0.7 8.76338000871e-07 2792 -177547.931559 +0.00118906064209 0.73 8.76338000871e-07 2792 -184518.268686 +0.00118906064209 0.76 8.76338000871e-07 2792 -192258.225418 +0.00118906064209 0.79 8.76338000871e-07 2792 -200894.172849 +0.00118906064209 0.82 8.76338000871e-07 2792 -210594.722211 +0.00118906064209 0.85 8.76338000871e-07 2792 -221592.76623 +0.00118906064209 0.88 8.76338000871e-07 2792 -234225.05674 +0.00117508813161 0.01 2.11708446127e-06 6745 -148417.723679 +0.00117508813161 0.04 1.15976680273e-06 3695 -142378.042517 +0.00117508813161 0.07 9.02075721527e-07 2874 -136621.352945 +0.00117508813161 0.1 8.79476747293e-07 2802 -133191.922722 +0.00117508813161 0.13 8.76338000871e-07 2792 -131066.151386 +0.00117508813161 0.16 8.76338000871e-07 2792 -129788.740284 +0.00117508813161 0.19 8.76338000871e-07 2792 -129135.35852 +0.00117508813161 0.22 8.76338000871e-07 2792 -128983.924342 +0.00117508813161 0.25 8.76338000871e-07 2792 -129261.828177 +0.00117508813161 0.28 8.76338000871e-07 2792 -129924.036152 +0.00117508813161 0.31 8.76338000871e-07 2792 -130943.054592 +0.00117508813161 0.34 8.76338000871e-07 2792 -132301.882968 +0.00117508813161 0.37 8.76338000871e-07 2792 -133991.864627 +0.00117508813161 0.4 8.76338000871e-07 2792 -136010.564677 +0.00117508813161 0.43 8.76338000871e-07 2792 -138360.661666 +0.00117508813161 0.46 8.76338000871e-07 2792 -141048.897265 +0.00117508813161 0.49 8.76338000871e-07 2792 -144086.580327 +0.00117508813161 0.52 8.76338000871e-07 2792 -147489.584793 +0.00117508813161 0.55 8.76338000871e-07 2792 -151278.497104 +0.00117508813161 0.58 8.76338000871e-07 2792 -155478.605148 +0.00117508813161 0.61 8.76338000871e-07 2792 -160121.53602 +0.00117508813161 0.64 8.76338000871e-07 2792 -165246.523875 +0.00117508813161 0.67 8.76338000871e-07 2792 -170901.769712 +0.00117508813161 0.7 8.76338000871e-07 2792 -177147.145228 +0.00117508813161 0.73 8.76338000871e-07 2792 -184057.562038 +0.00117508813161 0.76 8.76338000871e-07 2792 -191728.553577 +0.00117508813161 0.79 8.76338000871e-07 2792 -200284.2451 +0.00117508813161 0.82 8.76338000871e-07 2792 -209890.001137 +0.00117508813161 0.85 8.76338000871e-07 2792 -220773.822206 +0.00117508813161 0.88 8.76338000871e-07 2792 -233264.822557 +0.00116144018583 0.01 2.11488733878e-06 6738 -148446.13546 +0.00116144018583 0.04 1.17797153197e-06 3753 -142427.138869 +0.00116144018583 0.07 9.01134097601e-07 2871 -136668.125157 +0.00116144018583 0.1 8.79476747293e-07 2802 -133233.425536 +0.00116144018583 0.13 8.76338000871e-07 2792 -131102.153019 +0.00116144018583 0.16 8.76338000871e-07 2792 -129818.538994 +0.00116144018583 0.19 8.76338000871e-07 2792 -129157.700703 +0.00116144018583 0.22 8.76338000871e-07 2792 -128997.666864 +0.00116144018583 0.25 8.76338000871e-07 2792 -129265.750593 +0.00116144018583 0.28 8.76338000871e-07 2792 -129916.698485 +0.00116144018583 0.31 8.76338000871e-07 2792 -130923.163555 +0.00116144018583 0.34 8.76338000871e-07 2792 -132267.852463 +0.00116144018583 0.37 8.76338000871e-07 2792 -133942.058014 +0.00116144018583 0.4 8.76338000871e-07 2792 -135943.304174 +0.00116144018583 0.43 8.76338000871e-07 2792 -138273.87445 +0.00116144018583 0.46 8.76338000871e-07 2792 -140940.602251 +0.00116144018583 0.49 8.76338000871e-07 2792 -143954.442528 +0.00116144018583 0.52 8.76338000871e-07 2792 -147330.89834 +0.00116144018583 0.55 8.76338000871e-07 2792 -151090.33492 +0.00116144018583 0.58 8.76338000871e-07 2792 -155257.751447 +0.00116144018583 0.61 8.76338000871e-07 2792 -159864.250571 +0.00116144018583 0.64 8.76338000871e-07 2792 -164948.376526 +0.00116144018583 0.67 8.76338000871e-07 2792 -170557.727901 +0.00116144018583 0.7 8.76338000871e-07 2792 -176751.130509 +0.00116144018583 0.73 8.76338000871e-07 2792 -183602.414493 +0.00116144018583 0.76 8.76338000871e-07 2792 -191205.392061 +0.00116144018583 0.79 8.76338000871e-07 2792 -199681.961585 +0.00116144018583 0.82 8.76338000871e-07 2792 -209194.308944 +0.00116144018583 0.85 8.76338000871e-07 2792 -219965.726285 +0.00116144018583 0.88 8.76338000871e-07 2792 -232317.814436 +0.00114810562572 0.01 2.11143471772e-06 6727 -148474.41037 +0.00114810562572 0.04 1.1908403923e-06 3794 -142475.762627 +0.00114810562572 0.07 9.00820222959e-07 2870 -136714.733084 +0.00114810562572 0.1 8.78848998009e-07 2800 -133274.8848 +0.00114810562572 0.13 8.76338000871e-07 2792 -131138.07787 +0.00114810562572 0.16 8.76338000871e-07 2792 -129848.275504 +0.00114810562572 0.19 8.76338000871e-07 2792 -129180.138374 +0.00114810562572 0.22 8.76338000871e-07 2792 -129011.568315 +0.00114810562572 0.25 8.76338000871e-07 2792 -129269.897222 +0.00114810562572 0.28 8.76338000871e-07 2792 -129909.752422 +0.00114810562572 0.31 8.76338000871e-07 2792 -130903.687109 +0.00114810562572 0.34 8.76338000871e-07 2792 -132234.402676 +0.00114810562572 0.37 8.76338000871e-07 2792 -133893.036899 +0.00114810562572 0.4 8.76338000871e-07 2792 -135876.961453 +0.00114810562572 0.43 8.76338000871e-07 2792 -138188.18239 +0.00114810562572 0.46 8.76338000871e-07 2792 -140833.625409 +0.00114810562572 0.49 8.76338000871e-07 2792 -143823.87221 +0.00114810562572 0.52 8.76338000871e-07 2792 -147174.116438 +0.00114810562572 0.55 8.76338000871e-07 2792 -150904.378625 +0.00114810562572 0.58 8.76338000871e-07 2792 -155039.488391 +0.00114810562572 0.61 8.76338000871e-07 2792 -159609.980526 +0.00114810562572 0.64 8.76338000871e-07 2792 -164653.754855 +0.00114810562572 0.67 8.76338000871e-07 2792 -170217.751837 +0.00114810562572 0.7 8.76338000871e-07 2792 -176359.852862 +0.00114810562572 0.73 8.76338000871e-07 2792 -183152.765202 +0.00114810562572 0.76 8.76338000871e-07 2792 -190688.657462 +0.00114810562572 0.79 8.76338000871e-07 2792 -199087.201545 +0.00114810562572 0.82 8.76338000871e-07 2792 -208507.525374 +0.00114810562572 0.85 8.76338000871e-07 2792 -219168.30228 +0.00114810562572 0.88 8.76338000871e-07 2792 -231383.815576 +0.0011350737798 0.01 2.11112084307e-06 6726 -148502.575868 +0.0011350737798 0.04 1.20684799905e-06 3845 -142523.902086 +0.0011350737798 0.07 8.99878599032e-07 2867 -136761.20994 +0.0011350737798 0.1 8.78848998009e-07 2800 -133316.296804 +0.0011350737798 0.13 8.76338000871e-07 2792 -131173.94617 +0.0011350737798 0.16 8.76338000871e-07 2792 -129877.975562 +0.0011350737798 0.19 8.76338000871e-07 2792 -129202.681882 +0.0011350737798 0.22 8.76338000871e-07 2792 -129025.618596 +0.0011350737798 0.25 8.76338000871e-07 2792 -129274.240286 +0.0011350737798 0.28 8.76338000871e-07 2792 -129903.150568 +0.0011350737798 0.31 8.76338000871e-07 2792 -130884.639348 +0.0011350737798 0.34 8.76338000871e-07 2792 -132201.531505 +0.0011350737798 0.37 8.76338000871e-07 2792 -133844.738822 +0.0011350737798 0.4 8.76338000871e-07 2792 -135811.43359 +0.0011350737798 0.43 8.76338000871e-07 2792 -138103.590431 +0.0011350737798 0.46 8.76338000871e-07 2792 -140727.947982 +0.0011350737798 0.49 8.76338000871e-07 2792 -143694.838353 +0.0011350737798 0.52 8.76338000871e-07 2792 -147019.193192 +0.0011350737798 0.55 8.76338000871e-07 2792 -150720.60887 +0.0011350737798 0.58 8.76338000871e-07 2792 -154823.74169 +0.0011350737798 0.61 8.76338000871e-07 2792 -159358.643884 +0.0011350737798 0.64 8.76338000871e-07 2792 -164362.609496 +0.0011350737798 0.67 8.76338000871e-07 2792 -169881.772703 +0.0011350737798 0.7 8.76338000871e-07 2792 -175973.264517 +0.0011350737798 0.73 8.76338000871e-07 2792 -182708.512055 +0.0011350737798 0.76 8.76338000871e-07 2792 -190178.224805 +0.0011350737798 0.79 8.76338000871e-07 2792 -198499.862796 +0.0011350737798 0.82 8.76338000871e-07 2792 -207829.5231 +0.0011350737798 0.85 8.76338000871e-07 2792 -218381.370594 +0.0011350737798 0.88 8.76338000871e-07 2792 -230462.621152 +0.00112233445567 0.01 2.10955146986e-06 6721 -148530.660339 +0.00112233445567 0.04 1.22724985079e-06 3910 -142571.522126 +0.00112233445567 0.07 8.99878599032e-07 2867 -136807.600729 +0.00112233445567 0.1 8.78848998009e-07 2800 -133357.59837 +0.00112233445567 0.13 8.76338000871e-07 2792 -131209.784693 +0.00112233445567 0.16 8.76338000871e-07 2792 -129907.71029 +0.00112233445567 0.19 8.76338000871e-07 2792 -129225.311656 +0.00112233445567 0.22 8.76338000871e-07 2792 -129039.817822 +0.00112233445567 0.25 8.76338000871e-07 2792 -129278.774246 +0.00112233445567 0.28 8.76338000871e-07 2792 -129896.862974 +0.00112233445567 0.31 8.76338000871e-07 2792 -130865.978615 +0.00112233445567 0.34 8.76338000871e-07 2792 -132169.173668 +0.00112233445567 0.37 8.76338000871e-07 2792 -133797.128832 +0.00112233445567 0.4 8.76338000871e-07 2792 -135746.766823 +0.00112233445567 0.43 8.76338000871e-07 2792 -138020.111837 +0.00112233445567 0.46 8.76338000871e-07 2792 -140623.535523 +0.00112233445567 0.49 8.76338000871e-07 2792 -143567.345914 +0.00112233445567 0.52 8.76338000871e-07 2792 -146866.113145 +0.00112233445567 0.55 8.76338000871e-07 2792 -150539.052546 +0.00112233445567 0.58 8.76338000871e-07 2792 -154610.52863 +0.00112233445567 0.61 8.76338000871e-07 2792 -159110.239515 +0.00112233445567 0.64 8.76338000871e-07 2792 -164074.858796 +0.00112233445567 0.67 8.76338000871e-07 2792 -169549.766264 +0.00112233445567 0.7 8.76338000871e-07 2792 -175591.276594 +0.00112233445567 0.73 8.76338000871e-07 2792 -182269.605305 +0.00112233445567 0.76 8.76338000871e-07 2792 -189674.029241 +0.00112233445567 0.79 8.76338000871e-07 2792 -197919.846708 +0.00112233445567 0.82 8.76338000871e-07 2792 -207160.163325 +0.00112233445567 0.85 8.76338000871e-07 2792 -217604.782464 +0.00112233445567 0.88 8.76338000871e-07 2792 -229554.020258 +0.00110987791343 0.01 2.10923759522e-06 6720 -148558.653115 +0.00110987791343 0.04 1.24200195897e-06 3957 -142618.503997 +0.00110987791343 0.07 8.98623100464e-07 2863 -136853.898044 +0.00110987791343 0.1 8.78535123366e-07 2799 -133398.873529 +0.00110987791343 0.13 8.76338000871e-07 2792 -131245.639527 +0.00110987791343 0.16 8.76338000871e-07 2792 -129937.455876 +0.00110987791343 0.19 8.76338000871e-07 2792 -129247.966189 +0.00110987791343 0.22 8.76338000871e-07 2792 -129054.153873 +0.00110987791343 0.25 8.76338000871e-07 2792 -129283.518784 +0.00110987791343 0.28 8.76338000871e-07 2792 -129890.862101 +0.00110987791343 0.31 8.76338000871e-07 2792 -130847.740401 +0.00110987791343 0.34 8.76338000871e-07 2792 -132137.394568 +0.00110987791343 0.37 8.76338000871e-07 2792 -133750.192898 +0.00110987791343 0.4 8.76338000871e-07 2792 -135682.983388 +0.00110987791343 0.43 8.76338000871e-07 2792 -137937.73635 +0.00110987791343 0.46 8.76338000871e-07 2792 -140520.410261 +0.00110987791343 0.49 8.76338000871e-07 2792 -143441.37479 +0.00110987791343 0.52 8.76338000871e-07 2792 -146714.829812 +0.00110987791343 0.55 8.76338000871e-07 2792 -150359.639475 +0.00110987791343 0.58 8.76338000871e-07 2792 -154399.793245 +0.00110987791343 0.61 8.76338000871e-07 2792 -158864.718073 +0.00110987791343 0.64 8.76338000871e-07 2792 -163790.465581 +0.00110987791343 0.67 8.76338000871e-07 2792 -169221.675088 +0.00110987791343 0.7 8.76338000871e-07 2792 -175213.807852 +0.00110987791343 0.73 8.76338000871e-07 2792 -181835.984512 +0.00110987791343 0.76 8.76338000871e-07 2792 -189175.96523 +0.00110987791343 0.79 8.76338000871e-07 2792 -197347.024387 +0.00110987791343 0.82 8.76338000871e-07 2792 -206499.320046 +0.00110987791343 0.85 8.76338000871e-07 2792 -216838.381295 +0.00110987791343 0.88 8.76338000871e-07 2792 -228657.796099 +0.00109769484083 0.01 2.10735434737e-06 6714 -148586.558389 +0.00109769484083 0.04 1.40804164467e-06 4486 -142663.023494 +0.00109769484083 0.07 8.98623100464e-07 2863 -136900.066827 +0.00109769484083 0.1 8.78221248724e-07 2798 -133440.030853 +0.00109769484083 0.13 8.76338000871e-07 2792 -131281.456662 +0.00109769484083 0.16 8.76338000871e-07 2792 -129967.186141 +0.00109769484083 0.19 8.76338000871e-07 2792 -129270.657759 +0.00109769484083 0.22 8.76338000871e-07 2792 -129068.570821 +0.00109769484083 0.25 8.76338000871e-07 2792 -129288.453843 +0.00109769484083 0.28 8.76338000871e-07 2792 -129885.142517 +0.00109769484083 0.31 8.76338000871e-07 2792 -130829.936807 +0.00109769484083 0.34 8.76338000871e-07 2792 -132106.141557 +0.00109769484083 0.37 8.76338000871e-07 2792 -133703.944792 +0.00109769484083 0.4 8.76338000871e-07 2792 -135620.111262 +0.00109769484083 0.43 8.76338000871e-07 2792 -137856.389745 +0.00109769484083 0.46 8.76338000871e-07 2792 -140418.540685 +0.00109769484083 0.49 8.76338000871e-07 2792 -143316.886415 +0.00109769484083 0.52 8.76338000871e-07 2792 -146565.301983 +0.00109769484083 0.55 8.76338000871e-07 2792 -150182.322969 +0.00109769484083 0.58 8.76338000871e-07 2792 -154191.509365 +0.00109769484083 0.61 8.76338000871e-07 2792 -158622.026005 +0.00109769484083 0.64 8.76338000871e-07 2792 -163509.354234 +0.00109769484083 0.67 8.76338000871e-07 2792 -168897.438921 +0.00109769484083 0.7 8.76338000871e-07 2792 -174840.798687 +0.00109769484083 0.73 8.76338000871e-07 2792 -181407.571398 +0.00109769484083 0.76 8.76338000871e-07 2792 -188683.946742 +0.00109769484083 0.79 8.76338000871e-07 2792 -196781.2946 +0.00109769484083 0.82 8.76338000871e-07 2792 -205846.872199 +0.00109769484083 0.85 8.76338000871e-07 2792 -216082.006443 +0.00109769484083 0.88 8.76338000871e-07 2792 -227773.75831 +0.00108577633008 0.01 2.10578497416e-06 6709 -148614.347466 +0.00108577633008 0.04 2.03327993182e-06 6478 -142575.313846 +0.00108577633008 0.07 8.97995351179e-07 2861 -136946.142508 +0.00108577633008 0.1 8.78221248724e-07 2798 -133481.122942 +0.00108577633008 0.13 8.76338000871e-07 2792 -131317.2436 +0.00108577633008 0.16 8.76338000871e-07 2792 -129996.920703 +0.00108577633008 0.19 8.76338000871e-07 2792 -129293.407879 +0.00108577633008 0.22 8.76338000871e-07 2792 -129083.090531 +0.00108577633008 0.25 8.76338000871e-07 2792 -129293.619775 +0.00108577633008 0.28 8.76338000871e-07 2792 -129879.719893 +0.00108577633008 0.31 8.76338000871e-07 2792 -130812.593317 +0.00108577633008 0.34 8.76338000871e-07 2792 -132075.422699 +0.00108577633008 0.37 8.76338000871e-07 2792 -133658.390882 +0.00108577633008 0.4 8.76338000871e-07 2792 -135558.078854 +0.00108577633008 0.43 8.76338000871e-07 2792 -137776.016108 +0.00108577633008 0.46 8.76338000871e-07 2792 -140317.928756 +0.00108577633008 0.49 8.76338000871e-07 2792 -143193.870902 +0.00108577633008 0.52 8.76338000871e-07 2792 -146417.510654 +0.00108577633008 0.55 8.76338000871e-07 2792 -150007.077766 +0.00108577633008 0.58 8.76338000871e-07 2792 -153985.695183 +0.00108577633008 0.61 8.76338000871e-07 2792 -158382.157898 +0.00108577633008 0.64 8.76338000871e-07 2792 -163231.51917 +0.00108577633008 0.67 8.76338000871e-07 2792 -168576.990343 +0.00108577633008 0.7 8.76338000871e-07 2792 -174472.209319 +0.00108577633008 0.73 8.76338000871e-07 2792 -180984.274331 +0.00108577633008 0.76 8.76338000871e-07 2792 -188197.906448 +0.00108577633008 0.79 8.76338000871e-07 2792 -196222.559606 +0.00108577633008 0.82 8.76338000871e-07 2792 -205202.684802 +0.00108577633008 0.85 8.76338000871e-07 2792 -215335.501514 +0.00108577633008 0.88 8.76338000871e-07 2792 -226901.712761 +0.00107411385607 0.01 2.10515722487e-06 6707 -148642.038696 +0.00107411385607 0.04 2.03327993182e-06 6478 -142597.751319 +0.00107411385607 0.07 8.97681476537e-07 2860 -136992.103648 +0.00107411385607 0.1 8.77907374082e-07 2797 -133522.143723 +0.00107411385607 0.13 8.76338000871e-07 2792 -131353.039551 +0.00107411385607 0.16 8.76338000871e-07 2792 -130026.702825 +0.00107411385607 0.19 8.76338000871e-07 2792 -129316.213805 +0.00107411385607 0.22 8.76338000871e-07 2792 -129097.741484 +0.00107411385607 0.25 8.76338000871e-07 2792 -129298.976482 +0.00107411385607 0.28 8.76338000871e-07 2792 -129874.569158 +0.00107411385607 0.31 8.76338000871e-07 2792 -130795.666006 +0.00107411385607 0.34 8.76338000871e-07 2792 -132045.195964 +0.00107411385607 0.37 8.76338000871e-07 2792 -133613.478075 +0.00107411385607 0.4 8.76338000871e-07 2792 -135496.864678 +0.00107411385607 0.43 8.76338000871e-07 2792 -137696.652937 +0.00107411385607 0.46 8.76338000871e-07 2792 -140218.592183 +0.00107411385607 0.49 8.76338000871e-07 2792 -143072.316057 +0.00107411385607 0.52 8.76338000871e-07 2792 -146271.459802 +0.00107411385607 0.55 8.76338000871e-07 2792 -149833.873181 +0.00107411385607 0.58 8.76338000871e-07 2792 -153782.281473 +0.00107411385607 0.61 8.76338000871e-07 2792 -158145.062989 +0.00107411385607 0.64 8.76338000871e-07 2792 -162956.887762 +0.00107411385607 0.67 8.76338000871e-07 2792 -168260.26932 +0.00107411385607 0.7 8.76338000871e-07 2792 -174107.974034 +0.00107411385607 0.73 8.76338000871e-07 2792 -180566.009569 +0.00107411385607 0.76 8.76338000871e-07 2792 -187717.769679 +0.00107411385607 0.79 8.76338000871e-07 2792 -195670.701954 +0.00107411385607 0.82 8.76338000871e-07 2792 -204566.626681 +0.00107411385607 0.85 8.76338000871e-07 2792 -214598.716605 +0.00107411385607 0.88 8.76338000871e-07 2792 -226041.463808 +0.00106269925611 0.01 2.1039017263e-06 6703 -148669.641207 +0.00106269925611 0.04 2.03327993182e-06 6478 -142620.218919 +0.00106269925611 0.07 8.97053727253e-07 2858 -137037.927873 +0.00106269925611 0.1 8.7759349944e-07 2796 -133563.06802 +0.00106269925611 0.13 8.76338000871e-07 2792 -131388.816379 +0.00106269925611 0.16 8.76338000871e-07 2792 -130056.477828 +0.00106269925611 0.19 8.76338000871e-07 2792 -129338.991537 +0.00106269925611 0.22 8.76338000871e-07 2792 -129112.528748 +0.00106269925611 0.25 8.76338000871e-07 2792 -129304.547674 +0.00106269925611 0.28 8.76338000871e-07 2792 -129869.679533 +0.00106269925611 0.31 8.76338000871e-07 2792 -130779.135486 +0.00106269925611 0.34 8.76338000871e-07 2792 -132015.475872 +0.00106269925611 0.37 8.76338000871e-07 2792 -133569.230734 +0.00106269925611 0.4 8.76338000871e-07 2792 -135436.451026 +0.00106269925611 0.43 8.76338000871e-07 2792 -137618.312958 +0.00106269925611 0.46 8.76338000871e-07 2792 -140120.48721 +0.00106269925611 0.49 8.76338000871e-07 2792 -142952.197024 +0.00106269925611 0.52 8.76338000871e-07 2792 -146127.101726 +0.00106269925611 0.55 8.76338000871e-07 2792 -149662.653796 +0.00106269925611 0.58 8.76338000871e-07 2792 -153581.2193 +0.00106269925611 0.61 8.76338000871e-07 2792 -157910.708076 +0.00106269925611 0.64 8.76338000871e-07 2792 -162685.427312 +0.00106269925611 0.67 8.76338000871e-07 2792 -167947.213946 +0.00106269925611 0.7 8.76338000871e-07 2792 -173748.015911 +0.00106269925611 0.73 8.76338000871e-07 2792 -180152.728027 +0.00106269925611 0.76 8.76338000871e-07 2792 -187243.433933 +0.00106269925611 0.79 8.76338000871e-07 2792 -195125.640609 +0.00106269925611 0.82 8.76338000871e-07 2792 -203938.587585 +0.00106269925611 0.85 8.76338000871e-07 2792 -213871.504483 +0.00106269925611 0.88 8.76338000871e-07 2792 -225192.818097 +0.00105152471083 0.01 2.10358785166e-06 6702 -148697.139003 +0.00105152471083 0.04 2.03327993182e-06 6478 -142642.710552 +0.00105152471083 0.07 8.97053727253e-07 2858 -137083.641139 +0.00105152471083 0.1 8.7759349944e-07 2796 -133603.930383 +0.00105152471083 0.13 8.76338000871e-07 2792 -131424.571908 +0.00105152471083 0.16 8.76338000871e-07 2792 -130086.196447 +0.00105152471083 0.19 8.76338000871e-07 2792 -129361.773589 +0.00105152471083 0.22 8.76338000871e-07 2792 -129127.460721 +0.00105152471083 0.25 8.76338000871e-07 2792 -129310.323024 +0.00105152471083 0.28 8.76338000871e-07 2792 -129865.0812 +0.00105152471083 0.31 8.76338000871e-07 2792 -130762.967107 +0.00105152471083 0.34 8.76338000871e-07 2792 -131986.273802 +0.00105152471083 0.37 8.76338000871e-07 2792 -133525.645544 +0.00105152471083 0.4 8.76338000871e-07 2792 -135376.845218 +0.00105152471083 0.43 8.76338000871e-07 2792 -137541.01743 +0.00105152471083 0.46 8.76338000871e-07 2792 -140023.542108 +0.00105152471083 0.49 8.76338000871e-07 2792 -142833.512859 +0.00105152471083 0.52 8.76338000871e-07 2792 -145984.422112 +0.00105152471083 0.55 8.76338000871e-07 2792 -149493.392763 +0.00105152471083 0.58 8.76338000871e-07 2792 -153382.478597 +0.00105152471083 0.61 8.76338000871e-07 2792 -157679.100003 +0.00105152471083 0.64 8.76338000871e-07 2792 -162417.105019 +0.00105152471083 0.67 8.76338000871e-07 2792 -167637.80469 +0.00105152471083 0.7 8.76338000871e-07 2792 -173392.278532 +0.00105152471083 0.73 8.76338000871e-07 2792 -179744.358705 +0.00105152471083 0.76 8.76338000871e-07 2792 -186774.80468 +0.00105152471083 0.79 8.76338000871e-07 2792 -194587.285683 +0.00105152471083 0.82 8.76338000871e-07 2792 -203318.430927 +0.00105152471083 0.85 8.76338000871e-07 2792 -213153.697829 +0.00105152471083 0.88 8.76338000871e-07 2792 -224355.589854 +0.00104058272633 0.01 2.10264622774e-06 6699 -148724.551079 +0.00104058272633 0.04 2.03327993182e-06 6478 -142665.22049 +0.00104058272633 0.07 8.97053727253e-07 2858 -137129.204583 +0.00104058272633 0.1 8.7759349944e-07 2796 -133644.739887 +0.00104058272633 0.13 8.76338000871e-07 2792 -131460.294169 +0.00104058272633 0.16 8.76338000871e-07 2792 -130115.879437 +0.00104058272633 0.19 8.76338000871e-07 2792 -129384.617436 +0.00104058272633 0.22 8.76338000871e-07 2792 -129142.462445 +0.00104058272633 0.25 8.76338000871e-07 2792 -129316.265809 +0.00104058272633 0.28 8.76338000871e-07 2792 -129860.729602 +0.00104058272633 0.31 8.76338000871e-07 2792 -130747.167602 +0.00104058272633 0.34 8.76338000871e-07 2792 -131957.61333 +0.00104058272633 0.37 8.76338000871e-07 2792 -133482.683535 +0.00104058272633 0.4 8.76338000871e-07 2792 -135318.055147 +0.00104058272633 0.43 8.76338000871e-07 2792 -137464.684919 +0.00104058272633 0.46 8.76338000871e-07 2792 -139927.7348 +0.00104058272633 0.49 8.76338000871e-07 2792 -142716.260944 +0.00104058272633 0.52 8.76338000871e-07 2792 -145843.38826 +0.00104058272633 0.55 8.76338000871e-07 2792 -149326.096298 +0.00104058272633 0.58 8.76338000871e-07 2792 -153186.032761 +0.00104058272633 0.61 8.76338000871e-07 2792 -157450.170181 +0.00104058272633 0.64 8.76338000871e-07 2792 -162151.877004 +0.00104058272633 0.67 8.76338000871e-07 2792 -167331.959021 +0.00104058272633 0.7 8.76338000871e-07 2792 -173040.678904 +0.00104058272633 0.73 8.76338000871e-07 2792 -179340.835253 +0.00104058272633 0.76 8.76338000871e-07 2792 -186311.799385 +0.00104058272633 0.79 8.76338000871e-07 2792 -194055.532546 +0.00104058272633 0.82 8.76338000871e-07 2792 -202706.048752 +0.00104058272633 0.85 8.76338000871e-07 2792 -212445.164942 +0.00104058272633 0.88 8.76338000871e-07 2792 -223529.5994 +0.0010298661174 0.01 2.10264622774e-06 6699 -148751.866405 +0.0010298661174 0.04 2.03327993182e-06 6478 -142687.743341 +0.0010298661174 0.07 8.97053727253e-07 2858 -137174.63889 +0.0010298661174 0.1 8.77279624798e-07 2795 -133685.435992 +0.0010298661174 0.13 8.76338000871e-07 2792 -131495.982201 +0.0010298661174 0.16 8.76338000871e-07 2792 -130145.538106 +0.0010298661174 0.19 8.76338000871e-07 2792 -129407.503804 +0.0010298661174 0.22 8.76338000871e-07 2792 -129157.551676 +0.0010298661174 0.25 8.76338000871e-07 2792 -129322.367215 +0.0010298661174 0.28 8.76338000871e-07 2792 -129856.668353 +0.0010298661174 0.31 8.76338000871e-07 2792 -130731.745533 +0.0010298661174 0.34 8.76338000871e-07 2792 -131929.486937 +0.0010298661174 0.37 8.76338000871e-07 2792 -133440.351475 +0.0010298661174 0.4 8.76338000871e-07 2792 -135260.035272 +0.0010298661174 0.43 8.76338000871e-07 2792 -137389.308654 +0.0010298661174 0.46 8.76338000871e-07 2792 -139833.09685 +0.0010298661174 0.49 8.76338000871e-07 2792 -142600.435303 +0.0010298661174 0.52 8.76338000871e-07 2792 -145704.000602 +0.0010298661174 0.55 8.76338000871e-07 2792 -149160.718527 +0.0010298661174 0.58 8.76338000871e-07 2792 -152991.820591 +0.0010298661174 0.61 8.76338000871e-07 2792 -157223.868109 +0.0010298661174 0.64 8.76338000871e-07 2792 -161889.702919 +0.0010298661174 0.67 8.76338000871e-07 2792 -167029.65158 +0.0010298661174 0.7 8.76338000871e-07 2792 -172693.171468 +0.0010298661174 0.73 8.76338000871e-07 2792 -178942.066112 +0.0010298661174 0.76 8.76338000871e-07 2792 -185854.355342 +0.0010298661174 0.79 8.76338000871e-07 2792 -193530.273362 +0.0010298661174 0.82 8.76338000871e-07 2792 -202101.331599 +0.0010298661174 0.85 8.76338000871e-07 2792 -211745.754475 +0.0010298661174 0.88 8.76338000871e-07 2792 -222714.649811 +0.00101936799185 0.01 2.10139072917e-06 6695 -148779.081133 +0.00101936799185 0.04 2.03327993182e-06 6478 -142710.274037 +0.00101936799185 0.07 8.96739852611e-07 2857 -137219.951478 +0.00101936799185 0.1 8.77279624798e-07 2795 -133726.054252 +0.00101936799185 0.13 8.76338000871e-07 2792 -131531.600983 +0.00101936799185 0.16 8.76338000871e-07 2792 -130175.218969 +0.00101936799185 0.19 8.76338000871e-07 2792 -129430.409607 +0.00101936799185 0.22 8.76338000871e-07 2792 -129172.739781 +0.00101936799185 0.25 8.76338000871e-07 2792 -129328.624721 +0.00101936799185 0.28 8.76338000871e-07 2792 -129852.885939 +0.00101936799185 0.31 8.76338000871e-07 2792 -130716.678283 +0.00101936799185 0.34 8.76338000871e-07 2792 -131901.853161 +0.00101936799185 0.37 8.76338000871e-07 2792 -133398.615569 +0.00101936799185 0.4 8.76338000871e-07 2792 -135202.787249 +0.00101936799185 0.43 8.76338000871e-07 2792 -137314.865473 +0.00101936799185 0.46 8.76338000871e-07 2792 -139739.628165 +0.00101936799185 0.49 8.76338000871e-07 2792 -142485.985119 +0.00101936799185 0.52 8.76338000871e-07 2792 -145566.231654 +0.00101936799185 0.55 8.76338000871e-07 2792 -148997.235126 +0.00101936799185 0.58 8.76338000871e-07 2792 -152799.809308 +0.00101936799185 0.61 8.76338000871e-07 2792 -157000.157437 +0.00101936799185 0.64 8.76338000871e-07 2792 -161630.577445 +0.00101936799185 0.67 8.76338000871e-07 2792 -166730.82861 +0.00101936799185 0.7 8.76338000871e-07 2792 -172349.713306 +0.00101936799185 0.73 8.76338000871e-07 2792 -178547.99296 +0.00101936799185 0.76 8.76338000871e-07 2792 -185402.389105 +0.00101936799185 0.79 8.76338000871e-07 2792 -193011.403508 +0.00101936799185 0.82 8.76338000871e-07 2792 -201504.171016 +0.00101936799185 0.85 8.76338000871e-07 2792 -211055.320201 +0.00101936799185 0.88 8.76338000871e-07 2792 -221910.566226 +0.00100908173562 0.01 2.09982135596e-06 6690 -148806.186628 +0.00100908173562 0.04 2.03327993182e-06 6478 -142732.807807 +0.00100908173562 0.07 8.95798228684e-07 2854 -137265.120639 +0.00100908173562 0.1 8.77279624798e-07 2795 -133766.521027 +0.00100908173562 0.13 8.76338000871e-07 2792 -131567.141707 +0.00100908173562 0.16 8.76338000871e-07 2792 -130204.893669 +0.00100908173562 0.19 8.76338000871e-07 2792 -129453.341512 +0.00100908173562 0.22 8.76338000871e-07 2792 -129188.032309 +0.00100908173562 0.25 8.76338000871e-07 2792 -129335.07072 +0.00100908173562 0.28 8.76338000871e-07 2792 -129849.367048 +0.00100908173562 0.31 8.76338000871e-07 2792 -130701.953395 +0.00100908173562 0.34 8.76338000871e-07 2792 -131874.706962 +0.00100908173562 0.37 8.76338000871e-07 2792 -133357.500613 +0.00100908173562 0.4 8.76338000871e-07 2792 -135146.325719 +0.00100908173562 0.43 8.76338000871e-07 2792 -137241.359672 +0.00100908173562 0.46 8.76338000871e-07 2792 -139647.338319 +0.00100908173562 0.49 8.76338000871e-07 2792 -142372.835123 +0.00100908173562 0.52 8.76338000871e-07 2792 -145430.071528 +0.00100908173562 0.55 8.76338000871e-07 2792 -148835.609593 +0.00100908173562 0.58 8.76338000871e-07 2792 -152609.999717 +0.00100908173562 0.61 8.76338000871e-07 2792 -156779.013189 +0.00100908173562 0.64 8.76338000871e-07 2792 -161374.432009 +0.00100908173562 0.67 8.76338000871e-07 2792 -166435.448913 +0.00100908173562 0.7 8.76338000871e-07 2792 -172010.22098 +0.00100908173562 0.73 8.76338000871e-07 2792 -178158.525769 +0.00100908173562 0.76 8.76338000871e-07 2792 -184955.814528 +0.00100908173562 0.79 8.76338000871e-07 2792 -192498.843186 +0.00100908173562 0.82 8.76338000871e-07 2792 -200914.440526 +0.00100908173562 0.85 8.76338000871e-07 2792 -210373.73309 +0.00100908173562 0.88 8.76338000871e-07 2792 -221117.175084 diff --git a/experiments/process.py b/experiments/process.py index 5fc55ba..ec25d8e 100644 --- a/experiments/process.py +++ b/experiments/process.py @@ -21,5 +21,6 @@ if __name__ == "__main__": with open("out.log", "a") as fh: for a, d in product(alpha, delta): beta, roots, ll = ml(root_victims, victims, non_victims, age, a, d) + print beta fh.write("\t".join(map(str, [a, d, beta, roots, ll])) + "\n") fh.flush() diff --git a/experiments/setup.py b/experiments/setup.py new file mode 100644 index 0000000..49667b7 --- /dev/null +++ b/experiments/setup.py @@ -0,0 +1,12 @@ +# compile with: python setup.py build_ext --inplace + +from distutils.core import setup +from Cython.Build import cythonize +import numpy + +setup( + ext_modules = cythonize("ml.pyx"), + include_dirs=[numpy.get_include()] + +) + |
