# This file was automatically generated by SWIG (https://www.swig.org).
# Version 4.3.1
#
# Do not make changes to this file unless you know what you are doing - modify
# the SWIG interface file instead.

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _vnl_matrixPython
else:
    import _vnl_matrixPython

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

_swig_new_instance_method = _vnl_matrixPython.SWIG_PyInstanceMethod_New
_swig_new_static_method = _vnl_matrixPython.SWIG_PyStaticMethod_New

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)


import stdcomplexPython
import pyBasePython
import vnl_vectorPython
class vnl_matrixCF(object):
    r"""Proxy of C++ vnl_matrixCF class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixCF self) -> vnl_matrixCF
        __init__(vnl_matrixCF self, unsigned int r, unsigned int c) -> vnl_matrixCF
        __init__(vnl_matrixCF self, unsigned int r, unsigned int c, stdcomplexF v0) -> vnl_matrixCF
        __init__(vnl_matrixCF self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixCF
        __init__(vnl_matrixCF self, unsigned int r, unsigned int c, unsigned int n, stdcomplexF values) -> vnl_matrixCF
        __init__(vnl_matrixCF self, stdcomplexF data_block, unsigned int r, unsigned int c) -> vnl_matrixCF
        __init__(vnl_matrixCF self, vnl_matrixCF arg0) -> vnl_matrixCF
        __init__(vnl_matrixCF self, vnl_matrixCF arg0, vnl_matrixCF arg1, vnl_tag_add arg2) -> vnl_matrixCF
        __init__(vnl_matrixCF self, vnl_matrixCF arg0, vnl_matrixCF arg1, vnl_tag_sub arg2) -> vnl_matrixCF
        __init__(vnl_matrixCF self, vnl_matrixCF arg0, stdcomplexF arg1, vnl_tag_mul arg2) -> vnl_matrixCF
        __init__(vnl_matrixCF self, vnl_matrixCF arg0, stdcomplexF arg1, vnl_tag_div arg2) -> vnl_matrixCF
        __init__(vnl_matrixCF self, vnl_matrixCF arg0, stdcomplexF arg1, vnl_tag_add arg2) -> vnl_matrixCF
        __init__(vnl_matrixCF self, vnl_matrixCF arg0, stdcomplexF arg1, vnl_tag_sub arg2) -> vnl_matrixCF
        __init__(vnl_matrixCF self, vnl_matrixCF arg0, vnl_matrixCF arg1, vnl_tag_mul arg2) -> vnl_matrixCF
        __init__(vnl_matrixCF self, vnl_matrixCF that, vnl_tag_grab arg1) -> vnl_matrixCF
        """
        _vnl_matrixPython.vnl_matrixCF_swiginit(self, _vnl_matrixPython.new_vnl_matrixCF(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixCF
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixCF___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixCF___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixCF_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixCF_set_size)

# Register vnl_matrixCF in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixCF_swigregister(vnl_matrixCF)
class vnl_matrixD(object):
    r"""Proxy of C++ vnl_matrixD class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixD self) -> vnl_matrixD
        __init__(vnl_matrixD self, unsigned int r, unsigned int c) -> vnl_matrixD
        __init__(vnl_matrixD self, unsigned int r, unsigned int c, double const & v0) -> vnl_matrixD
        __init__(vnl_matrixD self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixD
        __init__(vnl_matrixD self, unsigned int r, unsigned int c, unsigned int n, double const * values) -> vnl_matrixD
        __init__(vnl_matrixD self, double const * data_block, unsigned int r, unsigned int c) -> vnl_matrixD
        __init__(vnl_matrixD self, vnl_matrixD arg0) -> vnl_matrixD
        __init__(vnl_matrixD self, vnl_matrixD arg0, vnl_matrixD arg1, vnl_tag_add arg2) -> vnl_matrixD
        __init__(vnl_matrixD self, vnl_matrixD arg0, vnl_matrixD arg1, vnl_tag_sub arg2) -> vnl_matrixD
        __init__(vnl_matrixD self, vnl_matrixD arg0, double arg1, vnl_tag_mul arg2) -> vnl_matrixD
        __init__(vnl_matrixD self, vnl_matrixD arg0, double arg1, vnl_tag_div arg2) -> vnl_matrixD
        __init__(vnl_matrixD self, vnl_matrixD arg0, double arg1, vnl_tag_add arg2) -> vnl_matrixD
        __init__(vnl_matrixD self, vnl_matrixD arg0, double arg1, vnl_tag_sub arg2) -> vnl_matrixD
        __init__(vnl_matrixD self, vnl_matrixD arg0, vnl_matrixD arg1, vnl_tag_mul arg2) -> vnl_matrixD
        __init__(vnl_matrixD self, vnl_matrixD that, vnl_tag_grab arg1) -> vnl_matrixD
        """
        _vnl_matrixPython.vnl_matrixD_swiginit(self, _vnl_matrixPython.new_vnl_matrixD(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixD
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixD___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixD___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixD_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixD_set_size)

# Register vnl_matrixD in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixD_swigregister(vnl_matrixD)
class vnl_matrixF(object):
    r"""Proxy of C++ vnl_matrixF class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixF self) -> vnl_matrixF
        __init__(vnl_matrixF self, unsigned int r, unsigned int c) -> vnl_matrixF
        __init__(vnl_matrixF self, unsigned int r, unsigned int c, float const & v0) -> vnl_matrixF
        __init__(vnl_matrixF self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixF
        __init__(vnl_matrixF self, unsigned int r, unsigned int c, unsigned int n, float const * values) -> vnl_matrixF
        __init__(vnl_matrixF self, float const * data_block, unsigned int r, unsigned int c) -> vnl_matrixF
        __init__(vnl_matrixF self, vnl_matrixF arg0) -> vnl_matrixF
        __init__(vnl_matrixF self, vnl_matrixF arg0, vnl_matrixF arg1, vnl_tag_add arg2) -> vnl_matrixF
        __init__(vnl_matrixF self, vnl_matrixF arg0, vnl_matrixF arg1, vnl_tag_sub arg2) -> vnl_matrixF
        __init__(vnl_matrixF self, vnl_matrixF arg0, float arg1, vnl_tag_mul arg2) -> vnl_matrixF
        __init__(vnl_matrixF self, vnl_matrixF arg0, float arg1, vnl_tag_div arg2) -> vnl_matrixF
        __init__(vnl_matrixF self, vnl_matrixF arg0, float arg1, vnl_tag_add arg2) -> vnl_matrixF
        __init__(vnl_matrixF self, vnl_matrixF arg0, float arg1, vnl_tag_sub arg2) -> vnl_matrixF
        __init__(vnl_matrixF self, vnl_matrixF arg0, vnl_matrixF arg1, vnl_tag_mul arg2) -> vnl_matrixF
        __init__(vnl_matrixF self, vnl_matrixF that, vnl_tag_grab arg1) -> vnl_matrixF
        """
        _vnl_matrixPython.vnl_matrixF_swiginit(self, _vnl_matrixPython.new_vnl_matrixF(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixF
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixF___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixF___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixF_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixF_set_size)

# Register vnl_matrixF in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixF_swigregister(vnl_matrixF)
class vnl_matrixLD(object):
    r"""Proxy of C++ vnl_matrixLD class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixLD self) -> vnl_matrixLD
        __init__(vnl_matrixLD self, unsigned int r, unsigned int c) -> vnl_matrixLD
        __init__(vnl_matrixLD self, unsigned int r, unsigned int c, long double const & v0) -> vnl_matrixLD
        __init__(vnl_matrixLD self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixLD
        __init__(vnl_matrixLD self, unsigned int r, unsigned int c, unsigned int n, long double const * values) -> vnl_matrixLD
        __init__(vnl_matrixLD self, long double const * data_block, unsigned int r, unsigned int c) -> vnl_matrixLD
        __init__(vnl_matrixLD self, vnl_matrixLD arg0) -> vnl_matrixLD
        __init__(vnl_matrixLD self, vnl_matrixLD arg0, vnl_matrixLD arg1, vnl_tag_add arg2) -> vnl_matrixLD
        __init__(vnl_matrixLD self, vnl_matrixLD arg0, vnl_matrixLD arg1, vnl_tag_sub arg2) -> vnl_matrixLD
        __init__(vnl_matrixLD self, vnl_matrixLD arg0, long double arg1, vnl_tag_mul arg2) -> vnl_matrixLD
        __init__(vnl_matrixLD self, vnl_matrixLD arg0, long double arg1, vnl_tag_div arg2) -> vnl_matrixLD
        __init__(vnl_matrixLD self, vnl_matrixLD arg0, long double arg1, vnl_tag_add arg2) -> vnl_matrixLD
        __init__(vnl_matrixLD self, vnl_matrixLD arg0, long double arg1, vnl_tag_sub arg2) -> vnl_matrixLD
        __init__(vnl_matrixLD self, vnl_matrixLD arg0, vnl_matrixLD arg1, vnl_tag_mul arg2) -> vnl_matrixLD
        __init__(vnl_matrixLD self, vnl_matrixLD that, vnl_tag_grab arg1) -> vnl_matrixLD
        """
        _vnl_matrixPython.vnl_matrixLD_swiginit(self, _vnl_matrixPython.new_vnl_matrixLD(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixLD
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixLD___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixLD___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixLD_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixLD_set_size)

# Register vnl_matrixLD in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixLD_swigregister(vnl_matrixLD)
class vnl_matrixSC(object):
    r"""Proxy of C++ vnl_matrixSC class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixSC self) -> vnl_matrixSC
        __init__(vnl_matrixSC self, unsigned int r, unsigned int c) -> vnl_matrixSC
        __init__(vnl_matrixSC self, unsigned int r, unsigned int c, signed char const & v0) -> vnl_matrixSC
        __init__(vnl_matrixSC self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixSC
        __init__(vnl_matrixSC self, unsigned int r, unsigned int c, unsigned int n, signed char const * values) -> vnl_matrixSC
        __init__(vnl_matrixSC self, signed char const * data_block, unsigned int r, unsigned int c) -> vnl_matrixSC
        __init__(vnl_matrixSC self, vnl_matrixSC arg0) -> vnl_matrixSC
        __init__(vnl_matrixSC self, vnl_matrixSC arg0, vnl_matrixSC arg1, vnl_tag_add arg2) -> vnl_matrixSC
        __init__(vnl_matrixSC self, vnl_matrixSC arg0, vnl_matrixSC arg1, vnl_tag_sub arg2) -> vnl_matrixSC
        __init__(vnl_matrixSC self, vnl_matrixSC arg0, signed char arg1, vnl_tag_mul arg2) -> vnl_matrixSC
        __init__(vnl_matrixSC self, vnl_matrixSC arg0, signed char arg1, vnl_tag_div arg2) -> vnl_matrixSC
        __init__(vnl_matrixSC self, vnl_matrixSC arg0, signed char arg1, vnl_tag_add arg2) -> vnl_matrixSC
        __init__(vnl_matrixSC self, vnl_matrixSC arg0, signed char arg1, vnl_tag_sub arg2) -> vnl_matrixSC
        __init__(vnl_matrixSC self, vnl_matrixSC arg0, vnl_matrixSC arg1, vnl_tag_mul arg2) -> vnl_matrixSC
        __init__(vnl_matrixSC self, vnl_matrixSC that, vnl_tag_grab arg1) -> vnl_matrixSC
        """
        _vnl_matrixPython.vnl_matrixSC_swiginit(self, _vnl_matrixPython.new_vnl_matrixSC(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixSC
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSC___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSC___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixSC_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSC_set_size)

# Register vnl_matrixSC in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixSC_swigregister(vnl_matrixSC)
class vnl_matrixSI(object):
    r"""Proxy of C++ vnl_matrixSI class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixSI self) -> vnl_matrixSI
        __init__(vnl_matrixSI self, unsigned int r, unsigned int c) -> vnl_matrixSI
        __init__(vnl_matrixSI self, unsigned int r, unsigned int c, int const & v0) -> vnl_matrixSI
        __init__(vnl_matrixSI self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixSI
        __init__(vnl_matrixSI self, unsigned int r, unsigned int c, unsigned int n, int const * values) -> vnl_matrixSI
        __init__(vnl_matrixSI self, int const * data_block, unsigned int r, unsigned int c) -> vnl_matrixSI
        __init__(vnl_matrixSI self, vnl_matrixSI arg0) -> vnl_matrixSI
        __init__(vnl_matrixSI self, vnl_matrixSI arg0, vnl_matrixSI arg1, vnl_tag_add arg2) -> vnl_matrixSI
        __init__(vnl_matrixSI self, vnl_matrixSI arg0, vnl_matrixSI arg1, vnl_tag_sub arg2) -> vnl_matrixSI
        __init__(vnl_matrixSI self, vnl_matrixSI arg0, int arg1, vnl_tag_mul arg2) -> vnl_matrixSI
        __init__(vnl_matrixSI self, vnl_matrixSI arg0, int arg1, vnl_tag_div arg2) -> vnl_matrixSI
        __init__(vnl_matrixSI self, vnl_matrixSI arg0, int arg1, vnl_tag_add arg2) -> vnl_matrixSI
        __init__(vnl_matrixSI self, vnl_matrixSI arg0, int arg1, vnl_tag_sub arg2) -> vnl_matrixSI
        __init__(vnl_matrixSI self, vnl_matrixSI arg0, vnl_matrixSI arg1, vnl_tag_mul arg2) -> vnl_matrixSI
        __init__(vnl_matrixSI self, vnl_matrixSI that, vnl_tag_grab arg1) -> vnl_matrixSI
        """
        _vnl_matrixPython.vnl_matrixSI_swiginit(self, _vnl_matrixPython.new_vnl_matrixSI(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixSI
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSI___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSI___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixSI_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSI_set_size)

# Register vnl_matrixSI in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixSI_swigregister(vnl_matrixSI)
class vnl_matrixSL(object):
    r"""Proxy of C++ vnl_matrixSL class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixSL self) -> vnl_matrixSL
        __init__(vnl_matrixSL self, unsigned int r, unsigned int c) -> vnl_matrixSL
        __init__(vnl_matrixSL self, unsigned int r, unsigned int c, long const & v0) -> vnl_matrixSL
        __init__(vnl_matrixSL self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixSL
        __init__(vnl_matrixSL self, unsigned int r, unsigned int c, unsigned int n, long const * values) -> vnl_matrixSL
        __init__(vnl_matrixSL self, long const * data_block, unsigned int r, unsigned int c) -> vnl_matrixSL
        __init__(vnl_matrixSL self, vnl_matrixSL arg0) -> vnl_matrixSL
        __init__(vnl_matrixSL self, vnl_matrixSL arg0, vnl_matrixSL arg1, vnl_tag_add arg2) -> vnl_matrixSL
        __init__(vnl_matrixSL self, vnl_matrixSL arg0, vnl_matrixSL arg1, vnl_tag_sub arg2) -> vnl_matrixSL
        __init__(vnl_matrixSL self, vnl_matrixSL arg0, long arg1, vnl_tag_mul arg2) -> vnl_matrixSL
        __init__(vnl_matrixSL self, vnl_matrixSL arg0, long arg1, vnl_tag_div arg2) -> vnl_matrixSL
        __init__(vnl_matrixSL self, vnl_matrixSL arg0, long arg1, vnl_tag_add arg2) -> vnl_matrixSL
        __init__(vnl_matrixSL self, vnl_matrixSL arg0, long arg1, vnl_tag_sub arg2) -> vnl_matrixSL
        __init__(vnl_matrixSL self, vnl_matrixSL arg0, vnl_matrixSL arg1, vnl_tag_mul arg2) -> vnl_matrixSL
        __init__(vnl_matrixSL self, vnl_matrixSL that, vnl_tag_grab arg1) -> vnl_matrixSL
        """
        _vnl_matrixPython.vnl_matrixSL_swiginit(self, _vnl_matrixPython.new_vnl_matrixSL(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixSL
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSL___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSL___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixSL_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSL_set_size)

# Register vnl_matrixSL in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixSL_swigregister(vnl_matrixSL)
class vnl_matrixSLL(object):
    r"""Proxy of C++ vnl_matrixSLL class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixSLL self) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, unsigned int r, unsigned int c) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, unsigned int r, unsigned int c, long long const & v0) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, unsigned int r, unsigned int c, unsigned int n, long long const * values) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, long long const * data_block, unsigned int r, unsigned int c) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, vnl_matrixSLL arg0) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, vnl_matrixSLL arg0, vnl_matrixSLL arg1, vnl_tag_add arg2) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, vnl_matrixSLL arg0, vnl_matrixSLL arg1, vnl_tag_sub arg2) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, vnl_matrixSLL arg0, long long arg1, vnl_tag_mul arg2) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, vnl_matrixSLL arg0, long long arg1, vnl_tag_div arg2) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, vnl_matrixSLL arg0, long long arg1, vnl_tag_add arg2) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, vnl_matrixSLL arg0, long long arg1, vnl_tag_sub arg2) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, vnl_matrixSLL arg0, vnl_matrixSLL arg1, vnl_tag_mul arg2) -> vnl_matrixSLL
        __init__(vnl_matrixSLL self, vnl_matrixSLL that, vnl_tag_grab arg1) -> vnl_matrixSLL
        """
        _vnl_matrixPython.vnl_matrixSLL_swiginit(self, _vnl_matrixPython.new_vnl_matrixSLL(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixSLL
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSLL___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSLL___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixSLL_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSLL_set_size)

# Register vnl_matrixSLL in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixSLL_swigregister(vnl_matrixSLL)
class vnl_matrixSS(object):
    r"""Proxy of C++ vnl_matrixSS class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixSS self) -> vnl_matrixSS
        __init__(vnl_matrixSS self, unsigned int r, unsigned int c) -> vnl_matrixSS
        __init__(vnl_matrixSS self, unsigned int r, unsigned int c, short const & v0) -> vnl_matrixSS
        __init__(vnl_matrixSS self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixSS
        __init__(vnl_matrixSS self, unsigned int r, unsigned int c, unsigned int n, short const * values) -> vnl_matrixSS
        __init__(vnl_matrixSS self, short const * data_block, unsigned int r, unsigned int c) -> vnl_matrixSS
        __init__(vnl_matrixSS self, vnl_matrixSS arg0) -> vnl_matrixSS
        __init__(vnl_matrixSS self, vnl_matrixSS arg0, vnl_matrixSS arg1, vnl_tag_add arg2) -> vnl_matrixSS
        __init__(vnl_matrixSS self, vnl_matrixSS arg0, vnl_matrixSS arg1, vnl_tag_sub arg2) -> vnl_matrixSS
        __init__(vnl_matrixSS self, vnl_matrixSS arg0, short arg1, vnl_tag_mul arg2) -> vnl_matrixSS
        __init__(vnl_matrixSS self, vnl_matrixSS arg0, short arg1, vnl_tag_div arg2) -> vnl_matrixSS
        __init__(vnl_matrixSS self, vnl_matrixSS arg0, short arg1, vnl_tag_add arg2) -> vnl_matrixSS
        __init__(vnl_matrixSS self, vnl_matrixSS arg0, short arg1, vnl_tag_sub arg2) -> vnl_matrixSS
        __init__(vnl_matrixSS self, vnl_matrixSS arg0, vnl_matrixSS arg1, vnl_tag_mul arg2) -> vnl_matrixSS
        __init__(vnl_matrixSS self, vnl_matrixSS that, vnl_tag_grab arg1) -> vnl_matrixSS
        """
        _vnl_matrixPython.vnl_matrixSS_swiginit(self, _vnl_matrixPython.new_vnl_matrixSS(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixSS
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSS___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixSS___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixSS_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixSS_set_size)

# Register vnl_matrixSS in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixSS_swigregister(vnl_matrixSS)
class vnl_matrixUC(object):
    r"""Proxy of C++ vnl_matrixUC class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixUC self) -> vnl_matrixUC
        __init__(vnl_matrixUC self, unsigned int r, unsigned int c) -> vnl_matrixUC
        __init__(vnl_matrixUC self, unsigned int r, unsigned int c, unsigned char const & v0) -> vnl_matrixUC
        __init__(vnl_matrixUC self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixUC
        __init__(vnl_matrixUC self, unsigned int r, unsigned int c, unsigned int n, unsigned char const * values) -> vnl_matrixUC
        __init__(vnl_matrixUC self, unsigned char const * data_block, unsigned int r, unsigned int c) -> vnl_matrixUC
        __init__(vnl_matrixUC self, vnl_matrixUC arg0) -> vnl_matrixUC
        __init__(vnl_matrixUC self, vnl_matrixUC arg0, vnl_matrixUC arg1, vnl_tag_add arg2) -> vnl_matrixUC
        __init__(vnl_matrixUC self, vnl_matrixUC arg0, vnl_matrixUC arg1, vnl_tag_sub arg2) -> vnl_matrixUC
        __init__(vnl_matrixUC self, vnl_matrixUC arg0, unsigned char arg1, vnl_tag_mul arg2) -> vnl_matrixUC
        __init__(vnl_matrixUC self, vnl_matrixUC arg0, unsigned char arg1, vnl_tag_div arg2) -> vnl_matrixUC
        __init__(vnl_matrixUC self, vnl_matrixUC arg0, unsigned char arg1, vnl_tag_add arg2) -> vnl_matrixUC
        __init__(vnl_matrixUC self, vnl_matrixUC arg0, unsigned char arg1, vnl_tag_sub arg2) -> vnl_matrixUC
        __init__(vnl_matrixUC self, vnl_matrixUC arg0, vnl_matrixUC arg1, vnl_tag_mul arg2) -> vnl_matrixUC
        __init__(vnl_matrixUC self, vnl_matrixUC that, vnl_tag_grab arg1) -> vnl_matrixUC
        """
        _vnl_matrixPython.vnl_matrixUC_swiginit(self, _vnl_matrixPython.new_vnl_matrixUC(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixUC
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixUC___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixUC___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixUC_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUC_set_size)

# Register vnl_matrixUC in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixUC_swigregister(vnl_matrixUC)
class vnl_matrixUI(object):
    r"""Proxy of C++ vnl_matrixUI class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixUI self) -> vnl_matrixUI
        __init__(vnl_matrixUI self, unsigned int r, unsigned int c) -> vnl_matrixUI
        __init__(vnl_matrixUI self, unsigned int r, unsigned int c, unsigned int const & v0) -> vnl_matrixUI
        __init__(vnl_matrixUI self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixUI
        __init__(vnl_matrixUI self, unsigned int r, unsigned int c, unsigned int n, unsigned int const * values) -> vnl_matrixUI
        __init__(vnl_matrixUI self, unsigned int const * data_block, unsigned int r, unsigned int c) -> vnl_matrixUI
        __init__(vnl_matrixUI self, vnl_matrixUI arg0) -> vnl_matrixUI
        __init__(vnl_matrixUI self, vnl_matrixUI arg0, vnl_matrixUI arg1, vnl_tag_add arg2) -> vnl_matrixUI
        __init__(vnl_matrixUI self, vnl_matrixUI arg0, vnl_matrixUI arg1, vnl_tag_sub arg2) -> vnl_matrixUI
        __init__(vnl_matrixUI self, vnl_matrixUI arg0, unsigned int arg1, vnl_tag_mul arg2) -> vnl_matrixUI
        __init__(vnl_matrixUI self, vnl_matrixUI arg0, unsigned int arg1, vnl_tag_div arg2) -> vnl_matrixUI
        __init__(vnl_matrixUI self, vnl_matrixUI arg0, unsigned int arg1, vnl_tag_add arg2) -> vnl_matrixUI
        __init__(vnl_matrixUI self, vnl_matrixUI arg0, unsigned int arg1, vnl_tag_sub arg2) -> vnl_matrixUI
        __init__(vnl_matrixUI self, vnl_matrixUI arg0, vnl_matrixUI arg1, vnl_tag_mul arg2) -> vnl_matrixUI
        __init__(vnl_matrixUI self, vnl_matrixUI that, vnl_tag_grab arg1) -> vnl_matrixUI
        """
        _vnl_matrixPython.vnl_matrixUI_swiginit(self, _vnl_matrixPython.new_vnl_matrixUI(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixUI
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixUI___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixUI___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixUI_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUI_set_size)

# Register vnl_matrixUI in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixUI_swigregister(vnl_matrixUI)
class vnl_matrixUL(object):
    r"""Proxy of C++ vnl_matrixUL class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixUL self) -> vnl_matrixUL
        __init__(vnl_matrixUL self, unsigned int r, unsigned int c) -> vnl_matrixUL
        __init__(vnl_matrixUL self, unsigned int r, unsigned int c, unsigned long const & v0) -> vnl_matrixUL
        __init__(vnl_matrixUL self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixUL
        __init__(vnl_matrixUL self, unsigned int r, unsigned int c, unsigned int n, unsigned long const * values) -> vnl_matrixUL
        __init__(vnl_matrixUL self, unsigned long const * data_block, unsigned int r, unsigned int c) -> vnl_matrixUL
        __init__(vnl_matrixUL self, vnl_matrixUL arg0) -> vnl_matrixUL
        __init__(vnl_matrixUL self, vnl_matrixUL arg0, vnl_matrixUL arg1, vnl_tag_add arg2) -> vnl_matrixUL
        __init__(vnl_matrixUL self, vnl_matrixUL arg0, vnl_matrixUL arg1, vnl_tag_sub arg2) -> vnl_matrixUL
        __init__(vnl_matrixUL self, vnl_matrixUL arg0, unsigned long arg1, vnl_tag_mul arg2) -> vnl_matrixUL
        __init__(vnl_matrixUL self, vnl_matrixUL arg0, unsigned long arg1, vnl_tag_div arg2) -> vnl_matrixUL
        __init__(vnl_matrixUL self, vnl_matrixUL arg0, unsigned long arg1, vnl_tag_add arg2) -> vnl_matrixUL
        __init__(vnl_matrixUL self, vnl_matrixUL arg0, unsigned long arg1, vnl_tag_sub arg2) -> vnl_matrixUL
        __init__(vnl_matrixUL self, vnl_matrixUL arg0, vnl_matrixUL arg1, vnl_tag_mul arg2) -> vnl_matrixUL
        __init__(vnl_matrixUL self, vnl_matrixUL that, vnl_tag_grab arg1) -> vnl_matrixUL
        """
        _vnl_matrixPython.vnl_matrixUL_swiginit(self, _vnl_matrixPython.new_vnl_matrixUL(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixUL
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixUL___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixUL___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixUL_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUL_set_size)

# Register vnl_matrixUL in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixUL_swigregister(vnl_matrixUL)
class vnl_matrixULL(object):
    r"""Proxy of C++ vnl_matrixULL class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixULL self) -> vnl_matrixULL
        __init__(vnl_matrixULL self, unsigned int r, unsigned int c) -> vnl_matrixULL
        __init__(vnl_matrixULL self, unsigned int r, unsigned int c, unsigned long long const & v0) -> vnl_matrixULL
        __init__(vnl_matrixULL self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixULL
        __init__(vnl_matrixULL self, unsigned int r, unsigned int c, unsigned int n, unsigned long long const * values) -> vnl_matrixULL
        __init__(vnl_matrixULL self, unsigned long long const * data_block, unsigned int r, unsigned int c) -> vnl_matrixULL
        __init__(vnl_matrixULL self, vnl_matrixULL arg0) -> vnl_matrixULL
        __init__(vnl_matrixULL self, vnl_matrixULL arg0, vnl_matrixULL arg1, vnl_tag_add arg2) -> vnl_matrixULL
        __init__(vnl_matrixULL self, vnl_matrixULL arg0, vnl_matrixULL arg1, vnl_tag_sub arg2) -> vnl_matrixULL
        __init__(vnl_matrixULL self, vnl_matrixULL arg0, unsigned long long arg1, vnl_tag_mul arg2) -> vnl_matrixULL
        __init__(vnl_matrixULL self, vnl_matrixULL arg0, unsigned long long arg1, vnl_tag_div arg2) -> vnl_matrixULL
        __init__(vnl_matrixULL self, vnl_matrixULL arg0, unsigned long long arg1, vnl_tag_add arg2) -> vnl_matrixULL
        __init__(vnl_matrixULL self, vnl_matrixULL arg0, unsigned long long arg1, vnl_tag_sub arg2) -> vnl_matrixULL
        __init__(vnl_matrixULL self, vnl_matrixULL arg0, vnl_matrixULL arg1, vnl_tag_mul arg2) -> vnl_matrixULL
        __init__(vnl_matrixULL self, vnl_matrixULL that, vnl_tag_grab arg1) -> vnl_matrixULL
        """
        _vnl_matrixPython.vnl_matrixULL_swiginit(self, _vnl_matrixPython.new_vnl_matrixULL(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixULL
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixULL___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixULL___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixULL_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixULL_set_size)

# Register vnl_matrixULL in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixULL_swigregister(vnl_matrixULL)
class vnl_matrixUS(object):
    r"""Proxy of C++ vnl_matrixUS class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        __init__(vnl_matrixUS self) -> vnl_matrixUS
        __init__(vnl_matrixUS self, unsigned int r, unsigned int c) -> vnl_matrixUS
        __init__(vnl_matrixUS self, unsigned int r, unsigned int c, unsigned short const & v0) -> vnl_matrixUS
        __init__(vnl_matrixUS self, unsigned int r, unsigned int c, vnl_matrix_type t) -> vnl_matrixUS
        __init__(vnl_matrixUS self, unsigned int r, unsigned int c, unsigned int n, unsigned short const * values) -> vnl_matrixUS
        __init__(vnl_matrixUS self, unsigned short const * data_block, unsigned int r, unsigned int c) -> vnl_matrixUS
        __init__(vnl_matrixUS self, vnl_matrixUS arg0) -> vnl_matrixUS
        __init__(vnl_matrixUS self, vnl_matrixUS arg0, vnl_matrixUS arg1, vnl_tag_add arg2) -> vnl_matrixUS
        __init__(vnl_matrixUS self, vnl_matrixUS arg0, vnl_matrixUS arg1, vnl_tag_sub arg2) -> vnl_matrixUS
        __init__(vnl_matrixUS self, vnl_matrixUS arg0, unsigned short arg1, vnl_tag_mul arg2) -> vnl_matrixUS
        __init__(vnl_matrixUS self, vnl_matrixUS arg0, unsigned short arg1, vnl_tag_div arg2) -> vnl_matrixUS
        __init__(vnl_matrixUS self, vnl_matrixUS arg0, unsigned short arg1, vnl_tag_add arg2) -> vnl_matrixUS
        __init__(vnl_matrixUS self, vnl_matrixUS arg0, unsigned short arg1, vnl_tag_sub arg2) -> vnl_matrixUS
        __init__(vnl_matrixUS self, vnl_matrixUS arg0, vnl_matrixUS arg1, vnl_tag_mul arg2) -> vnl_matrixUS
        __init__(vnl_matrixUS self, vnl_matrixUS that, vnl_tag_grab arg1) -> vnl_matrixUS
        """
        _vnl_matrixPython.vnl_matrixUS_swiginit(self, _vnl_matrixPython.new_vnl_matrixUS(*args))
    __swig_destroy__ = _vnl_matrixPython.delete_vnl_matrixUS
    size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_size)
    rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_rows)
    cols = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_cols)
    columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_columns)
    put = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_put)
    get = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_get)
    __call__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___call__)
    fill = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_fill)
    fill_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_fill_diagonal)
    set_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_set_diagonal)
    copy_in = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_copy_in)
    set = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_set)
    copy_out = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_copy_out)

    def __itruediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixUS___itruediv__(self, *args)
    __idiv__ = __itruediv__


    __iadd__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___iadd__)
    __isub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___isub__)
    __imul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___imul__)
    __neg__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___neg__)

    def __truediv__(self, *args):
        return _vnl_matrixPython.vnl_matrixUS___truediv__(self, *args)
    __div__ = __truediv__


    __add__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___add__)
    __sub__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___sub__)
    __mul__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___mul__)
    transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_transpose)
    conjugate_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_conjugate_transpose)
    update = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_update)
    set_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_set_column)
    set_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_set_columns)
    set_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_set_row)
    extract = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_extract)
    get_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_get_row)
    get_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_get_column)
    get_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_get_rows)
    get_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_get_columns)
    get_n_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_get_n_rows)
    get_n_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_get_n_columns)
    get_diagonal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_get_diagonal)
    flatten_row_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_flatten_row_major)
    flatten_column_major = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_flatten_column_major)
    set_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_set_identity)
    inplace_transpose = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_inplace_transpose)
    flipud = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_flipud)
    fliplr = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_fliplr)
    normalize_rows = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_normalize_rows)
    normalize_columns = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_normalize_columns)
    scale_row = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_scale_row)
    scale_column = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_scale_column)
    swap = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_swap)
    array_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_array_one_norm)
    array_two_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_array_two_norm)
    array_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_array_inf_norm)
    absolute_value_sum = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_absolute_value_sum)
    absolute_value_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_absolute_value_max)
    operator_one_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_operator_one_norm)
    operator_inf_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_operator_inf_norm)
    frobenius_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_frobenius_norm)
    fro_norm = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_fro_norm)
    rms = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_rms)
    min_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_min_value)
    max_value = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_max_value)
    arg_min = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_arg_min)
    arg_max = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_arg_max)
    mean = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_mean)
    empty = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_empty)
    is_identity = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_is_identity)
    is_zero = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_is_zero)
    is_equal = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_is_equal)
    is_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_is_finite)
    has_nans = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_has_nans)
    assert_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_assert_size)
    assert_finite = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_assert_finite)
    read = _swig_new_static_method(_vnl_matrixPython.vnl_matrixUS_read)
    read_ascii = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_read_ascii)
    data_block = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_data_block)
    data_array = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_data_array)
    begin = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_begin)
    end = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_end)
    operator_eq = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_operator_eq)
    __eq__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___eq__)
    __ne__ = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS___ne__)
    _print = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS__print)
    clear = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_clear)
    set_size = _swig_new_instance_method(_vnl_matrixPython.vnl_matrixUS_set_size)

# Register vnl_matrixUS in _vnl_matrixPython:
_vnl_matrixPython.vnl_matrixUS_swigregister(vnl_matrixUS)

