[Scipy-svn] r2502 - trunk/Lib/sparse/sparsetools

scipy-svn at scipy.org scipy-svn at scipy.org
Sun Jan 7 23:25:59 CST 2007


Author: wnbell
Date: 2007-01-07 23:25:56 -0600 (Sun, 07 Jan 2007)
New Revision: 2502

Modified:
   trunk/Lib/sparse/sparsetools/numpy.i
   trunk/Lib/sparse/sparsetools/sparsetools.py
   trunk/Lib/sparse/sparsetools/sparsetools_wrap.cxx
Log:
Changed (int) and ("%d") to (npy_intp) and ("%" NPY_INTP_FMT) where appropriate
This is necessary on 64bit systems



Modified: trunk/Lib/sparse/sparsetools/numpy.i
===================================================================
--- trunk/Lib/sparse/sparsetools/numpy.i	2007-01-07 04:20:54 UTC (rev 2501)
+++ trunk/Lib/sparse/sparsetools/numpy.i	2007-01-08 05:25:56 UTC (rev 2502)
@@ -20,6 +20,7 @@
 #define array_size(a,i)        (((PyArrayObject *)a)->dimensions[i])
 #define array_is_contiguous(a) (PyArray_ISCONTIGUOUS(a))
 
+
 /* Given a PyObject, return a string describing its type.
  */
 char* pytype_string(PyObject* py_obj) {
@@ -216,7 +217,7 @@
  * array has the specified shape, return 1.  Otherwise, set the python
  * error string and return 0.
  */
-int require_size(PyArrayObject* ary, int* size, int n) {
+int require_size(PyArrayObject* ary, npy_intp * size, int n) {
   int i;
   int success = 1;
   int len;
@@ -235,14 +236,14 @@
       }
       else
       {
-	sprintf(s, "%d,", size[i]);                
+	sprintf(s,"%" NPY_INTP_FMT ",", size[i]);                
       }    
       strcat(desired_dims,s);
     }
     len = strlen(desired_dims);
     desired_dims[len-1] = ']';
     for (i = 0; i < n; i++) {
-      sprintf(s, "%d,", array_size(ary,i));                            
+      sprintf(s,"%" NPY_INTP_FMT ",", array_size(ary,i));                            
       strcat(actual_dims,s);
     }
     len = strlen(actual_dims);
@@ -284,7 +285,7 @@
 /* One dimensional input arrays */
 %define TYPEMAP_IN1(type,typecode)
   %typemap(in) type* IN_ARRAY1 (PyArrayObject* array=NULL, int is_new_object) {
-  int size[1] = {-1};
+  npy_intp size[1] = {-1};
   array = obj_to_array_contiguous_allow_conversion($input, typecode, &is_new_object);
   if (!array || !require_dimensions(array,1) || !require_size(array,size,1)) SWIG_fail;
   $1 = (type*) array->data;
@@ -330,7 +331,7 @@
 %define TYPEMAP_IN2(type,typecode)
   %typemap(in) (type* IN_ARRAY2)
                (PyArrayObject* array=NULL, int is_new_object) {
-  int size[2] = {-1,-1};
+  npy_intp size[2] = {-1,-1};
   array = obj_to_array_contiguous_allow_conversion($input, typecode, &is_new_object);
   if (!array || !require_dimensions(array,2) || !require_size(array,size,1)) SWIG_fail;
   $1 = (type*) array->data;

Modified: trunk/Lib/sparse/sparsetools/sparsetools.py
===================================================================
--- trunk/Lib/sparse/sparsetools/sparsetools.py	2007-01-07 04:20:54 UTC (rev 2501)
+++ trunk/Lib/sparse/sparsetools/sparsetools.py	2007-01-08 05:25:56 UTC (rev 2502)
@@ -1,16 +1,10 @@
-# This file was automatically generated by SWIG (http://www.swig.org).
-# Version 1.3.31
-#
+# This file was created automatically by SWIG 1.3.28.
 # Don't modify this file, modify the SWIG interface instead.
 # This file is compatible with both classic and new-style classes.
 
 import _sparsetools
 import new
 new_instancemethod = new.instancemethod
-try:
-    _swig_property = property
-except NameError:
-    pass # Python < 2.2 doesn't have 'property'.
 def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
     if (name == "thisown"): return self.this.own(value)
     if (name == "this"):
@@ -33,11 +27,6 @@
     if method: return method(self)
     raise AttributeError,name
 
-def _swig_repr(self):
-    try: strthis = "proxy of " + self.this.__repr__()
-    except: strthis = ""
-    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
-
 import types
 try:
     _object = types.ObjectType
@@ -51,7 +40,7 @@
 
 
 def csrtocsc(*args):
-  """
+    """
     csrtocsc(int n_row, int n_col, int Ap, int Aj, float Ax, std::vector<(int)> Bp, 
         std::vector<(int)> Bi, std::vector<(float)> Bx)
     csrtocsc(int n_row, int n_col, int Ap, int Aj, double Ax, std::vector<(int)> Bp, 
@@ -69,10 +58,10 @@
         std::vector<(int)> Bp, std::vector<(int)> Bi, 
         std::vector<(npy_clongdouble)> Bx)
     """
-  return _sparsetools.csrtocsc(*args)
+    return _sparsetools.csrtocsc(*args)
 
 def csctocsr(*args):
-  """
+    """
     csctocsr(int n_row, int n_col, int Ap, int Ai, float Ax, std::vector<(int)> Bp, 
         std::vector<(int)> Bj, std::vector<(float)> Bx)
     csctocsr(int n_row, int n_col, int Ap, int Ai, double Ax, std::vector<(int)> Bp, 
@@ -90,10 +79,10 @@
         std::vector<(int)> Bp, std::vector<(int)> Bj, 
         std::vector<(npy_clongdouble)> Bx)
     """
-  return _sparsetools.csctocsr(*args)
+    return _sparsetools.csctocsr(*args)
 
 def csrtocoo(*args):
-  """
+    """
     csrtocoo(int n_row, int n_col, int Ap, int Aj, float Ax, std::vector<(int)> Bi, 
         std::vector<(int)> Bj, std::vector<(float)> Bx)
     csrtocoo(int n_row, int n_col, int Ap, int Aj, double Ax, std::vector<(int)> Bi, 
@@ -111,10 +100,10 @@
         std::vector<(int)> Bi, std::vector<(int)> Bj, 
         std::vector<(npy_clongdouble)> Bx)
     """
-  return _sparsetools.csrtocoo(*args)
+    return _sparsetools.csrtocoo(*args)
 
 def cootocsr(*args):
-  """
+    """
     cootocsr(int n_row, int n_col, int NNZ, int Ai, int Aj, float Ax, 
         std::vector<(int)> Bp, std::vector<(int)> Bj, 
         std::vector<(float)> Bx)
@@ -134,10 +123,10 @@
         std::vector<(int)> Bp, std::vector<(int)> Bj, 
         std::vector<(npy_clongdouble)> Bx)
     """
-  return _sparsetools.cootocsr(*args)
+    return _sparsetools.cootocsr(*args)
 
 def csctocoo(*args):
-  """
+    """
     csctocoo(int n_row, int n_col, int Ap, int Ai, float Ax, std::vector<(int)> Bi, 
         std::vector<(int)> Bj, std::vector<(float)> Bx)
     csctocoo(int n_row, int n_col, int Ap, int Ai, double Ax, std::vector<(int)> Bi, 
@@ -155,10 +144,10 @@
         std::vector<(int)> Bi, std::vector<(int)> Bj, 
         std::vector<(npy_clongdouble)> Bx)
     """
-  return _sparsetools.csctocoo(*args)
+    return _sparsetools.csctocoo(*args)
 
 def cootocsc(*args):
-  """
+    """
     cootocsc(int n_row, int n_col, int NNZ, int Ai, int Aj, float Ax, 
         std::vector<(int)> Bp, std::vector<(int)> Bi, 
         std::vector<(float)> Bx)
@@ -178,10 +167,10 @@
         std::vector<(int)> Bp, std::vector<(int)> Bi, 
         std::vector<(npy_clongdouble)> Bx)
     """
-  return _sparsetools.cootocsc(*args)
+    return _sparsetools.cootocsc(*args)
 
 def csrplcsr(*args):
-  """
+    """
     csrplcsr(int n_row, int n_col, int Ap, int Aj, float Ax, int Bp, 
         int Bj, float Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Cj, std::vector<(float)> Cx)
@@ -201,10 +190,10 @@
         int Bp, int Bj, npy_clongdouble Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Cj, std::vector<(npy_clongdouble)> Cx)
     """
-  return _sparsetools.csrplcsr(*args)
+    return _sparsetools.csrplcsr(*args)
 
 def cscplcsc(*args):
-  """
+    """
     cscplcsc(int n_row, int n_col, int Ap, int Ai, float Ax, int Bp, 
         int Bi, float Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Ci, std::vector<(float)> Cx)
@@ -224,10 +213,10 @@
         int Bp, int Bi, npy_clongdouble Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Ci, std::vector<(npy_clongdouble)> Cx)
     """
-  return _sparsetools.cscplcsc(*args)
+    return _sparsetools.cscplcsc(*args)
 
 def csrmucsr(*args):
-  """
+    """
     csrmucsr(int n_row, int n_col, int Ap, int Aj, float Ax, int Bp, 
         int Bj, float Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Cj, std::vector<(float)> Cx)
@@ -247,10 +236,10 @@
         int Bp, int Bj, npy_clongdouble Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Cj, std::vector<(npy_clongdouble)> Cx)
     """
-  return _sparsetools.csrmucsr(*args)
+    return _sparsetools.csrmucsr(*args)
 
 def cscmucsc(*args):
-  """
+    """
     cscmucsc(int n_row, int n_col, int Ap, int Ai, float Ax, int Bp, 
         int Bi, float Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Ci, std::vector<(float)> Cx)
@@ -270,10 +259,10 @@
         int Bp, int Bi, npy_clongdouble Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Ci, std::vector<(npy_clongdouble)> Cx)
     """
-  return _sparsetools.cscmucsc(*args)
+    return _sparsetools.cscmucsc(*args)
 
 def csrmux(*args):
-  """
+    """
     csrmux(int n_row, int n_col, int Ap, int Aj, float Ax, float Xx, 
         std::vector<(float)> Yx)
     csrmux(int n_row, int n_col, int Ap, int Aj, double Ax, double Xx, 
@@ -287,10 +276,10 @@
     csrmux(int n_row, int n_col, int Ap, int Aj, npy_clongdouble Ax, 
         npy_clongdouble Xx, std::vector<(npy_clongdouble)> Yx)
     """
-  return _sparsetools.csrmux(*args)
+    return _sparsetools.csrmux(*args)
 
 def cscmux(*args):
-  """
+    """
     cscmux(int n_row, int n_col, int Ap, int Ai, float Ax, float Xx, 
         std::vector<(float)> Yx)
     cscmux(int n_row, int n_col, int Ap, int Ai, double Ax, double Xx, 
@@ -304,10 +293,10 @@
     cscmux(int n_row, int n_col, int Ap, int Ai, npy_clongdouble Ax, 
         npy_clongdouble Xx, std::vector<(npy_clongdouble)> Yx)
     """
-  return _sparsetools.cscmux(*args)
+    return _sparsetools.cscmux(*args)
 
 def csrelmulcsr(*args):
-  """
+    """
     csrelmulcsr(int n_row, int n_col, int Ap, int Aj, float Ax, int Bp, 
         int Bj, float Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Cj, std::vector<(float)> Cx)
@@ -327,10 +316,10 @@
         int Bp, int Bj, npy_clongdouble Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Cj, std::vector<(npy_clongdouble)> Cx)
     """
-  return _sparsetools.csrelmulcsr(*args)
+    return _sparsetools.csrelmulcsr(*args)
 
 def cscelmulcsc(*args):
-  """
+    """
     cscelmulcsc(int n_row, int n_col, int Ap, int Ai, float Ax, int Bp, 
         int Bi, float Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Ci, std::vector<(float)> Cx)
@@ -350,10 +339,10 @@
         int Bp, int Bi, npy_clongdouble Bx, std::vector<(int)> Cp, 
         std::vector<(int)> Ci, std::vector<(npy_clongdouble)> Cx)
     """
-  return _sparsetools.cscelmulcsc(*args)
+    return _sparsetools.cscelmulcsc(*args)
 
 def spdiags(*args):
-  """
+    """
     spdiags(int n_row, int n_col, int n_diag, int offsets, float diags, 
         std::vector<(int)> Ap, std::vector<(int)> Ai, 
         std::vector<(float)> Ax)
@@ -373,10 +362,10 @@
         std::vector<(int)> Ap, std::vector<(int)> Ai, 
         std::vector<(npy_clongdouble)> Ax)
     """
-  return _sparsetools.spdiags(*args)
+    return _sparsetools.spdiags(*args)
 
 def csrtodense(*args):
-  """
+    """
     csrtodense(int n_row, int n_col, int Ap, int Aj, float Ax, float Mx)
     csrtodense(int n_row, int n_col, int Ap, int Aj, double Ax, double Mx)
     csrtodense(int n_row, int n_col, int Ap, int Aj, long double Ax, 
@@ -388,10 +377,10 @@
     csrtodense(int n_row, int n_col, int Ap, int Aj, npy_clongdouble Ax, 
         npy_clongdouble Mx)
     """
-  return _sparsetools.csrtodense(*args)
+    return _sparsetools.csrtodense(*args)
 
 def densetocsr(*args):
-  """
+    """
     densetocsr(int n_row, int n_col, float Mx, std::vector<(int)> Ap, 
         std::vector<(int)> Aj, std::vector<(float)> Ax)
     densetocsr(int n_row, int n_col, double Mx, std::vector<(int)> Ap, 
@@ -405,5 +394,5 @@
     densetocsr(int n_row, int n_col, npy_clongdouble Mx, std::vector<(int)> Ap, 
         std::vector<(int)> Aj, std::vector<(npy_clongdouble)> Ax)
     """
-  return _sparsetools.densetocsr(*args)
+    return _sparsetools.densetocsr(*args)
 

Modified: trunk/Lib/sparse/sparsetools/sparsetools_wrap.cxx
===================================================================
--- trunk/Lib/sparse/sparsetools/sparsetools_wrap.cxx	2007-01-07 04:20:54 UTC (rev 2501)
+++ trunk/Lib/sparse/sparsetools/sparsetools_wrap.cxx	2007-01-08 05:25:56 UTC (rev 2502)
@@ -1,6 +1,6 @@
 /* ----------------------------------------------------------------------------
  * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 1.3.31
+ * Version 1.3.28
  * 
  * This file is not intended to be easily readable and contains a number of 
  * coding conventions designed to improve portability and efficiency. Do not make
@@ -27,10 +27,12 @@
 };
 #endif
 
-/* -----------------------------------------------------------------------------
+/***********************************************************************
+ *
  *  This section contains generic SWIG labels for method/variable
  *  declarations/attributes, and other compiler dependent labels.
- * ----------------------------------------------------------------------------- */
+ *
+ ************************************************************************/
 
 /* template workaround for compilers that cannot correctly implement the C++ standard */
 #ifndef SWIGTEMPLATEDISAMBIGUATOR
@@ -87,13 +89,7 @@
 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
 #endif
 
-/* exporting methods */
-#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
-#  ifndef GCC_HASCLASSVISIBILITY
-#    define GCC_HASCLASSVISIBILITY
-#  endif
-#endif
-
+/* exporting methods for Windows DLLs */
 #ifndef SWIGEXPORT
 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
 #   if defined(STATIC_LINKED)
@@ -102,11 +98,7 @@
 #     define SWIGEXPORT __declspec(dllexport)
 #   endif
 # else
-#   if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
-#     define SWIGEXPORT __attribute__ ((visibility("default")))
-#   else
-#     define SWIGEXPORT
-#   endif
+#   define SWIGEXPORT
 # endif
 #endif
 
@@ -119,25 +111,21 @@
 # endif 
 #endif
 
-/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
-#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
-# define _CRT_SECURE_NO_DEPRECATE
-#endif
 
-
 /* Python.h has to appear first */
 #include <Python.h>
 
-/* -----------------------------------------------------------------------------
+/***********************************************************************
  * swigrun.swg
  *
- * This file contains generic CAPI SWIG runtime support for pointer
- * type checking.
- * ----------------------------------------------------------------------------- */
+ *     This file contains generic CAPI SWIG runtime support for pointer
+ *     type checking.
+ *
+ ************************************************************************/
 
 /* This should only be incremented when either the layout of swig_type_info changes,
    or for whatever reason, the runtime changes incompatibly */
-#define SWIG_RUNTIME_VERSION "3"
+#define SWIG_RUNTIME_VERSION "2"
 
 /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
 #ifdef SWIG_TYPE_TABLE
@@ -358,7 +346,7 @@
   for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
     while ((*f1 == ' ') && (f1 != l1)) ++f1;
     while ((*f2 == ' ') && (f2 != l2)) ++f2;
-    if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
+    if (*f1 != *f2) return (int)(*f1 - *f2);
   }
   return (l1 - f1) - (l2 - f2);
 }
@@ -714,11 +702,13 @@
 
 
 
+/* Python.h has to appear first */
+#include <Python.h>
 
 /* Add PyOS_snprintf for old Pythons */
 #if PY_VERSION_HEX < 0x02020000
 # if defined(_MSC_VER) || defined(__BORLANDC__) || defined(_WATCOM)
-#  define PyOS_snprintf _snprintf
+#   define PyOS_snprintf _snprintf
 # else
 #  define PyOS_snprintf snprintf
 # endif
@@ -728,7 +718,7 @@
 #if PY_VERSION_HEX < 0x02020000
 
 #ifndef SWIG_PYBUFFER_SIZE
-# define SWIG_PYBUFFER_SIZE 1024
+#define SWIG_PYBUFFER_SIZE 1024
 #endif
 
 static PyObject *
@@ -739,70 +729,36 @@
   va_start(ap, fmt);
   res = vsnprintf(buf, sizeof(buf), fmt, ap);
   va_end(ap);
-  return (res < 0 || res >= (int)sizeof(buf)) ? 0 : PyString_FromString(buf);
+  return (res < 0 || res >= sizeof(buf)) ? 0 : PyString_FromString(buf);
 }
 #endif
 
 /* Add PyObject_Del for old Pythons */
 #if PY_VERSION_HEX < 0x01060000
-# define PyObject_Del(op) PyMem_DEL((op))
+#define PyObject_Del(op) PyMem_DEL((op))
 #endif
 #ifndef PyObject_DEL
-# define PyObject_DEL PyObject_Del
+#define PyObject_DEL PyObject_Del
 #endif
 
 /* A crude PyExc_StopIteration exception for old Pythons */
 #if PY_VERSION_HEX < 0x02020000
-# ifndef PyExc_StopIteration
-#  define PyExc_StopIteration PyExc_RuntimeError
-# endif
-# ifndef PyObject_GenericGetAttr
-#  define PyObject_GenericGetAttr 0
-# endif
+#define PyExc_StopIteration PyExc_RuntimeError
+#define PyObject_GenericGetAttr 0
+#define Py_NotImplemented PyExc_RuntimeError
 #endif
-/* Py_NotImplemented is defined in 2.1 and up. */
-#if PY_VERSION_HEX < 0x02010000
-# ifndef Py_NotImplemented
-#  define Py_NotImplemented PyExc_RuntimeError
-# endif
-#endif
 
 
 /* A crude PyString_AsStringAndSize implementation for old Pythons */
 #if PY_VERSION_HEX < 0x02010000
-# ifndef PyString_AsStringAndSize
-#  define PyString_AsStringAndSize(obj, s, len) {*s = PyString_AsString(obj); *len = *s ? strlen(*s) : 0;}
-# endif
+#define PyString_AsStringAndSize(obj, s, len) {*s = PyString_AsString(obj); *len = *s ? strlen(*s) : 0;}
 #endif
 
-/* PySequence_Size for old Pythons */
 #if PY_VERSION_HEX < 0x02000000
-# ifndef PySequence_Size
-#  define PySequence_Size PySequence_Length
-# endif
+#define PySequence_Size PySequence_Length
 #endif
 
 
-/* PyBool_FromLong for old Pythons */
-#if PY_VERSION_HEX < 0x02030000
-static
-PyObject *PyBool_FromLong(long ok)
-{
-  PyObject *result = ok ? Py_True : Py_False;
-  Py_INCREF(result);
-  return result;
-}
-#endif
-
-/* Py_ssize_t for old Pythons */
-/* This code is as recommended by: */
-/* http://www.python.org/dev/peps/pep-0353/#conversion-guidelines */
-#if PY_VERSION_HEX < 0x02050000 && !defined(PY_SSIZE_T_MIN)
-typedef int Py_ssize_t;
-# define PY_SSIZE_T_MAX INT_MAX
-# define PY_SSIZE_T_MIN INT_MIN
-#endif
-
 /* -----------------------------------------------------------------------------
  * error manipulation
  * ----------------------------------------------------------------------------- */
@@ -977,17 +933,15 @@
 #endif
 
 
-/* -----------------------------------------------------------------------------
- * See the LICENSE file for information on copyright, usage and redistribution
- * of SWIG, and the README file for authors - http://www.swig.org/release.html.
- *
+/***********************************************************************
  * pyrun.swg
  *
- * This file contains the runtime support for Python modules
- * and includes code for managing global variables and pointer
- * type checking.
+ *     This file contains the runtime support for Python modules
+ *     and includes code for managing global variables and pointer
+ *     type checking.
  *
- * ----------------------------------------------------------------------------- */
+ * Author : David Beazley (beazley at cs.uchicago.edu)
+ ************************************************************************/
 
 /* Common SWIG API */
 
@@ -1195,7 +1149,7 @@
 SWIGRUNTIMEINLINE PyObject * 
 _SWIG_Py_None(void)
 {
-  PyObject *none = Py_BuildValue((char*)"");
+  PyObject *none = Py_BuildValue("");
   Py_DECREF(none);
   return none;
 }
@@ -1217,6 +1171,7 @@
   return none;
 }
 
+
 /* PySwigClientData */
 
 typedef struct {
@@ -1252,7 +1207,7 @@
     PySwigClientData *data = (PySwigClientData *)malloc(sizeof(PySwigClientData));
     /* the klass element */
     data->klass = obj;
-    Py_INCREF(data->klass);
+    Py_INCREF(obj);
     /* the newraw method and newargs arguments used to create a new raw instance */
     if (PyClass_Check(obj)) {
       data->newraw = 0;
@@ -1261,17 +1216,15 @@
     } else {
 #if (PY_VERSION_HEX < 0x02020000)
       data->newraw = 0;
+      data->newargs = obj;
+      Py_INCREF(obj);
 #else
-      data->newraw = PyObject_GetAttrString(data->klass, (char *)"__new__");
-#endif
-      if (data->newraw) {
-	Py_INCREF(data->newraw);
-	data->newargs = PyTuple_New(1);
-	PyTuple_SetItem(data->newargs, 0, obj);
-      } else {
-	data->newargs = obj;
-      }
+      data->newraw = PyObject_GetAttrString((PyObject*)&PyBaseObject_Type, (char *)"__new__");
+      Py_INCREF(data->newraw);
+      data->newargs = PyTuple_New(1);
+      PyTuple_SetItem(data->newargs, 0, obj);
       Py_INCREF(data->newargs);
+#endif
     }
     /* the destroy method, aka as the C++ delete method */
     data->destroy = PyObject_GetAttrString(data->klass, (char *)"__swig_destroy__");
@@ -1299,6 +1252,7 @@
 SWIGRUNTIME void 
 PySwigClientData_Del(PySwigClientData* data)
 {
+  Py_XDECREF(data->klass);
   Py_XDECREF(data->newraw);
   Py_XDECREF(data->newargs);
   Py_XDECREF(data->destroy);
@@ -1351,22 +1305,14 @@
 }
 
 SWIGRUNTIME PyObject *
-#ifdef METH_NOARGS
 PySwigObject_repr(PySwigObject *v)
-#else
-PySwigObject_repr(PySwigObject *v, PyObject *args)
-#endif
 {
   const char *name = SWIG_TypePrettyName(v->ty);
   PyObject *hex = PySwigObject_hex(v);    
   PyObject *repr = PyString_FromFormat("<Swig Object of type '%s' at 0x%s>", name, PyString_AsString(hex));
   Py_DECREF(hex);
   if (v->next) {
-#ifdef METH_NOARGS
     PyObject *nrep = PySwigObject_repr((PySwigObject *)v->next);
-#else
-    PyObject *nrep = PySwigObject_repr((PySwigObject *)v->next, args);
-#endif
     PyString_ConcatAndDel(&repr,nrep);
   }
   return repr;  
@@ -1375,11 +1321,7 @@
 SWIGRUNTIME int
 PySwigObject_print(PySwigObject *v, FILE *fp, int SWIGUNUSEDPARM(flags))
 {
-#ifdef METH_NOARGS
   PyObject *repr = PySwigObject_repr(v);
-#else
-  PyObject *repr = PySwigObject_repr(v, NULL);
-#endif
   if (repr) {
     fputs(PyString_AsString(repr), fp);
     Py_DECREF(repr);
@@ -1528,7 +1470,7 @@
   else
     {
       PySwigObject *sobj = (PySwigObject *)v;
-      PyObject *obj = PyBool_FromLong(sobj->own);
+      PyObject *obj = sobj->own ? Py_True : Py_False;
       if (val) {
 #ifdef METH_NOARGS
 	if (PyObject_IsTrue(val)) {
@@ -1544,6 +1486,7 @@
 	}
 #endif
       } 
+      Py_INCREF(obj);
       return obj;
     }
 }
@@ -1556,7 +1499,6 @@
   {(char *)"own",     (PyCFunction)PySwigObject_own,     METH_VARARGS, (char *)"returns/sets ownership of the pointer"},
   {(char *)"append",  (PyCFunction)PySwigObject_append,  METH_O,       (char *)"appends another 'this' object"},
   {(char *)"next",    (PyCFunction)PySwigObject_next,    METH_NOARGS,  (char *)"returns the next 'this' object"},
-  {(char *)"__repr__",(PyCFunction)PySwigObject_repr,    METH_NOARGS,  (char *)"returns object representation"},
   {0, 0, 0, 0}  
 };
 #else
@@ -1567,7 +1509,6 @@
   {(char *)"own",     (PyCFunction)PySwigObject_own,     METH_VARARGS,  (char *)"returns/sets ownership of the pointer"},
   {(char *)"append",  (PyCFunction)PySwigObject_append,  METH_VARARGS,  (char *)"appends another 'this' object"},
   {(char *)"next",    (PyCFunction)PySwigObject_next,    METH_VARARGS,  (char *)"returns the next 'this' object"},
-  {(char *)"__repr__",(PyCFunction)PySwigObject_repr,   METH_VARARGS,  (char *)"returns object representation"},
   {0, 0, 0, 0}  
 };
 #endif
@@ -1915,13 +1856,14 @@
       if (dictptr != NULL) {
 	PyObject *dict = *dictptr;
 	obj = dict ? PyDict_GetItem(dict, SWIG_This()) : 0;
-      } else {
+      }      
 #ifdef PyWeakref_CheckProxy
-	if (PyWeakref_CheckProxy(pyobj)) {
-	  PyObject *wobj = PyWeakref_GET_OBJECT(pyobj);
-	  return wobj ? SWIG_Python_GetSwigThis(wobj) : 0;
-	}
+      else if (PyWeakref_CheckProxy(pyobj)) {
+	PyObject *wobj = PyWeakref_GET_OBJECT(pyobj);
+	return wobj ? SWIG_Python_GetSwigThis(wobj) : 0;
+      }
 #endif
+      if (!obj) {
 	obj = PyObject_GetAttr(pyobj,SWIG_This());
 	if (obj) {
 	  Py_DECREF(obj);
@@ -1949,6 +1891,7 @@
   }
 }
 
+
 /* Acquire a pointer value */
 
 SWIGRUNTIME int
@@ -2054,7 +1997,7 @@
     void *vptr = 0;
     
     /* here we get the method pointer for callbacks */
-    const char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
+    char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
     const char *desc = doc ? strstr(doc, "swig_ptr: ") : 0;
     if (desc) {
       desc = ty ? SWIG_UnpackVoidPtr(desc + 10, &vptr, ty->name) : 0;
@@ -2128,14 +2071,6 @@
   }
   return inst;
 #else
-#if (PY_VERSION_HEX >= 0x02010000)
-  PyObject *inst;
-  PyObject *dict = PyDict_New();
-  PyDict_SetItem(dict, SWIG_This(), swig_this);
-  inst = PyInstance_NewRaw(data->newargs, dict);
-  Py_DECREF(dict);
-  return (PyObject *) inst;
-#else
   PyInstanceObject *inst = PyObject_NEW(PyInstanceObject, &PyInstance_Type);
   if (inst == NULL) {
     return NULL;
@@ -2147,56 +2082,11 @@
     Py_DECREF(inst);
     return NULL;
   }
-#ifdef Py_TPFLAGS_HAVE_WEAKREFS
-  inst->in_weakreflist = NULL;
-#endif
-#ifdef Py_TPFLAGS_GC
-  PyObject_GC_Init(inst);
-#endif
   PyDict_SetItem(inst->in_dict, SWIG_This(), swig_this);
   return (PyObject *) inst;
 #endif
-#endif
 }
 
-SWIGRUNTIME void
-SWIG_Python_SetSwigThis(PyObject *inst, PyObject *swig_this)
-{
- PyObject *dict;
-#if (PY_VERSION_HEX >= 0x02020000) && !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
- PyObject **dictptr = _PyObject_GetDictPtr(inst);
- if (dictptr != NULL) {
-   dict = *dictptr;
-   if (dict == NULL) {
-     dict = PyDict_New();
-     *dictptr = dict;
-   }
-   PyDict_SetItem(dict, SWIG_This(), swig_this);
-   return;
- }
-#endif
- dict = PyObject_GetAttrString(inst, (char*)"__dict__");
- PyDict_SetItem(dict, SWIG_This(), swig_this);
- Py_DECREF(dict);
-} 
-
-
-SWIGINTERN PyObject *
-SWIG_Python_InitShadowInstance(PyObject *args) {
-  PyObject *obj[2];
-  if (!SWIG_Python_UnpackTuple(args,(char*)"swiginit", 2, 2, obj)) {
-    return NULL;
-  } else {
-    PySwigObject *sthis = SWIG_Python_GetSwigThis(obj[0]);
-    if (sthis) {
-      PySwigObject_append((PyObject*) sthis, obj[1]);
-    } else {
-      SWIG_Python_SetSwigThis(obj[0], obj[1]);
-    }
-    return SWIG_Py_Void();
-  }
-}
-
 /* Create a new pointer object */
 
 SWIGRUNTIME PyObject *
@@ -2314,35 +2204,7 @@
   }
 }
 
-/* The python cached type query */
-SWIGRUNTIME PyObject *
-SWIG_Python_TypeCache(void) {
-  static PyObject *SWIG_STATIC_POINTER(cache) = PyDict_New();
-  return cache;
-}
 
-SWIGRUNTIME swig_type_info *
-SWIG_Python_TypeQuery(const char *type)
-{
-  PyObject *cache = SWIG_Python_TypeCache();
-  PyObject *key = PyString_FromString(type); 
-  PyObject *obj = PyDict_GetItem(cache, key);
-  swig_type_info *descriptor;
-  if (obj) {
-    descriptor = (swig_type_info *) PyCObject_AsVoidPtr(obj);
-  } else {
-    swig_module_info *swig_module = SWIG_Python_GetModule();
-    descriptor = SWIG_TypeQueryModule(swig_module, swig_module, type);
-    if (descriptor) {
-      obj = PyCObject_FromVoidPtr(descriptor, NULL);
-      PyDict_SetItem(cache, key, obj);
-      Py_DECREF(obj);
-    }
-  }
-  Py_DECREF(key);
-  return descriptor;
-}
-
 /* 
    For backward compatibility only
 */
@@ -2483,7 +2345,7 @@
 
 #if (PY_VERSION_HEX <= 0x02000000)
 # if !defined(SWIG_PYTHON_CLASSIC)
-#  error "This python version requires swig to be run with the '-classic' option"
+#  warning "This python version probably requires to use swig with the '-classic' option"
 # endif
 #endif
 
@@ -2494,12 +2356,11 @@
 
 #define SWIG_name    "_sparsetools"
 
-#define SWIGVERSION 0x010331 
-#define SWIG_VERSION SWIGVERSION
+#define SWIGVERSION 0x010328 
 
 
-#define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a)) 
-#define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a)) 
+#define SWIG_as_voidptr(a) const_cast<void * >(static_cast<const void * >(a)) 
+#define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast<void** >(a)) 
 
 
 #include <stdexcept>
@@ -2592,6 +2453,7 @@
 #define array_size(a,i)        (((PyArrayObject *)a)->dimensions[i])
 #define array_is_contiguous(a) (PyArray_ISCONTIGUOUS(a))
 
+
 /* Given a PyObject, return a string describing its type.
  */
 char* pytype_string(PyObject* py_obj) {
@@ -2788,7 +2650,7 @@
  * array has the specified shape, return 1.  Otherwise, set the python
  * error string and return 0.
  */
-int require_size(PyArrayObject* ary, int* size, int n) {
+int require_size(PyArrayObject* ary, npy_intp * size, int n) {
   int i;
   int success = 1;
   int len;
@@ -2807,14 +2669,14 @@
       }
       else
       {
-	sprintf(s, "%d,", size[i]);                
+	sprintf(s,"%" NPY_INTP_FMT ",", size[i]);                
       }    
       strcat(desired_dims,s);
     }
     len = strlen(desired_dims);
     desired_dims[len-1] = ']';
     for (i = 0; i < n; i++) {
-      sprintf(s, "%d,", array_size(ary,i));                            
+      sprintf(s,"%" NPY_INTP_FMT ",", array_size(ary,i));                            
       strcat(actual_dims,s);
     }
     len = strlen(actual_dims);
@@ -3002,7 +2864,7 @@
     if ((v < INT_MIN || v > INT_MAX)) {
       return SWIG_OverflowError;
     } else {
-      if (val) *val = static_cast< int >(v);
+      if (val) *val = static_cast<int >(v);
     }
   }  
   return res;
@@ -3057,14 +2919,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -3072,7 +2934,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -3080,7 +2942,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_FLOAT, &is_new_object5);
@@ -3088,6 +2950,7 @@
     arg5 = (float*) array5->data;
   }
   csrtocsc<float >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(float const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -3180,14 +3043,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -3195,7 +3058,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -3203,7 +3066,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_DOUBLE, &is_new_object5);
@@ -3211,6 +3074,7 @@
     arg5 = (double*) array5->data;
   }
   csrtocsc<double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(double const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -3303,14 +3167,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -3318,7 +3182,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -3326,7 +3190,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_LONGDOUBLE, &is_new_object5);
@@ -3334,6 +3198,7 @@
     arg5 = (long double*) array5->data;
   }
   csrtocsc<long double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(long double const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -3426,14 +3291,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -3441,7 +3306,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -3449,7 +3314,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CFLOAT, &is_new_object5);
@@ -3457,6 +3322,7 @@
     arg5 = (npy_cfloat*) array5->data;
   }
   csrtocsc<npy_cfloat >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cfloat const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -3549,14 +3415,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -3564,7 +3430,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -3572,7 +3438,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CDOUBLE, &is_new_object5);
@@ -3580,6 +3446,7 @@
     arg5 = (npy_cdouble*) array5->data;
   }
   csrtocsc<npy_cdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cdouble const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -3672,14 +3539,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -3687,7 +3554,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -3695,7 +3562,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CLONGDOUBLE, &is_new_object5);
@@ -3703,6 +3570,7 @@
     arg5 = (npy_clongdouble*) array5->data;
   }
   csrtocsc<npy_clongdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_clongdouble const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -3947,7 +3815,7 @@
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'csrtocsc'.\n  Possible C/C++ prototypes are:\n    csrtocsc<(float)>(int const,int const,int const [],int const [],float const [],std::vector<int > *,std::vector<int > *,std::vector<float > *)\n    csrtocsc<(double)>(int const,int const,int const [],int const [],double const [],std::vector<int > *,std::vector<int > *,std::vector<double > *)\n    csrtocsc<(long double)>(int const,int const,int const [],int const [],long double const [],std::vector<int > *,std::vector<int > *,std::vector<long double > *)\n    csrtocsc<(npy_cfloat)>(int const,int const,int const [],int const [],npy_cfloat const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cfloat > *)\n    csrtocsc<(npy_cdouble)>(int const,int const,int const [],int const [],npy_cdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cdouble > *)\n    csrtocsc<(npy_clongdouble)>(int const,int const,int const [],int const [],npy_clongdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_clongdouble > *)\n");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'csrtocsc'");
   return NULL;
 }
 
@@ -3998,14 +3866,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -4013,7 +3881,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -4021,7 +3889,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_FLOAT, &is_new_object5);
@@ -4029,6 +3897,7 @@
     arg5 = (float*) array5->data;
   }
   csctocsr<float >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(float const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -4121,14 +3990,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -4136,7 +4005,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -4144,7 +4013,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_DOUBLE, &is_new_object5);
@@ -4152,6 +4021,7 @@
     arg5 = (double*) array5->data;
   }
   csctocsr<double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(double const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -4244,14 +4114,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -4259,7 +4129,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -4267,7 +4137,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_LONGDOUBLE, &is_new_object5);
@@ -4275,6 +4145,7 @@
     arg5 = (long double*) array5->data;
   }
   csctocsr<long double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(long double const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -4367,14 +4238,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -4382,7 +4253,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -4390,7 +4261,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CFLOAT, &is_new_object5);
@@ -4398,6 +4269,7 @@
     arg5 = (npy_cfloat*) array5->data;
   }
   csctocsr<npy_cfloat >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cfloat const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -4490,14 +4362,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -4505,7 +4377,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -4513,7 +4385,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CDOUBLE, &is_new_object5);
@@ -4521,6 +4393,7 @@
     arg5 = (npy_cdouble*) array5->data;
   }
   csctocsr<npy_cdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cdouble const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -4613,14 +4486,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -4628,7 +4501,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -4636,7 +4509,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CLONGDOUBLE, &is_new_object5);
@@ -4644,6 +4517,7 @@
     arg5 = (npy_clongdouble*) array5->data;
   }
   csctocsr<npy_clongdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_clongdouble const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -4888,7 +4762,7 @@
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'csctocsr'.\n  Possible C/C++ prototypes are:\n    csctocsr<(float)>(int const,int const,int const [],int const [],float const [],std::vector<int > *,std::vector<int > *,std::vector<float > *)\n    csctocsr<(double)>(int const,int const,int const [],int const [],double const [],std::vector<int > *,std::vector<int > *,std::vector<double > *)\n    csctocsr<(long double)>(int const,int const,int const [],int const [],long double const [],std::vector<int > *,std::vector<int > *,std::vector<long double > *)\n    csctocsr<(npy_cfloat)>(int const,int const,int const [],int const [],npy_cfloat const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cfloat > *)\n    csctocsr<(npy_cdouble)>(int const,int const,int const [],int const [],npy_cdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cdouble > *)\n    csctocsr<(npy_clongdouble)>(int const,int const,int const [],int const [],npy_clongdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_clongdouble > *)\n");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'csctocsr'");
   return NULL;
 }
 
@@ -4939,14 +4813,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -4954,7 +4828,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -4962,7 +4836,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_FLOAT, &is_new_object5);
@@ -4970,6 +4844,7 @@
     arg5 = (float*) array5->data;
   }
   csrtocoo<float >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(float const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -5062,14 +4937,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -5077,7 +4952,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -5085,7 +4960,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_DOUBLE, &is_new_object5);
@@ -5093,6 +4968,7 @@
     arg5 = (double*) array5->data;
   }
   csrtocoo<double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(double const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -5185,14 +5061,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -5200,7 +5076,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -5208,7 +5084,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_LONGDOUBLE, &is_new_object5);
@@ -5216,6 +5092,7 @@
     arg5 = (long double*) array5->data;
   }
   csrtocoo<long double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(long double const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -5308,14 +5185,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -5323,7 +5200,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -5331,7 +5208,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CFLOAT, &is_new_object5);
@@ -5339,6 +5216,7 @@
     arg5 = (npy_cfloat*) array5->data;
   }
   csrtocoo<npy_cfloat >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cfloat const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -5431,14 +5309,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -5446,7 +5324,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -5454,7 +5332,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CDOUBLE, &is_new_object5);
@@ -5462,6 +5340,7 @@
     arg5 = (npy_cdouble*) array5->data;
   }
   csrtocoo<npy_cdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cdouble const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -5554,14 +5433,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrtocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrtocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -5569,7 +5448,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -5577,7 +5456,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CLONGDOUBLE, &is_new_object5);
@@ -5585,6 +5464,7 @@
     arg5 = (npy_clongdouble*) array5->data;
   }
   csrtocoo<npy_clongdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_clongdouble const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -5829,7 +5709,7 @@
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'csrtocoo'.\n  Possible C/C++ prototypes are:\n    csrtocoo<(float)>(int const,int const,int const [],int const [],float const [],std::vector<int > *,std::vector<int > *,std::vector<float > *)\n    csrtocoo<(double)>(int const,int const,int const [],int const [],double const [],std::vector<int > *,std::vector<int > *,std::vector<double > *)\n    csrtocoo<(long double)>(int const,int const,int const [],int const [],long double const [],std::vector<int > *,std::vector<int > *,std::vector<long double > *)\n    csrtocoo<(npy_cfloat)>(int const,int const,int const [],int const [],npy_cfloat const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cfloat > *)\n    csrtocoo<(npy_cdouble)>(int const,int const,int const [],int const [],npy_cdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cdouble > *)\n    csrtocoo<(npy_clongdouble)>(int const,int const,int const [],int const [],npy_clongdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_clongdouble > *)\n");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'csrtocoo'");
   return NULL;
 }
 
@@ -5884,19 +5764,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsr" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -5904,7 +5784,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -5912,7 +5792,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_FLOAT, &is_new_object6);
@@ -5920,6 +5800,7 @@
     arg6 = (float*) array6->data;
   }
   cootocsr<float >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(float const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -6016,19 +5897,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsr" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -6036,7 +5917,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -6044,7 +5925,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_DOUBLE, &is_new_object6);
@@ -6052,6 +5933,7 @@
     arg6 = (double*) array6->data;
   }
   cootocsr<double >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(double const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -6148,19 +6030,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsr" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -6168,7 +6050,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -6176,7 +6058,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_LONGDOUBLE, &is_new_object6);
@@ -6184,6 +6066,7 @@
     arg6 = (long double*) array6->data;
   }
   cootocsr<long double >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(long double const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -6280,19 +6163,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsr" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -6300,7 +6183,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -6308,7 +6191,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_CFLOAT, &is_new_object6);
@@ -6316,6 +6199,7 @@
     arg6 = (npy_cfloat*) array6->data;
   }
   cootocsr<npy_cfloat >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(npy_cfloat const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -6412,19 +6296,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsr" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -6432,7 +6316,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -6440,7 +6324,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_CDOUBLE, &is_new_object6);
@@ -6448,6 +6332,7 @@
     arg6 = (npy_cdouble*) array6->data;
   }
   cootocsr<npy_cdouble >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(npy_cdouble const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -6544,19 +6429,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsr" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -6564,7 +6449,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -6572,7 +6457,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_CLONGDOUBLE, &is_new_object6);
@@ -6580,6 +6465,7 @@
     arg6 = (npy_clongdouble*) array6->data;
   }
   cootocsr<npy_clongdouble >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(npy_clongdouble const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -6860,7 +6746,7 @@
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'cootocsr'.\n  Possible C/C++ prototypes are:\n    cootocsr<(float)>(int const,int const,int const,int const [],int const [],float const [],std::vector<int > *,std::vector<int > *,std::vector<float > *)\n    cootocsr<(double)>(int const,int const,int const,int const [],int const [],double const [],std::vector<int > *,std::vector<int > *,std::vector<double > *)\n    cootocsr<(long double)>(int const,int const,int const,int const [],int const [],long double const [],std::vector<int > *,std::vector<int > *,std::vector<long double > *)\n    cootocsr<(npy_cfloat)>(int const,int const,int const,int const [],int const [],npy_cfloat const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cfloat > *)\n    cootocsr<(npy_cdouble)>(int const,int const,int const,int const [],int const [],npy_cdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cdouble > *)\n    cootocsr<(npy_clongdouble)>(int const,int const,int const,int const [],int const [],npy_clongdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_clongdouble > *)\n");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'cootocsr'");
   return NULL;
 }
 
@@ -6911,14 +6797,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -6926,7 +6812,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -6934,7 +6820,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_FLOAT, &is_new_object5);
@@ -6942,6 +6828,7 @@
     arg5 = (float*) array5->data;
   }
   csctocoo<float >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(float const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -7034,14 +6921,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -7049,7 +6936,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -7057,7 +6944,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_DOUBLE, &is_new_object5);
@@ -7065,6 +6952,7 @@
     arg5 = (double*) array5->data;
   }
   csctocoo<double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(double const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -7157,14 +7045,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -7172,7 +7060,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -7180,7 +7068,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_LONGDOUBLE, &is_new_object5);
@@ -7188,6 +7076,7 @@
     arg5 = (long double*) array5->data;
   }
   csctocoo<long double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(long double const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -7280,14 +7169,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -7295,7 +7184,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -7303,7 +7192,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CFLOAT, &is_new_object5);
@@ -7311,6 +7200,7 @@
     arg5 = (npy_cfloat*) array5->data;
   }
   csctocoo<npy_cfloat >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cfloat const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -7403,14 +7293,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -7418,7 +7308,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -7426,7 +7316,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CDOUBLE, &is_new_object5);
@@ -7434,6 +7324,7 @@
     arg5 = (npy_cdouble*) array5->data;
   }
   csctocoo<npy_cdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cdouble const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -7526,14 +7417,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csctocoo" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csctocoo" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -7541,7 +7432,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -7549,7 +7440,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CLONGDOUBLE, &is_new_object5);
@@ -7557,6 +7448,7 @@
     arg5 = (npy_clongdouble*) array5->data;
   }
   csctocoo<npy_clongdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_clongdouble const (*))arg5,arg6,arg7,arg8);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg6)->size(); 
@@ -7801,7 +7693,7 @@
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'csctocoo'.\n  Possible C/C++ prototypes are:\n    csctocoo<(float)>(int const,int const,int const [],int const [],float const [],std::vector<int > *,std::vector<int > *,std::vector<float > *)\n    csctocoo<(double)>(int const,int const,int const [],int const [],double const [],std::vector<int > *,std::vector<int > *,std::vector<double > *)\n    csctocoo<(long double)>(int const,int const,int const [],int const [],long double const [],std::vector<int > *,std::vector<int > *,std::vector<long double > *)\n    csctocoo<(npy_cfloat)>(int const,int const,int const [],int const [],npy_cfloat const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cfloat > *)\n    csctocoo<(npy_cdouble)>(int const,int const,int const [],int const [],npy_cdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cdouble > *)\n    csctocoo<(npy_clongdouble)>(int const,int const,int const [],int const [],npy_clongdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_clongdouble > *)\n");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'csctocoo'");
   return NULL;
 }
 
@@ -7856,19 +7748,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsc" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -7876,7 +7768,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -7884,7 +7776,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_FLOAT, &is_new_object6);
@@ -7892,6 +7784,7 @@
     arg6 = (float*) array6->data;
   }
   cootocsc<float >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(float const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -7988,19 +7881,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsc" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -8008,7 +7901,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -8016,7 +7909,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_DOUBLE, &is_new_object6);
@@ -8024,6 +7917,7 @@
     arg6 = (double*) array6->data;
   }
   cootocsc<double >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(double const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -8120,19 +8014,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsc" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -8140,7 +8034,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -8148,7 +8042,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_LONGDOUBLE, &is_new_object6);
@@ -8156,6 +8050,7 @@
     arg6 = (long double*) array6->data;
   }
   cootocsc<long double >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(long double const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -8252,19 +8147,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsc" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -8272,7 +8167,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -8280,7 +8175,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_CFLOAT, &is_new_object6);
@@ -8288,6 +8183,7 @@
     arg6 = (npy_cfloat*) array6->data;
   }
   cootocsc<npy_cfloat >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(npy_cfloat const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -8384,19 +8280,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsc" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -8404,7 +8300,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -8412,7 +8308,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_CDOUBLE, &is_new_object6);
@@ -8420,6 +8316,7 @@
     arg6 = (npy_cdouble*) array6->data;
   }
   cootocsc<npy_cdouble >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(npy_cdouble const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -8516,19 +8413,19 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cootocsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cootocsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cootocsc" "', argument " "3"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg3 = static_cast<int >(val3);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -8536,7 +8433,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_INT, &is_new_object5);
@@ -8544,7 +8441,7 @@
     arg5 = (int*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_CLONGDOUBLE, &is_new_object6);
@@ -8552,6 +8449,7 @@
     arg6 = (npy_clongdouble*) array6->data;
   }
   cootocsc<npy_clongdouble >(arg1,arg2,arg3,(int const (*))arg4,(int const (*))arg5,(npy_clongdouble const (*))arg6,arg7,arg8,arg9);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg7)->size(); 
@@ -8832,7 +8730,7 @@
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'cootocsc'.\n  Possible C/C++ prototypes are:\n    cootocsc<(float)>(int const,int const,int const,int const [],int const [],float const [],std::vector<int > *,std::vector<int > *,std::vector<float > *)\n    cootocsc<(double)>(int const,int const,int const,int const [],int const [],double const [],std::vector<int > *,std::vector<int > *,std::vector<double > *)\n    cootocsc<(long double)>(int const,int const,int const,int const [],int const [],long double const [],std::vector<int > *,std::vector<int > *,std::vector<long double > *)\n    cootocsc<(npy_cfloat)>(int const,int const,int const,int const [],int const [],npy_cfloat const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cfloat > *)\n    cootocsc<(npy_cdouble)>(int const,int const,int const,int const [],int const [],npy_cdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cdouble > *)\n    cootocsc<(npy_clongdouble)>(int const,int const,int const,int const [],int const [],npy_clongdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_clongdouble > *)\n");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'cootocsc'");
   return NULL;
 }
 
@@ -8895,14 +8793,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrplcsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrplcsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -8910,7 +8808,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -8918,7 +8816,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_FLOAT, &is_new_object5);
@@ -8926,7 +8824,7 @@
     arg5 = (float*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -8934,7 +8832,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -8942,7 +8840,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_FLOAT, &is_new_object8);
@@ -8950,6 +8848,7 @@
     arg8 = (float*) array8->data;
   }
   csrplcsr<float >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(float const (*))arg5,(int const (*))arg6,(int const (*))arg7,(float const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -9072,14 +8971,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrplcsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrplcsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -9087,7 +8986,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -9095,7 +8994,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_DOUBLE, &is_new_object5);
@@ -9103,7 +9002,7 @@
     arg5 = (double*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -9111,7 +9010,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -9119,7 +9018,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_DOUBLE, &is_new_object8);
@@ -9127,6 +9026,7 @@
     arg8 = (double*) array8->data;
   }
   csrplcsr<double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(double const (*))arg5,(int const (*))arg6,(int const (*))arg7,(double const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -9249,14 +9149,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrplcsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrplcsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -9264,7 +9164,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -9272,7 +9172,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_LONGDOUBLE, &is_new_object5);
@@ -9280,7 +9180,7 @@
     arg5 = (long double*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -9288,7 +9188,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -9296,7 +9196,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_LONGDOUBLE, &is_new_object8);
@@ -9304,6 +9204,7 @@
     arg8 = (long double*) array8->data;
   }
   csrplcsr<long double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(long double const (*))arg5,(int const (*))arg6,(int const (*))arg7,(long double const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -9426,14 +9327,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrplcsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrplcsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -9441,7 +9342,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -9449,7 +9350,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CFLOAT, &is_new_object5);
@@ -9457,7 +9358,7 @@
     arg5 = (npy_cfloat*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -9465,7 +9366,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -9473,7 +9374,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_CFLOAT, &is_new_object8);
@@ -9481,6 +9382,7 @@
     arg8 = (npy_cfloat*) array8->data;
   }
   csrplcsr<npy_cfloat >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cfloat const (*))arg5,(int const (*))arg6,(int const (*))arg7,(npy_cfloat const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -9603,14 +9505,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrplcsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrplcsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -9618,7 +9520,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -9626,7 +9528,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CDOUBLE, &is_new_object5);
@@ -9634,7 +9536,7 @@
     arg5 = (npy_cdouble*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -9642,7 +9544,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -9650,7 +9552,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_CDOUBLE, &is_new_object8);
@@ -9658,6 +9560,7 @@
     arg8 = (npy_cdouble*) array8->data;
   }
   csrplcsr<npy_cdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cdouble const (*))arg5,(int const (*))arg6,(int const (*))arg7,(npy_cdouble const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -9780,14 +9683,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "csrplcsr" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "csrplcsr" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -9795,7 +9698,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -9803,7 +9706,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CLONGDOUBLE, &is_new_object5);
@@ -9811,7 +9714,7 @@
     arg5 = (npy_clongdouble*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -9819,7 +9722,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -9827,7 +9730,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_CLONGDOUBLE, &is_new_object8);
@@ -9835,6 +9738,7 @@
     arg8 = (npy_clongdouble*) array8->data;
   }
   csrplcsr<npy_clongdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_clongdouble const (*))arg5,(int const (*))arg6,(int const (*))arg7,(npy_clongdouble const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -10187,7 +10091,7 @@
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'csrplcsr'.\n  Possible C/C++ prototypes are:\n    csrplcsr<(float)>(int const,int const,int const [],int const [],float const [],int const [],int const [],float const [],std::vector<int > *,std::vector<int > *,std::vector<float > *)\n    csrplcsr<(double)>(int const,int const,int const [],int const [],double const [],int const [],int const [],double const [],std::vector<int > *,std::vector<int > *,std::vector<double > *)\n    csrplcsr<(long double)>(int const,int const,int const [],int const [],long double const [],int const [],int const [],long double const [],std::vector<int > *,std::vector<int > *,std::vector<long double > *)\n    csrplcsr<(npy_cfloat)>(int const,int const,int const [],int const [],npy_cfloat const [],int const [],int const [],npy_cfloat const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cfloat > *)\n    csrplcsr<(npy_cdouble)>(int const,int const,int const [],int const [],npy_cdouble const [],int const [],int const [],npy_cdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_cdouble > *)\n    csrplcsr<(npy_clongdouble)>(int const,int const,int const [],int const [],npy_clongdouble const [],int const [],int const [],npy_clongdouble const [],std::vector<int > *,std::vector<int > *,std::vector<npy_clongdouble > *)\n");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'csrplcsr'");
   return NULL;
 }
 
@@ -10250,14 +10154,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cscplcsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cscplcsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -10265,7 +10169,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -10273,7 +10177,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_FLOAT, &is_new_object5);
@@ -10281,7 +10185,7 @@
     arg5 = (float*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -10289,7 +10193,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -10297,7 +10201,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_FLOAT, &is_new_object8);
@@ -10305,6 +10209,7 @@
     arg8 = (float*) array8->data;
   }
   cscplcsc<float >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(float const (*))arg5,(int const (*))arg6,(int const (*))arg7,(float const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -10427,14 +10332,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cscplcsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cscplcsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -10442,7 +10347,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -10450,7 +10355,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_DOUBLE, &is_new_object5);
@@ -10458,7 +10363,7 @@
     arg5 = (double*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -10466,7 +10371,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -10474,7 +10379,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_DOUBLE, &is_new_object8);
@@ -10482,6 +10387,7 @@
     arg8 = (double*) array8->data;
   }
   cscplcsc<double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(double const (*))arg5,(int const (*))arg6,(int const (*))arg7,(double const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -10604,14 +10510,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cscplcsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cscplcsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -10619,7 +10525,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -10627,7 +10533,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_LONGDOUBLE, &is_new_object5);
@@ -10635,7 +10541,7 @@
     arg5 = (long double*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -10643,7 +10549,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -10651,7 +10557,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_LONGDOUBLE, &is_new_object8);
@@ -10659,6 +10565,7 @@
     arg8 = (long double*) array8->data;
   }
   cscplcsc<long double >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(long double const (*))arg5,(int const (*))arg6,(int const (*))arg7,(long double const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -10781,14 +10688,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cscplcsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cscplcsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -10796,7 +10703,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -10804,7 +10711,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CFLOAT, &is_new_object5);
@@ -10812,7 +10719,7 @@
     arg5 = (npy_cfloat*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -10820,7 +10727,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -10828,7 +10735,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_CFLOAT, &is_new_object8);
@@ -10836,6 +10743,7 @@
     arg8 = (npy_cfloat*) array8->data;
   }
   cscplcsc<npy_cfloat >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cfloat const (*))arg5,(int const (*))arg6,(int const (*))arg7,(npy_cfloat const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -10958,14 +10866,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cscplcsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cscplcsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int >(val2);
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array3 = obj_to_array_contiguous_allow_conversion(obj2, PyArray_INT, &is_new_object3);
@@ -10973,7 +10881,7 @@
     arg3 = (int*) array3->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array4 = obj_to_array_contiguous_allow_conversion(obj3, PyArray_INT, &is_new_object4);
@@ -10981,7 +10889,7 @@
     arg4 = (int*) array4->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array5 = obj_to_array_contiguous_allow_conversion(obj4, PyArray_CDOUBLE, &is_new_object5);
@@ -10989,7 +10897,7 @@
     arg5 = (npy_cdouble*) array5->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array6 = obj_to_array_contiguous_allow_conversion(obj5, PyArray_INT, &is_new_object6);
@@ -10997,7 +10905,7 @@
     arg6 = (int*) array6->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array7 = obj_to_array_contiguous_allow_conversion(obj6, PyArray_INT, &is_new_object7);
@@ -11005,7 +10913,7 @@
     arg7 = (int*) array7->data;
   }
   {
-    int size[1] = {
+    npy_intp size[1] = {
       -1
     };
     array8 = obj_to_array_contiguous_allow_conversion(obj7, PyArray_CDOUBLE, &is_new_object8);
@@ -11013,6 +10921,7 @@
     arg8 = (npy_cdouble*) array8->data;
   }
   cscplcsc<npy_cdouble >(arg1,arg2,(int const (*))arg3,(int const (*))arg4,(npy_cdouble const (*))arg5,(int const (*))arg6,(int const (*))arg7,(npy_cdouble const (*))arg8,arg9,arg10,arg11);
+  
   resultobj = SWIG_Py_Void();
   {
     int length = (arg9)->size(); 
@@ -11135,14 +11044,14 @@
   if (!SWIG_IsOK(ecode1)) {
     SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cscplcsc" "', argument " "1"" of type '" "int""'");
   } 
-  arg1 = static_cast< int >(val1);
+  arg1 = static_cast<int >(val1);
   ecode2 = SWIG_AsVal_int(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cscplcsc" "', argument " "2"" of type '" "int""'");
   } 
-  arg2 = static_cast< int >(val2);
+  arg2 = static_cast<int