Copyright 2025

[powertrain-build : ci]

Phase: DEVELOPMENT
Distribution: EXTERNAL

Notices Report Content
 * License Data
 * License Text
 * Origin Copyright Text

Components: 

Coverage 7.11.0: http://nedbatchelder.com/code/modules/coverage.html : 
exceptiongroup 1.3.0: https://github.com/python-trio/exceptiongroup : MIT License
flake8 7.3.0: https://gitlab.com/pycqa/flake8 : MIT License
gitdb 4.0.12: http://github.com/gitpython-developers/gitdb : BSD 3-clause "New" or "Revised" License
GitPython 3.1.45: https://github.com/gitpython-developers/GitPython : BSD 3-clause "New" or "Revised" License
idna 3.11: https://github.com/kjd/idna : BSD 3-clause "New" or "Revised" License
mccabe 0.7.0: http://pypi.python.org/pypi/mccabe : Expat License
NumPy 1.24.4: https://numpy.org/ : BSD 3-clause "New" or "Revised" License
Packaging 25.0: https://github.com/pypa/packaging : (Apache License 2.0 AND BSD 3-clause "New" or "Revised" License)
pbr 7.0.1: http://openstack.org : Apache License 2.0
powertrain-build 1.11.2: https://opendev.org/volvocars/powertrain-build : Apache License 2.0
psf-requests 2.32.3: http://docs.python-requests.org : Apache License 2.0
pycodestyle 2.14.0: https://pypi.python.org/pypi/pycodestyle : MIT License
Pyflakes 3.4.0: https://github.com/pyflakes/pyflakes : MIT License
Pygments - Python syntax highlighter 2.19.2: http://pygments.org/ : BSD 2-clause "Simplified" License
pypi/setuptools 59.6.0: https://pypi.org/project/setuptools/ : MIT License
pytest 8.4.2: http://pytest.org : MIT License
python3-charset-normalizer 3.4.4: https://github.com/ousret/charset_normalizer : MIT License
python-certifi 2024.7.4: https://certifiio.readthedocs.io/en/latest/ : Mozilla Public License 2.0
python-pluggy 1.6.0: https://pypi.python.org/pypi/pluggy : MIT License
python-typing-extensions 4.15.0 : Python Software Foundation License 2.0
ruamel-yaml 0.18.6: https://pypi.org/project/ruamel.yaml/ : MIT License
ruamel.yaml.clib 0.2.14: https://sourceforge.net/p/ruamel-yaml-clib/code/ci/default/tree/ : MIT License
SciPy 1.9.1: http://www.scipy.org : BSD 3-clause "New" or "Revised" License
smmap 5.0.2: https://github.com/gitpython-developers/smmap : BSD 3-clause "New" or "Revised" License
tomli 2.3.0: https://github.com/hukkin/tomli : MIT License
urllib3 2.5.0: https://urllib3.readthedocs.io/en/stable : MIT License
voluptuous 0.15.2: http://pypi.python.org/pypi/voluptuous : BSD 3-clause "New" or "Revised" License

Copyright Text: 

Coverage 7.11.0 pypi:coverage/7.11.0: http://nedbatchelder.com/code/modules/coverage.html
	No Copyrights found
exceptiongroup 1.3.0 pypi:exceptiongroup/1.3.0: https://github.com/python-trio/exceptiongroup
	Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,

	Copyright (c) 2022 Alex Gr

flake8 7.3.0 pypi:flake8/7.3.0: https://gitlab.com/pycqa/flake8
	Copyright (C) 2011-2013 Tarek Ziade <tarek@ziade.org>

	Copyright (C) 2012-2016 Ian Cordasco <graffatcolmingov@gmail.com>

gitdb 4.0.12 pypi:gitdb/4.0.12: http://github.com/gitpython-developers/gitdb
	(c)
    # end handle interpreter
    return hdr


	Copyright (C) 2010, 2011 Sebastian Thiel (byronimo@gmail.com) and contributors

	Copyright (C) 2010, 2011 Sebastian Thiel (byronimo@gmail.com) and contributors
#
# This module is part of GitDB and is released under

	Copyright (C) 2010, 2011 Sebastian Thiel and contributors
All rights reserved.

Redistribution and use in source and binary forms, with or without 
modification, are permitted provided that the following conditions 
are met:

* Redistributions of source code must retain the above copyright 
notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright 
notice, this list of conditions and the following disclaimer in the 
documentation and/or other materials provided with the distribution.

* Neither the name of the GitDB project nor the names of 
its contributors may be used to endorse or promote products derived 
from this software without specific prior written permission.


GitPython 3.1.45 pypi:GitPython/3.1.45: https://github.com/gitpython-developers/GitPython
	(c) < 32 or ord(c) == 127:
                raise ValueError(f"Invalid reference '{ref_path}': references cannot contain ASCII control characters")

            one_before_previous = previous
            previous = c

	Copyright (C) 2008, 2009 Michael Trier (mtrier@gmail.com) and contributors

	Copyright (C) 2008, 2009 Michael Trier and contributors
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.

* Neither the name of the GitPython project nor the names of
its contributors may be used to endorse or promote products derived
from this software without specific prior written permission.


	Copyright (C) 2008, 2009 Michael Trier and contributors, 2010-2015 Sebastian Thiel"

# The version info for the project you're documenting, acts as replacement for |version|
# and |release|, also used in various other places throughout the built documents.

idna 3.11 pypi:idna/3.11: https://github.com/kjd/idna
	No Copyrights found
mccabe 0.7.0 pypi:mccabe/0.7.0: http://pypi.python.org/pypi/mccabe
	Copyright © 2011-2013 Tarek Ziade <tarek@ziade.org>

	Copyright © 2013 Florent Xicluna <florent.xicluna@gmail.com>

	Copyright © <year> Ned Batchelder

NumPy 1.24.4 pypi:numpy/1.24.4: https://numpy.org/
	(c)

    @pytest.mark.skipif(IS_PYPY and sys.implementation.version <= (7, 3, 8),
                        reason="PyPy bug in error formatting")
    def test_default_float_converter_exception(self):
        """

	(c)

    def test_from_complex(self):
        tgt = (complex(1, 1), complex(1, -1))
        c = TextIO()
        c.write("%s %s" % tgt)
        c.seek(0)
        res = np.loadtxt(c, dtype=complex)
        assert_equal(res, tgt)

    def test_complex_misformatted(self):

	(c)

    where the points
    `a` from `x`, `b` from `y`, and `c` from `z`. The resulting points form
    a grid with `x` in the first dimension, `y` in the second, and `z` in
    the third.

    The parameters `x`, `y`, and `z` are converted to arrays only if they
    are tuples or a lists, otherwise they are treated as a scalars. In
    either case, either `x`, `y`, and `z` or their elements must support
    multiplication and addition both with themselves and with the elements
    of `c`.

	(c)
                    check = None
            if dim and 'dimension' not in vars[n]:

	(c)
                    depend = None
                if check is not None:

	(c)
            assert_equal(cp, c, msg)

    def test__complex__should_not_work(self):

	(c)
            assert_equal(x.shape, (0,))
            x = np.loadtxt(c, dtype=np.int64)
            assert_equal(x.shape, (0,))
            assert_(x.dtype == np.int64)

    def test_unused_converter(self):

	(c)
            res = self.advance(i)
            self.advance(len(c))
            return res

    @property
    def next(self):

	(C)
            want = np.array(
            assert_equal(have, want)

    def test_for_equal_names(self):

	(c)
          !f2py integer, depend(c), intent(hide) :: m2 = shape(c, 1)

	(c)
          !f2py integer, depend(c), intent(hide) :: n = f2py_itemsize(c)
          integer*1, dimension(m, n), intent(out) :: o
          do i=1,m
            o(i, :) = transfer(c(i), o(i, :))
          end do
        end subroutine {fprefix}_array_input_{fsuffix}

        subroutine {fprefix}_array_output_{fsuffix}(c, o, m, n)
          character*{clength}, intent(out), dimension(m) :: c
          integer n
          integer*1, dimension(m, n), intent(in) :: o
          !f2py character(f2py_len=n) :: c
          !f2py integer, depend(o), intent(hide) :: m = len(o)
          !f2py integer, depend(o), intent(hide) :: n = shape(o, 1)
          do i=1,m
            c(i) = transfer(o(i, :), c(i))
          end do
        end subroutine {fprefix}_array_output_{fsuffix}

	(c)
          character :: c
          character, intent(in) :: o
          c = transfer(o, c)
       end function {fprefix}_return

       subroutine {fprefix}_array_input(c, o)
          character, intent(in) :: c(3)
          integer*1 o(3)
          !f2py intent(out) o
          integer i
          do i=1,3
            o(i) = transfer(c(i), o(i))
          end do
       end subroutine {fprefix}_array_input

	(c)
          character, dimension(3) :: c
          character, intent(in) :: o(3)
          do i=1,3
            c(i) = o(i)
          end do
       end function {fprefix}_array_return


	(c)
          character, intent(in) :: o
          !f2py character o = "a"
          character :: c
          c = o
       end function {fprefix}_optional
    """)

	(c)
          integer
          !f2py intent(out) o
          o = transfer(c, o)
        end subroutine {fprefix}_input_{fsuffix}

        subroutine {fprefix}_output_{fsuffix}(c, o, n)
          character*{clength}, intent(out) :: c
          integer n
          integer*1, dimension(n), intent(in) :: o
          !f2py integer, depend(o), intent(hide) :: n = len(o)
          c = transfer(o, c)
        end subroutine {fprefix}_output_{fsuffix}

	(c)
          integer
          do i=1,m1
            do j=1,m2
              o(i, j, :) = transfer(c(i, j), o(i, j, :))
            end do
          end do
        end subroutine {fprefix}_2d_array_input_{fsuffix}
        """)

	(c)
        assert_almost_equal(
            linalg.cond(a, 1),
            abs(c).sum(-2).max(-1) * abs(cinv).sum(-2).max(-1),
            single_decimal=5, double_decimal=11)
        assert_almost_equal(
            linalg.cond(a, -1),
            abs(c).sum(-2).min(-1) * abs(cinv).sum(-2).min(-1),
            single_decimal=5, double_decimal=11)
        assert_almost_equal(
            linalg.cond(a, np.inf),
            abs(c).sum(-1).max(-1) * abs(cinv).sum(-1).max(-1),
            single_decimal=5, double_decimal=11)
        assert_almost_equal(
            linalg.cond(a, -np.inf),
            abs(c).sum(-1).min(-1) * abs(cinv).sum(-1).min(-1),
            single_decimal=5, double_decimal=11)
        assert_almost_equal(
            linalg.cond(a, 'fro'),

	(c)
        assert_equal(a, l
        assert_equal(b, l['file_b'])

    def test_named_arrays_with_like(self):

	(c)
        assert_equal(a, l
        assert_equal(b, l['like'])

    def test_BagObj(self):

	(c)
        assert_equal(sorted(dir(l.f)),
        assert_equal(a, l.f.file_a)
        assert_equal(b, l.f.file_b)

    @pytest.mark.skipif(IS_WASM, reason="Cannot start thread")
    def test_savez_filename_clashes(self):

	(C)
        assert_equal(type(c

        # check that accessing nested structures keep record type, but
        # not for subarrays, non-void structures, non-structured voids
        test_dtype = [('a', 'f4,f4'), ('b', 'V8'), ('c', ('f4',2)),
                      ('d', ('i8', 'i4,i4'))]
        r = np.rec.array([((1,1), b'11111111', [1,1], 1),
                          ((1,1), b'11111111', [1,1], 1)], dtype=test_dtype)
        assert_equal(r.a.dtype.type, np.record)
        assert_equal(r.b.dtype.type, np.void)
        assert_equal(r.c.dtype.type, np.float32)
        assert_equal(r.d.dtype.type, np.int64)
        # check the same, but for views
        r = np.rec.array(np.ones(4, dtype='i4,i4'))
        assert_equal(r.view('f4,f4').dtype.type, np.record)
        assert_equal(r.view(('i4',2)).dtype.type, np.int32)
        assert_equal(r.view('V8').dtype.type, np.void)
        assert_equal(r.view(('i8', 'i4,i4')).dtype.type, np.int64)

	(C)
        assert_equal(type(np.polyval(

    def test_polyvalfromroots(self):

	(c)
        c
        if n == 1 and np.all(c[0] == 0):

	(c)
        c = np.add.accumulate(a, 0, None, b)
        assert_equal(c, check)
        assert_(c is b)
        assert_(c.info, {'inputs': [0], 'outputs': [0]})
        indices = [0, 2, 1]
        check = np.add.reduceat(d, indices, axis=1)
        c = np.add.reduceat(a, indices, axis=1)
        assert_equal(c, check)
        assert_(c.info, {'inputs': [0]})

	(c)
        c = np.add.reduce(a, 1, None, b)
        assert_equal(c, check)
        assert_(c is b)
        assert_(c.info, {'inputs': [0], 'outputs': [0]})
        check = np.add.accumulate(d, axis=0)
        c = np.add.accumulate(a, axis=0)
        assert_equal(c, check)
        assert_(c.info, {'inputs': [0]})

	(c)
        c = np.add.reduceat(a, indices, 1, None, b)
        assert_equal(c, check)
        assert_(c is b)
        assert_(c.info, {'inputs': [0], 'outputs': [0]})
        # and a few tests for at
        d = np.array([[1, 2, 3], [1, 2, 3]])
        check = d.copy()
        a = d.copy().view(A)
        np.add.at(check, ([0, 1], [0, 2]), 1.)
        np.add.at(a, ([0, 1], [0, 2]), 1.)
        assert_equal(a, check)
        assert_(a.info, {'inputs': [0]})
        b = np.array(1.).view(A)
        a = d.copy().view(A)
        np.add.at(a, ([0, 1], [0, 2]), b)
        assert_equal(a, check)
        assert_(a.info, {'inputs': [0, 2]})


	(c)
        c0 = c
        c1 = c[-1]
        for i in range(3, len(c) + 1):

	(c)
        c0 = c
        c1 = c[-1]*xs
        for i in range(3, len(c) + 1):

	(c)
        d = inner1d(a, b, axis=-1, out=out)
        assert_(d is out)
        assert_array_equal(d, c)
        c = inner1d(a, b, axis=0)
        assert_array_equal(c, (a * b).sum(0))
        # Sanity checks on innerwt and cumsum.
        a = np.arange(6).reshape((2, 3))
        b = np.arange(10, 16).reshape((2, 3))
        w = np.arange(20, 26).reshape((2, 3))
        assert_array_equal(umt.innerwt(a, b, w, axis=0),
                           np.sum(a * b * w, axis=0))
        assert_array_equal(umt.cumsum(a, axis=0), np.cumsum(a, axis=0))
        assert_array_equal(umt.cumsum(a, axis=-1), np.cumsum(a, axis=-1))
        out = np.empty_like(a)
        b = umt.cumsum(a, out=out, axis=0)
        assert_(out is b)
        assert_array_equal(b, np.cumsum(a, axis=0))
        b = umt.cumsum(a, out=out, axis=1)
        assert_(out is b)
        assert_array_equal(b, np.cumsum(a, axis=-1))
        # Check errors.
        # Cannot pass in both axis and axes.
        assert_raises(TypeError, inner1d, a, b, axis=0, axes=[0, 0])
        # Not an integer.
        assert_raises(TypeError, inner1d, a, b, axis=[0])
        # more than 1 core dimensions.
        mm = umt.matrix_multiply
        assert_raises(TypeError, mm, a, b, axis=1)
        # Output wrong size in axis.
        out = np.empty((1, 2, 3), dtype=a.dtype)
        assert_raises(ValueError, umt.cumsum, a, out=out, axis=0)
        # Regular ufuncs should not accept axis.
        assert_raises(TypeError, np.add, 1., 1., axis=0)

    def test_keepdims_argument(self):

	(c)
        d = inner1d(a, b, keepdims=True, out=out)
        assert_(d is out)
        assert_array_equal(d, c)
        # Now combined with axis and axes.
        c = inner1d(a, b, axis=-1, keepdims=False)
        assert_array_equal(c, (a * b).sum(-1, keepdims=False))
        c = inner1d(a, b, axis=-1, keepdims=True)
        assert_array_equal(c, (a * b).sum(-1, keepdims=True))
        c = inner1d(a, b, axis=0, keepdims=False)
        assert_array_equal(c, (a * b).sum(0, keepdims=False))
        c = inner1d(a, b, axis=0, keepdims=True)
        assert_array_equal(c, (a * b).sum(0, keepdims=True))
        c = inner1d(a, b, axes=[(-1,), (-1,), ()], keepdims=False)
        assert_array_equal(c, (a * b).sum(-1))
        c = inner1d(a, b, axes=[(-1,), (-1,), (-1,)], keepdims=True)
        assert_array_equal(c, (a * b).sum(-1, keepdims=True))
        c = inner1d(a, b, axes=[0, 0], keepdims=False)
        assert_array_equal(c, (a * b).sum(0))
        c = inner1d(a, b, axes=[0, 0, 0], keepdims=True)
        assert_array_equal(c, (a * b).sum(0, keepdims=True))
        c = inner1d(a, b, axes=[0, 2], keepdims=False)
        assert_array_equal(c, (a.transpose(1, 2, 0) * b).sum(-1))
        c = inner1d(a, b, axes=[0, 2], keepdims=True)
        assert_array_equal(c, (a.transpose(1, 2, 0) * b).sum(-1,
                                                             keepdims=True))
        c = inner1d(a, b, axes=[0, 2, 2], keepdims=True)
        assert_array_equal(c, (a.transpose(1, 2, 0) * b).sum(-1,
                                                             keepdims=True))
        c = inner1d(a, b, axes=[0, 2, 0], keepdims=True)
        assert_array_equal(c, (a * b.transpose(2, 0, 1)).sum(0, keepdims=True))
        # Hardly useful, but should work.
        c = inner1d(a, b, axes=[0, 2, 1], keepdims=True)
        assert_array_equal(c, (a.transpose(1, 0, 2) * b.transpose(0, 2, 1))
                           .sum(1, keepdims=True))
        # Check with two core dimensions.
        a = np.eye(3) * np.arange(4.)[:, np.newaxis, np.newaxis]
        expected = uml.det(a)
        c = uml.det(a, keepdims=False)
        assert_array_equal(c, expected)
        c = uml.det(a, keepdims=True)
        assert_array_equal(c, expected[:, np.newaxis, np.newaxis])
        a = np.eye(3) * np.arange(4.)[:, np.newaxis, np.newaxis]
        expected_s, expected_l = uml.slogdet(a)
        cs, cl = uml.slogdet(a, keepdims=False)
        assert_array_equal(cs, expected_s)
        assert_array_equal(cl, expected_l)
        cs, cl = uml.slogdet(a, keepdims=True)
        assert_array_equal(cs, expected_s[:, np.newaxis, np.newaxis])
        assert_array_equal(cl, expected_l[:, np.newaxis, np.newaxis])
        # Sanity check on innerwt.
        a = np.arange(6).reshape((2, 3))
        b = np.arange(10, 16).reshape((2, 3))
        w = np.arange(20, 26).reshape((2, 3))
        assert_array_equal(umt.innerwt(a, b, w, keepdims=True),
                           np.sum(a * b * w, axis=-1, keepdims=True))
        assert_array_equal(umt.innerwt(a, b, w, axis=0, keepdims=True),
                           np.sum(a * b * w, axis=0, keepdims=True))
        # Check errors.
        # Not a boolean
        assert_raises(TypeError, inner1d, a, b, keepdims='true')
        # More than 1 core dimension, and core output dimensions.
        mm = umt.matrix_multiply
        assert_raises(TypeError, mm, a, b, keepdims=True)
        assert_raises(TypeError, mm, a, b, keepdims=False)
        # Regular ufuncs should not accept keepdims.
        assert_raises(TypeError, np.add, 1., 1., keepdims=False)

    def test_innerwt(self):

	(c)
        expected = np.array(
                             [144, -12, 1],
                             [169, 13, 1]])
        assert_array_equal(v, expected)

        c = array([1.0+1j, 1.0-1j])
        v = vander(c, N=3)
        expected = np.array([[2j, 1+1j, 1],
                             [-2j, 1-1j, 1]])
        # The data is floating point, but the values are small integers,
        # so assert_array_equal *should* be safe here (rather than, say,
        # assert_array_almost_equal).

	(c)
        if (nl > 1) or (nr > 1) or (nl
            return False

        # can't do implicit summation or dimension collapse e.g.
        #     "ab,bc->c" (implicitly sum over 'a')
        #     "ab,ca->ca" (take diagonal of 'a')
        if nl + nr - 1 == int(c in result):

	(c)
        powers = np.array(
                           [1, 1, 1, 1, 1],
                           [16, -8, 4, -2, 1],
                           [81, 27, 9, 3, 1]])
        # Check default value of N:

	(c)
        prd = zs
        for i in range(2, power + 1):

	(c)
        return config_list

    def _get_configuration_from_setup_py(self, setup_py,
                                         subpackage_name,
                                         subpackage_path,
                                         parent_name,
                                         caller_level = 1):

	(C)
        The data is in a single, C-style contiguous segment.
    F_CONTIGUOUS (F)
        The data is in a single, Fortran-style contiguous segment.
    OWNDATA (O)
        The array owns the memory it uses or borrows it from another object.
    WRITEABLE (W)
        The data area can be written to.  Setting this to False locks
        the data, making it read-only.  A view (slice, etc.) inherits WRITEABLE
        from its base array at creation time, but a view of a writeable
        array may be subsequently locked while the base array remains writeable.
        (The opposite is not true, in that a view of a locked array may not
        be made writeable.  However, currently, locking a base object does not
        lock any views that already reference it, so under that circumstance it
        is possible to alter the contents of a locked array via a previously
        created writeable view onto it.)  Attempting to change a non-writeable
        array raises a RuntimeError exception.
    ALIGNED (A)
        The data and all elements are aligned appropriately for the hardware.
    WRITEBACKIFCOPY (X)
        This array is a copy of some other array. The C-API function
        PyArray_ResolveWritebackIfCopy must be called before deallocating
        to the base array will be updated with the contents of this array.
    FNC
        F_CONTIGUOUS and not C_CONTIGUOUS.
    FORC
        F_CONTIGUOUS or C_CONTIGUOUS (one-segment test).
    BEHAVED (B)
        ALIGNED and WRITEABLE.
    CARRAY (CA)
        BEHAVED and C_CONTIGUOUS.
    FARRAY (FA)
        BEHAVED and F_CONTIGUOUS and not C_CONTIGUOUS.

    Notes

	(c)
    # 3d
    f(d)
    # 1d size
    f(b, size=10)
    # 2d - size - broadcast
    f(e, size=(10, 2))
    # 3d - size
    f(g, size=(10, 10, 10))


	(c)
    1.0
    >>> # Formatting supersedes all class/package-level defaults
    >>> print(f"{p:unicode}")
    1.0 + 2.0·x + 3.0·x²
    """
    if style not in ('unicode', 'ascii'):

	(c)
    1.0
    >>> np.polynomial.set_default_printstyle('ascii')
    >>> print(p)
    1.0 + 2.0 x + 3.0 x**2

	(c)
    array(


	(c)
    array(
           [1, 4],
           [2, 5]])

    Vector inner products:


	(c)
    array(
           [2., 3.]])

    >>> d = StringIO("M 21 72\nF 35 58")
    >>> np.loadtxt(d, dtype={'names': ('gender', 'age', 'weight'),
    ...                      'formats': ('S1', 'i4', 'f4')})
    array([(b'M', 21, 72.), (b'F', 35, 58.)],
          dtype=[('gender', 'S1'), ('age', '<i4'), ('weight', '<f4')])

	(c)
    array(
        dtype='|S4')


	(c)
    array(
        dtype='|S5')


	(c)
    array(
    >>> C.chebder(c,3)
    array([96.])
    >>> C.chebder(c,scl=-1)
    array([-14., -12., -24.])
    >>> C.chebder(c,2,-1)
    array([12.,  96.])


	(c)
    array(
    >>> C.chebint(c,3)
    array([ 0.03125   , -0.1875    ,  0.04166667, -0.05208333,  0.01041667, # may vary
        0.00625   ])
    >>> C.chebint(c, k=3)
    array([ 3.5, -0.5,  0.5,  0.5])
    >>> C.chebint(c,lbnd=-2)
    array([ 8.5, -0.5,  0.5,  0.5])
    >>> C.chebint(c,scl=-2)
    array([-1.,  1., -1., -1.])


	(c)
    array(
    >>> L.legder(c, 3)
    array([60.])
    >>> L.legder(c, scl=-1)
    array([ -6.,  -9., -20.])
    >>> L.legder(c, 2,-1)
    array([  9.,  60.])


	(c)
    array(
    >>> L.legint(c, 3)
    array([  1.66666667e-02,  -1.78571429e-02,   4.76190476e-02, # may vary
             -1.73472348e-18,   1.90476190e-02,   9.52380952e-03])
    >>> L.legint(c, k=3)
     array([ 3.33333333,  0.4       ,  0.66666667,  0.6       ]) # may vary
    >>> L.legint(c, lbnd=-2)
    array([ 7.33333333,  0.4       ,  0.66666667,  0.6       ]) # may vary
    >>> L.legint(c, scl=2)
    array([ 0.66666667,  0.8       ,  1.33333333,  1.2       ]) # may vary


	(c)
    array(
    >>> np.char.strip(c, 'a') # 'a' unstripped from c[1] because whitespace leads
    array(['AaAaA', '  aA  ', 'bBABb'], dtype='<U7')
    >>> np.char.strip(c, 'A') # 'A' unstripped from c[1] because (unprinted) ws trails
    array(['aAaAa', '  aA  ', 'abBABba'], dtype='<U7')


	(c)
    assert_equal(p.trim().coef, c
    assert_equal(p.trim(1e-10).coef, c[:2])
    assert_equal(p.trim(1e-5).coef, c[:1])


	(c)
    except ValueError:
        # scalar covariance
        # nan if incorrect value (nan, inf, 0), 1 otherwise
        return c / c
    stddev = sqrt(d.real)
    c /= stddev[:, None]
    c /= stddev[None, :]

    # Clip real and imaginary parts to [-1, 1].  This does not guarantee
    # abs(a[i,j]) <= 1 for complex arrays, but is the best we can do without
    # excessive work.
    np.clip(c.real, -1, 1, out=c.real)
    if np.iscomplexobj(c):

	(c)
    except ValueError:
        return 1
    #
    if xnotmask.all():

	(c)
    if cnt >= n:
        c = c[:1]*0
    else:

	(c)
    if cnt >= n:
        return c[:1]*0
    else:

	(c)
    if n < 3:
        return c
    else:

	(c)
    if n == 1:
        return c
    else:

	(c)
    if n == 1:
        return c
    if n == 2:

	(c)
    mod_rules.append(code)
    for r in mod_rules:

	(c)
    x = la.eigvalsh(m)

    # improve roots by one application of Newton
    dy = _normed_hermite_e_n(x, ideg)
    df = _normed_hermite_e_n(x, ideg - 1) * np.sqrt(ideg)
    x -= dy/df

	(c)
    x = la.eigvalsh(m)

    # improve roots by one application of Newton
    dy = _normed_hermite_n(x, ideg)
    df = _normed_hermite_n(x, ideg - 1) * np.sqrt(2*ideg)
    x -= dy/df

	(c)
    x = la.eigvalsh(m)

    # improve roots by one application of Newton
    dy = lagval(x, c)
    df = lagval(x, lagder(c))
    x -= dy/df

	(c)
    x = la.eigvalsh(m)

    # improve roots by one application of Newton
    dy = legval(x, c)
    df = legval(x, legder(c))
    x -= dy/df

	(c)


class TestMatmulOperator(MatmulCommon):
    import operator
    matmul = operator.matmul

    def test_array_priority_override(self):


	(c)

    @pytest.mark.skipif(IS_PYPY and sys.implementation.version <= (7, 3, 8),
                        reason="PyPy bug in error formatting")
    def test_default_float_converter_exception(self):
        """

	(c)

    def test_from_complex(self):
        tgt = (complex(1, 1), complex(1, -1))
        c = TextIO()
        c.write("%s %s" % tgt)
        c.seek(0)
        res = np.loadtxt(c, dtype=complex)
        assert_equal(res, tgt)

    def test_complex_misformatted(self):

	(c)

    where the points
    `a` from `x`, `b` from `y`, and `c` from `z`. The resulting points form
    a grid with `x` in the first dimension, `y` in the second, and `z` in
    the third.

    The parameters `x`, `y`, and `z` are converted to arrays only if they
    are tuples or a lists, otherwise they are treated as a scalars. In
    either case, either `x`, `y`, and `z` or their elements must support
    multiplication and addition both with themselves and with the elements
    of `c`.

	(C)

np.asanyarray(A)
np.asanyarray(B)
np.asanyarray(B, dtype=int)

	(C)

np.ascontiguousarray(A)
np.ascontiguousarray(B)

	(C)

np.asfortranarray(A)
np.asfortranarray(B)

	(C)

np.atleast_3d(C)

np.vstack([C, C])
np.vstack([C, A])
np.vstack([A, A])

	(C)

np.linspace(0, 2)
np.linspace(0.5, [0, 1, 2])
np.linspace([0, 1, 2], 3)
np.linspace(0j, 2)
np.linspace(0, 2, num=10)
np.linspace(0, 2, endpoint=True)
np.linspace(0, 2, retstep=True)
np.linspace(0j, 2j, retstep=True)
np.linspace(0, 2, dtype=bool)
np.linspace([0, 1], [2, 3], axis=Index())

np.logspace(0, 2, base=2)
np.logspace(0, 2, base=2)
np.logspace(0, 2, base=[1j, 2j], num=2)

	(C)

np.require(A)
np.require(B)
np.require(B, dtype=int)
np.require(B, requirements=None)
np.require(B, requirements="E")
np.require(B, requirements=["ENSUREARRAY"])
np.require(B, requirements={"F", "E"})
np.require(B, requirements=["C", "OWNDATA"])
np.require(B, requirements="W")
np.require(B, requirements="A")

	(c)
                    check = None
            if dim and 'dimension' not in vars[n]:

	(c)
                    depend = None
                if check is not None:

	(c)
            assert_equal(cp, c, msg)

    def test__complex__should_not_work(self):

	(c)
            assert_equal(x.shape, (0,))
            x = np.loadtxt(c, dtype=np.int64)
            assert_equal(x.shape, (0,))
            assert_(x.dtype == np.int64)

    def test_unused_converter(self):

	(c)
            res = self.advance(i)
            self.advance(len(c))
            return res

    @property
    def next(self):

	(C)
            want = np.array(
            assert_equal(have, want)

    def test_for_equal_names(self):

	(c)
          !f2py integer, depend(c), intent(hide) :: m2 = shape(c, 1)

	(c)
          !f2py integer, depend(c), intent(hide) :: n = f2py_itemsize(c)
          integer*1, dimension(m, n), intent(out) :: o
          do i=1,m
            o(i, :) = transfer(c(i), o(i, :))
          end do
        end subroutine {fprefix}_array_input_{fsuffix}

        subroutine {fprefix}_array_output_{fsuffix}(c, o, m, n)
          character*{clength}, intent(out), dimension(m) :: c
          integer n
          integer*1, dimension(m, n), intent(in) :: o
          !f2py character(f2py_len=n) :: c
          !f2py integer, depend(o), intent(hide) :: m = len(o)
          !f2py integer, depend(o), intent(hide) :: n = shape(o, 1)
          do i=1,m
            c(i) = transfer(o(i, :), c(i))
          end do
        end subroutine {fprefix}_array_output_{fsuffix}

	(c)
          character :: c
          character, intent(in) :: o
          c = transfer(o, c)
       end function {fprefix}_return

       subroutine {fprefix}_array_input(c, o)
          character, intent(in) :: c(3)
          integer*1 o(3)
          !f2py intent(out) o
          integer i
          do i=1,3
            o(i) = transfer(c(i), o(i))
          end do
       end subroutine {fprefix}_array_input

	(c)
          character, dimension(3) :: c
          character, intent(in) :: o(3)
          do i=1,3
            c(i) = o(i)
          end do
       end function {fprefix}_array_return


	(c)
          character, intent(in) :: o
          !f2py character o = "a"
          character :: c
          c = o
       end function {fprefix}_optional
    """)

	(c)
          integer
          !f2py intent(out) o
          o = transfer(c, o)
        end subroutine {fprefix}_input_{fsuffix}

        subroutine {fprefix}_output_{fsuffix}(c, o, n)
          character*{clength}, intent(out) :: c
          integer n
          integer*1, dimension(n), intent(in) :: o
          !f2py integer, depend(o), intent(hide) :: n = len(o)
          c = transfer(o, c)
        end subroutine {fprefix}_output_{fsuffix}

	(c)
          integer
          do i=1,m1
            do j=1,m2
              o(i, j, :) = transfer(c(i, j), o(i, j, :))
            end do
          end do
        end subroutine {fprefix}_2d_array_input_{fsuffix}
        """)

	(c)
        assert_almost_equal(
            linalg.cond(a, 1),
            abs(c).sum(-2).max(-1) * abs(cinv).sum(-2).max(-1),
            single_decimal=5, double_decimal=11)
        assert_almost_equal(
            linalg.cond(a, -1),
            abs(c).sum(-2).min(-1) * abs(cinv).sum(-2).min(-1),
            single_decimal=5, double_decimal=11)
        assert_almost_equal(
            linalg.cond(a, np.inf),
            abs(c).sum(-1).max(-1) * abs(cinv).sum(-1).max(-1),
            single_decimal=5, double_decimal=11)
        assert_almost_equal(
            linalg.cond(a, -np.inf),
            abs(c).sum(-1).min(-1) * abs(cinv).sum(-1).min(-1),
            single_decimal=5, double_decimal=11)
        assert_almost_equal(
            linalg.cond(a, 'fro'),

	(c)
        assert_equal(a, l
        assert_equal(b, l['file_b'])

    def test_named_arrays_with_like(self):

	(c)
        assert_equal(a, l
        assert_equal(b, l['like'])

    def test_BagObj(self):

	(c)
        assert_equal(sorted(dir(l.f)),
        assert_equal(a, l.f.file_a)
        assert_equal(b, l.f.file_b)

    @pytest.mark.skipif(IS_WASM, reason="Cannot start thread")
    def test_savez_filename_clashes(self):

	(C)
        assert_equal(type(c

        # check that accessing nested structures keep record type, but
        # not for subarrays, non-void structures, non-structured voids
        test_dtype = [('a', 'f4,f4'), ('b', 'V8'), ('c', ('f4',2)),
                      ('d', ('i8', 'i4,i4'))]
        r = np.rec.array([((1,1), b'11111111', [1,1], 1),
                          ((1,1), b'11111111', [1,1], 1)], dtype=test_dtype)
        assert_equal(r.a.dtype.type, np.record)
        assert_equal(r.b.dtype.type, np.void)
        assert_equal(r.c.dtype.type, np.float32)
        assert_equal(r.d.dtype.type, np.int64)
        # check the same, but for views
        r = np.rec.array(np.ones(4, dtype='i4,i4'))
        assert_equal(r.view('f4,f4').dtype.type, np.record)
        assert_equal(r.view(('i4',2)).dtype.type, np.int32)
        assert_equal(r.view('V8').dtype.type, np.void)
        assert_equal(r.view(('i8', 'i4,i4')).dtype.type, np.int64)

	(C)
        assert_equal(type(np.polyval(

    def test_polyvalfromroots(self):

	(c)
        c
        if n == 1 and np.all(c[0] == 0):

	(c)
        c = np.add.accumulate(a, 0, None, b)
        assert_equal(c, check)
        assert_(c is b)
        assert_(c.info, {'inputs': [0], 'outputs': [0]})
        indices = [0, 2, 1]
        check = np.add.reduceat(d, indices, axis=1)
        c = np.add.reduceat(a, indices, axis=1)
        assert_equal(c, check)
        assert_(c.info, {'inputs': [0]})

	(c)
        c = np.add.reduce(a, 1, None, b)
        assert_equal(c, check)
        assert_(c is b)
        assert_(c.info, {'inputs': [0], 'outputs': [0]})
        check = np.add.accumulate(d, axis=0)
        c = np.add.accumulate(a, axis=0)
        assert_equal(c, check)
        assert_(c.info, {'inputs': [0]})

	(c)
        c = np.add.reduceat(a, indices, 1, None, b)
        assert_equal(c, check)
        assert_(c is b)
        assert_(c.info, {'inputs': [0], 'outputs': [0]})
        # and a few tests for at
        d = np.array([[1, 2, 3], [1, 2, 3]])
        check = d.copy()
        a = d.copy().view(A)
        np.add.at(check, ([0, 1], [0, 2]), 1.)
        np.add.at(a, ([0, 1], [0, 2]), 1.)
        assert_equal(a, check)
        assert_(a.info, {'inputs': [0]})
        b = np.array(1.).view(A)
        a = d.copy().view(A)
        np.add.at(a, ([0, 1], [0, 2]), b)
        assert_equal(a, check)
        assert_(a.info, {'inputs': [0, 2]})


	(c)
        c0 = c
        c1 = c[-1]
        for i in range(3, len(c) + 1):

	(c)
        c0 = c
        c1 = c[-1]*xs
        for i in range(3, len(c) + 1):

	(c)
        d = inner1d(a, b, axis=-1, out=out)
        assert_(d is out)
        assert_array_equal(d, c)
        c = inner1d(a, b, axis=0)
        assert_array_equal(c, (a * b).sum(0))
        # Sanity checks on innerwt and cumsum.
        a = np.arange(6).reshape((2, 3))
        b = np.arange(10, 16).reshape((2, 3))
        w = np.arange(20, 26).reshape((2, 3))
        assert_array_equal(umt.innerwt(a, b, w, axis=0),
                           np.sum(a * b * w, axis=0))
        assert_array_equal(umt.cumsum(a, axis=0), np.cumsum(a, axis=0))
        assert_array_equal(umt.cumsum(a, axis=-1), np.cumsum(a, axis=-1))
        out = np.empty_like(a)
        b = umt.cumsum(a, out=out, axis=0)
        assert_(out is b)
        assert_array_equal(b, np.cumsum(a, axis=0))
        b = umt.cumsum(a, out=out, axis=1)
        assert_(out is b)
        assert_array_equal(b, np.cumsum(a, axis=-1))
        # Check errors.
        # Cannot pass in both axis and axes.
        assert_raises(TypeError, inner1d, a, b, axis=0, axes=[0, 0])
        # Not an integer.
        assert_raises(TypeError, inner1d, a, b, axis=[0])
        # more than 1 core dimensions.
        mm = umt.matrix_multiply
        assert_raises(TypeError, mm, a, b, axis=1)
        # Output wrong size in axis.
        out = np.empty((1, 2, 3), dtype=a.dtype)
        assert_raises(ValueError, umt.cumsum, a, out=out, axis=0)
        # Regular ufuncs should not accept axis.
        assert_raises(TypeError, np.add, 1., 1., axis=0)

    def test_keepdims_argument(self):

	(c)
        d = inner1d(a, b, keepdims=True, out=out)
        assert_(d is out)
        assert_array_equal(d, c)
        # Now combined with axis and axes.
        c = inner1d(a, b, axis=-1, keepdims=False)
        assert_array_equal(c, (a * b).sum(-1, keepdims=False))
        c = inner1d(a, b, axis=-1, keepdims=True)
        assert_array_equal(c, (a * b).sum(-1, keepdims=True))
        c = inner1d(a, b, axis=0, keepdims=False)
        assert_array_equal(c, (a * b).sum(0, keepdims=False))
        c = inner1d(a, b, axis=0, keepdims=True)
        assert_array_equal(c, (a * b).sum(0, keepdims=True))
        c = inner1d(a, b, axes=[(-1,), (-1,), ()], keepdims=False)
        assert_array_equal(c, (a * b).sum(-1))
        c = inner1d(a, b, axes=[(-1,), (-1,), (-1,)], keepdims=True)
        assert_array_equal(c, (a * b).sum(-1, keepdims=True))
        c = inner1d(a, b, axes=[0, 0], keepdims=False)
        assert_array_equal(c, (a * b).sum(0))
        c = inner1d(a, b, axes=[0, 0, 0], keepdims=True)
        assert_array_equal(c, (a * b).sum(0, keepdims=True))
        c = inner1d(a, b, axes=[0, 2], keepdims=False)
        assert_array_equal(c, (a.transpose(1, 2, 0) * b).sum(-1))
        c = inner1d(a, b, axes=[0, 2], keepdims=True)
        assert_array_equal(c, (a.transpose(1, 2, 0) * b).sum(-1,
                                                             keepdims=True))
        c = inner1d(a, b, axes=[0, 2, 2], keepdims=True)
        assert_array_equal(c, (a.transpose(1, 2, 0) * b).sum(-1,
                                                             keepdims=True))
        c = inner1d(a, b, axes=[0, 2, 0], keepdims=True)
        assert_array_equal(c, (a * b.transpose(2, 0, 1)).sum(0, keepdims=True))
        # Hardly useful, but should work.
        c = inner1d(a, b, axes=[0, 2, 1], keepdims=True)
        assert_array_equal(c, (a.transpose(1, 0, 2) * b.transpose(0, 2, 1))
                           .sum(1, keepdims=True))
        # Check with two core dimensions.
        a = np.eye(3) * np.arange(4.)[:, np.newaxis, np.newaxis]
        expected = uml.det(a)
        c = uml.det(a, keepdims=False)
        assert_array_equal(c, expected)
        c = uml.det(a, keepdims=True)
        assert_array_equal(c, expected[:, np.newaxis, np.newaxis])
        a = np.eye(3) * np.arange(4.)[:, np.newaxis, np.newaxis]
        expected_s, expected_l = uml.slogdet(a)
        cs, cl = uml.slogdet(a, keepdims=False)
        assert_array_equal(cs, expected_s)
        assert_array_equal(cl, expected_l)
        cs, cl = uml.slogdet(a, keepdims=True)
        assert_array_equal(cs, expected_s[:, np.newaxis, np.newaxis])
        assert_array_equal(cl, expected_l[:, np.newaxis, np.newaxis])
        # Sanity check on innerwt.
        a = np.arange(6).reshape((2, 3))
        b = np.arange(10, 16).reshape((2, 3))
        w = np.arange(20, 26).reshape((2, 3))
        assert_array_equal(umt.innerwt(a, b, w, keepdims=True),
                           np.sum(a * b * w, axis=-1, keepdims=True))
        assert_array_equal(umt.innerwt(a, b, w, axis=0, keepdims=True),
                           np.sum(a * b * w, axis=0, keepdims=True))
        # Check errors.
        # Not a boolean
        assert_raises(TypeError, inner1d, a, b, keepdims='true')
        # More than 1 core dimension, and core output dimensions.
        mm = umt.matrix_multiply
        assert_raises(TypeError, mm, a, b, keepdims=True)
        assert_raises(TypeError, mm, a, b, keepdims=False)
        # Regular ufuncs should not accept keepdims.
        assert_raises(TypeError, np.add, 1., 1., keepdims=False)

    def test_innerwt(self):

	(c)
        expected = np.array(
                             [144, -12, 1],
                             [169, 13, 1]])
        assert_array_equal(v, expected)

        c = array([1.0+1j, 1.0-1j])
        v = vander(c, N=3)
        expected = np.array([[2j, 1+1j, 1],
                             [-2j, 1-1j, 1]])
        # The data is floating point, but the values are small integers,
        # so assert_array_equal *should* be safe here (rather than, say,
        # assert_array_almost_equal).

	(c)
        if (nl > 1) or (nr > 1) or (nl
            return False

        # can't do implicit summation or dimension collapse e.g.
        #     "ab,bc->c" (implicitly sum over 'a')
        #     "ab,ca->ca" (take diagonal of 'a')
        if nl + nr - 1 == int(c in result):

	(c)
        powers = np.array(
                           [1, 1, 1, 1, 1],
                           [16, -8, 4, -2, 1],
                           [81, 27, 9, 3, 1]])
        # Check default value of N:

	(c)
        prd = zs
        for i in range(2, power + 1):

	(c)
        return config_list

    def _get_configuration_from_setup_py(self, setup_py,
                                         subpackage_name,
                                         subpackage_path,
                                         parent_name,
                                         caller_level = 1):

	(C)
        The data is in a single, C-style contiguous segment.
    F_CONTIGUOUS (F)
        The data is in a single, Fortran-style contiguous segment.
    OWNDATA (O)
        The array owns the memory it uses or borrows it from another object.
    WRITEABLE (W)
        The data area can be written to.  Setting this to False locks
        the data, making it read-only.  A view (slice, etc.) inherits WRITEABLE
        from its base array at creation time, but a view of a writeable
        array may be subsequently locked while the base array remains writeable.
        (The opposite is not true, in that a view of a locked array may not
        be made writeable.  However, currently, locking a base object does not
        lock any views that already reference it, so under that circumstance it
        is possible to alter the contents of a locked array via a previously
        created writeable view onto it.)  Attempting to change a non-writeable
        array raises a RuntimeError exception.
    ALIGNED (A)
        The data and all elements are aligned appropriately for the hardware.
    WRITEBACKIFCOPY (X)
        This array is a copy of some other array. The C-API function
        PyArray_ResolveWritebackIfCopy must be called before deallocating
        to the base array will be updated with the contents of this array.
    FNC
        F_CONTIGUOUS and not C_CONTIGUOUS.
    FORC
        F_CONTIGUOUS or C_CONTIGUOUS (one-segment test).
    BEHAVED (B)
        ALIGNED and WRITEABLE.
    CARRAY (CA)
        BEHAVED and C_CONTIGUOUS.
    FARRAY (FA)
        BEHAVED and F_CONTIGUOUS and not C_CONTIGUOUS.

    Notes

	(c)
    # 3d
    f(d)
    # 1d size
    f(b, size=10)
    # 2d - size - broadcast
    f(e, size=(10, 2))
    # 3d - size
    f(g, size=(10, 10, 10))


	(c)
    1.0
    >>> # Formatting supersedes all class/package-level defaults
    >>> print(f"{p:unicode}")
    1.0 + 2.0·x + 3.0·x²
    """
    if style not in ('unicode', 'ascii'):

	(c)
    1.0
    >>> np.polynomial.set_default_printstyle('ascii')
    >>> print(p)
    1.0 + 2.0 x + 3.0 x**2

	(c)
    array(


	(c)
    array(
           [1, 4],
           [2, 5]])

    Vector inner products:


	(c)
    array(
           [2., 3.]])

    >>> d = StringIO("M 21 72\nF 35 58")
    >>> np.loadtxt(d, dtype={'names': ('gender', 'age', 'weight'),
    ...                      'formats': ('S1', 'i4', 'f4')})
    array([(b'M', 21, 72.), (b'F', 35, 58.)],
          dtype=[('gender', 'S1'), ('age', '<i4'), ('weight', '<f4')])

	(c)
    array(
        dtype='|S4')


	(c)
    array(
        dtype='|S5')


	(c)
    array(
    >>> C.chebder(c,3)
    array([96.])
    >>> C.chebder(c,scl=-1)
    array([-14., -12., -24.])
    >>> C.chebder(c,2,-1)
    array([12.,  96.])


	(c)
    array(
    >>> C.chebint(c,3)
    array([ 0.03125   , -0.1875    ,  0.04166667, -0.05208333,  0.01041667, # may vary
        0.00625   ])
    >>> C.chebint(c, k=3)
    array([ 3.5, -0.5,  0.5,  0.5])
    >>> C.chebint(c,lbnd=-2)
    array([ 8.5, -0.5,  0.5,  0.5])
    >>> C.chebint(c,scl=-2)
    array([-1.,  1., -1., -1.])


	(c)
    array(
    >>> L.legder(c, 3)
    array([60.])
    >>> L.legder(c, scl=-1)
    array([ -6.,  -9., -20.])
    >>> L.legder(c, 2,-1)
    array([  9.,  60.])


	(c)
    array(
    >>> L.legint(c, 3)
    array([  1.66666667e-02,  -1.78571429e-02,   4.76190476e-02, # may vary
             -1.73472348e-18,   1.90476190e-02,   9.52380952e-03])
    >>> L.legint(c, k=3)
     array([ 3.33333333,  0.4       ,  0.66666667,  0.6       ]) # may vary
    >>> L.legint(c, lbnd=-2)
    array([ 7.33333333,  0.4       ,  0.66666667,  0.6       ]) # may vary
    >>> L.legint(c, scl=2)
    array([ 0.66666667,  0.8       ,  1.33333333,  1.2       ]) # may vary


	(c)
    array(
    >>> np.char.strip(c, 'a') # 'a' unstripped from c[1] because whitespace leads
    array(['AaAaA', '  aA  ', 'bBABb'], dtype='<U7')
    >>> np.char.strip(c, 'A') # 'A' unstripped from c[1] because (unprinted) ws trails
    array(['aAaAa', '  aA  ', 'abBABba'], dtype='<U7')


	(c)
    assert_equal(p.trim().coef, c
    assert_equal(p.trim(1e-10).coef, c[:2])
    assert_equal(p.trim(1e-5).coef, c[:1])


	(c)
    except ValueError:
        # scalar covariance
        # nan if incorrect value (nan, inf, 0), 1 otherwise
        return c / c
    stddev = sqrt(d.real)
    c /= stddev[:, None]
    c /= stddev[None, :]

    # Clip real and imaginary parts to [-1, 1].  This does not guarantee
    # abs(a[i,j]) <= 1 for complex arrays, but is the best we can do without
    # excessive work.
    np.clip(c.real, -1, 1, out=c.real)
    if np.iscomplexobj(c):

	(c)
    except ValueError:
        return 1
    #
    if xnotmask.all():

	(c)
    if cnt >= n:
        c = c[:1]*0
    else:

	(c)
    if cnt >= n:
        return c[:1]*0
    else:

	(c)
    if n < 3:
        return c
    else:

	(c)
    if n == 1:
        return c
    else:

	(c)
    if n == 1:
        return c
    if n == 2:

	(c)
    mod_rules.append(code)
    for r in mod_rules:

	(c)
    x = la.eigvalsh(m)

    # improve roots by one application of Newton
    dy = _normed_hermite_e_n(x, ideg)
    df = _normed_hermite_e_n(x, ideg - 1) * np.sqrt(ideg)
    x -= dy/df

	(c)
    x = la.eigvalsh(m)

    # improve roots by one application of Newton
    dy = _normed_hermite_n(x, ideg)
    df = _normed_hermite_n(x, ideg - 1) * np.sqrt(2*ideg)
    x -= dy/df

	(c)
    x = la.eigvalsh(m)

    # improve roots by one application of Newton
    dy = lagval(x, c)
    df = lagval(x, lagder(c))
    x -= dy/df

	(c)
    x = la.eigvalsh(m)

    # improve roots by one application of Newton
    dy = legval(x, c)
    df = legval(x, legder(c))
    x -= dy/df

	(c)
np.all(A)
np.all(B)
np.all(A, axis=0)
np.all(B, axis=0)
np.all(A, keepdims=True)
np.all(B, keepdims=True)

np.any(a)
np.any(b)

	(c)
np.amax(A)
np.amax(B)
np.amax(A, axis=0)
np.amax(B, axis=0)
np.amax(A, keepdims=True)
np.amax(B, keepdims=True)

np.amin(a)
np.amin(b)

	(c)
np.amin(A)
np.amin(B)
np.amin(A, axis=0)
np.amin(B, axis=0)
np.amin(A, keepdims=True)
np.amin(B, keepdims=True)

np.prod(a)
np.prod(b)

	(c)
np.any(A)
np.any(B)
np.any(A, axis=0)
np.any(B, axis=0)
np.any(A, keepdims=True)
np.any(B, keepdims=True)

np.cumsum(a)
np.cumsum(b)

	(c)
np.around(A)
np.around(B)

np.mean(a)
np.mean(b)

	(C)
np.atleast_1d(A)
np.atleast_1d(C, C)
np.atleast_1d(C, A)
np.atleast_1d(A, A)


	(c)
np.cumprod(A)
np.cumprod(B)

np.ndim(a)
np.ndim(b)

	(c)
np.cumsum(A)
np.cumsum(B)

np.ptp(b)

	(C)
np.empty_like(B)
np.empty_like(B, dtype=np.int64)

np.full_like(A, i8)
np.full_like(C, i8)
np.full_like(B, i8)
np.full_like(B, i8, dtype=np.int64)

	(c)
np.mean(A)
np.mean(B)
np.mean(A, axis=0)
np.mean(B, axis=0)
np.mean(A, keepdims=True)
np.mean(B, keepdims=True)
np.mean(b, out=d)
np.mean(B, out=d)

np.std(a)
np.std(b)

	(c)
np.ndim(A)
np.ndim(B)

np.size(a)
np.size(b)

	(C)
np.ones_like(B)
np.ones_like(B, dtype=np.int64)

np.empty_like(A)

	(c)
np.prod(A)
np.prod(B)
np.prod(a, dtype=None)
np.prod(A, dtype=None)
np.prod(A, axis=0)
np.prod(B, axis=0)
np.prod(A, keepdims=True)
np.prod(B, keepdims=True)
np.prod(b, out=d)
np.prod(B, out=d)

np.cumprod(a)
np.cumprod(b)

	(c)
np.ptp(B)
np.ptp(B, axis=0)
np.ptp(B, keepdims=True)

np.amax(a)
np.amax(b)

	(c)
np.ravel(A)
np.ravel(B)

np.nonzero(A)
np.nonzero(B)

	(c)
np.shape(A)
np.shape(B)

np.compress([True], a)
np.compress([True], b)
np.compress([True], c)
np.compress([True], A)
np.compress([True], B)

	(c)
np.size(A)
np.size(B)

np.around(a)
np.around(b)

	(c)
np.squeeze(A)
np.squeeze(B)

np.diagonal(A)
np.diagonal(B)

	(c)
np.std(A)
np.std(B)
np.std(A, axis=0)
np.std(B, axis=0)
np.std(A, keepdims=True)
np.std(B, keepdims=True)
np.std(b, out=d)
np.std(B, out=d)

np.var(a)
np.var(b)

	(c)
np.sum(A)
np.sum(B)
np.sum(A, axis=0)
np.sum(B, axis=0)

np.all(a)
np.all(b)

	(c)
np.transpose(A)
np.transpose(B)

np.partition(a, 0, axis=None)
np.partition(b, 0, axis=None)
np.partition(c, 0, axis=None)
np.partition(A, 0)
np.partition(B, 0)

	(c)
np.var(A)
np.var(B)
np.var(A, axis=0)
np.var(B, axis=0)
np.var(A, keepdims=True)
np.var(B, keepdims=True)
np.var(b, out=d)

	(C)
np.zeros_like(B)
np.zeros_like(B, dtype=np.int64)

np.ones_like(A)

	(c) # (d/dx)(c) = 2
    array([  2.,   6.,  12.])
    >>> P.polyder(c,3) # (d**3/dx**3)(c) = 24
    array([24.])
    >>> P.polyder(c,scl=-1) # (d/d(-x))(c) = -2 - 6x - 12x**2
    array([ -2.,  -6., -12.])
    >>> P.polyder(c,2,-1) # (d**2/d(-x)**2)(c) = 6 + 24x
    array([  6.,  24.])


	(c) # (d/dx)(c) = 2
    array([  2.,   6.,  12.])
    >>> P.polyder(c,3) # (d**3/dx**3)(c) = 24
    array([24.])
    >>> P.polyder(c,scl=-1) # (d/d(-x))(c) = -2 - 6x - 12x**2
    array([ -2.,  -6., -12.])
    >>> P.polyder(c,2,-1) # (d**2/d(-x)**2)(c) = 6 + 24x
    array([  6.,  24.])


	(c) # should return array(
    array([0.,  1.,  1.,  1.])
    >>> P.polyint(c,3) # should return array([0, 0, 0, 1/6, 1/12, 1/20])
     array([ 0.        ,  0.        ,  0.        ,  0.16666667,  0.08333333, # may vary
             0.05      ])
    >>> P.polyint(c,k=3) # should return array([3, 1, 1, 1])
    array([3.,  1.,  1.,  1.])
    >>> P.polyint(c,lbnd=-2) # should return array([6, 1, 1, 1])
    array([6.,  1.,  1.,  1.])
    >>> P.polyint(c,scl=-2) # should return array([0, -2, -2, -2])
    array([ 0., -2., -2., -2.])


	(c) # should return array(
    array([0.,  1.,  1.,  1.])
    >>> P.polyint(c,3) # should return array([0, 0, 0, 1/6, 1/12, 1/20])
     array([ 0.        ,  0.        ,  0.        ,  0.16666667,  0.08333333, # may vary
             0.05      ])
    >>> P.polyint(c,k=3) # should return array([3, 1, 1, 1])
    array([3.,  1.,  1.,  1.])
    >>> P.polyint(c,lbnd=-2) # should return array([6, 1, 1, 1])
    array([6.,  1.,  1.,  1.])
    >>> P.polyint(c,scl=-2) # should return array([0, -2, -2, -2])
    array([ 0., -2., -2., -2.])


	(c) < 2:
        raise ValueError('Series must have maximum degree of at least 1.')
    if len(c) == 2:

	(c) < 2:
        return np.array([], dtype=c.dtype)
    if len(c) == 2:

	(c) < 2:
        raise ValueError('Series must have maximum degree of at least 1.')
    if len(c) == 2:

	(c) < 2:
        return np.array([], dtype=c.dtype)
    if len(c) == 2:

	(c) > 1:
        tmp = c[1:]/2
        prd[2:] = tmp
        prd[0:-2] += tmp
    return prd


	(c) > 1:
        tmp = c[1:]/2
        prd[2:] = tmp
        prd[0:-2] += tmp
    return prd


	(c) > tol)
    if len(ind) == 0:

	(c) > tol)
    if len(ind) == 0:

	(c) call-back (Python) functions            :
            cb_passed_call_time);
    fprintf(stderr, "(d) f2py call-back interface, %6d calls  : %8d msec\n",
            cb_passed_counter, cb_passed_time);

    fprintf(stderr,
            "(e) wrapped (Fortran/C) functions (actual) : %8d msec\n\n",
            passed_call_time - cb_passed_call_time - cb_passed_time);
    fprintf(stderr,
            "Use -DF2PY_REPORT_ATEXIT_DISABLE to disable this message.\n");
    fprintf(stderr, "Exit status: %d\n", exit_flag);
    fprintf(stderr, "Modules    : %s\n", (char *)name);

	(c) call-back (Python) functions            :
            cb_passed_call_time);
    fprintf(stderr, "(d) f2py call-back interface, %6d calls  : %8d msec\n",
            cb_passed_counter, cb_passed_time);

    fprintf(stderr,
            "(e) wrapped (Fortran/C) functions (actual) : %8d msec\n\n",
            passed_call_time - cb_passed_call_time - cb_passed_time);
    fprintf(stderr,
            "Use -DF2PY_REPORT_ATEXIT_DISABLE to disable this message.\n");
    fprintf(stderr, "Exit status: %d\n", exit_flag);
    fprintf(stderr, "Modules    : %s\n", (char *)name);

	(c) foo
            integer intent(out) :: x
            callprotoargument int*
            callstatement {{ &
                ; &
                x = 42; &

	(c) foo
            integer intent(out) :: x
        end subroutine foo
    end interface
end python module {module_name}
    """

	(c) foo
            integer intent(out) :: x
            callprotoargument int*
            callstatement {{ &
                ; &
                x = 42; &

	(c) foo
            integer intent(out) :: x
        end subroutine foo
    end interface
end python module {module_name}
    """

	(c) for c in

    def test_values(self):

	(c) for c in
class TestMatrixPower:


	(c) for c in

    def test_values(self):

	(c) for c in
class TestMatrixPower:


	(c) for c in arr
        if charmax < 256:

	(c) for c in arr
        if charmax < 256:

	(c) for c in c2d
        res = cheb.chebder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = cheb.chebint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([cheb.chebint(c, k=3) for c in c2d])
        res = cheb.chebint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = herm.hermder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = herm.hermint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([herm.hermint(c, k=3) for c in c2d])
        res = herm.hermint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = herme.hermeder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = herme.hermeint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([herme.hermeint(c, k=3) for c in c2d])
        res = herme.hermeint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = lag.lagder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = lag.lagint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([lag.lagint(c, k=3) for c in c2d])
        res = lag.lagint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = leg.legder(c2d, axis=1)
        assert_almost_equal(res, tgt)

    def test_legder_orderhigherthancoeff(self):

	(c) for c in c2d
        res = leg.legint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([leg.legint(c, k=3) for c in c2d])
        res = leg.legint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = poly.polyder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = poly.polyint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([poly.polyint(c, k=3) for c in c2d])
        res = poly.polyint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = cheb.chebder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = cheb.chebint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([cheb.chebint(c, k=3) for c in c2d])
        res = cheb.chebint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = herm.hermder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = herm.hermint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([herm.hermint(c, k=3) for c in c2d])
        res = herm.hermint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = herme.hermeder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = herme.hermeint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([herme.hermeint(c, k=3) for c in c2d])
        res = herme.hermeint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = lag.lagder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = lag.lagint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([lag.lagint(c, k=3) for c in c2d])
        res = lag.lagint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = leg.legder(c2d, axis=1)
        assert_almost_equal(res, tgt)

    def test_legder_orderhigherthancoeff(self):

	(c) for c in c2d
        res = leg.legint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([leg.legint(c, k=3) for c in c2d])
        res = leg.legint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d
        res = poly.polyder(c2d, axis=1)
        assert_almost_equal(res, tgt)


	(c) for c in c2d
        res = poly.polyint(c2d, axis=1)
        assert_almost_equal(res, tgt)

        tgt = np.vstack([poly.polyint(c, k=3) for c in c2d])
        res = poly.polyint(c2d, k=3, axis=1)
        assert_almost_equal(res, tgt)

	(c) for c in c2d.T
        res = cheb.chebder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = cheb.chebint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = herm.hermder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = herm.hermint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = herme.hermeder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = herme.hermeint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = lag.lagder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = lag.lagint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = leg.legder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = leg.legint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = poly.polyder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = poly.polyint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = cheb.chebder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = cheb.chebint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = herm.hermder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = herm.hermint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = herme.hermeder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = herme.hermeint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = lag.lagder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = lag.lagint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = leg.legder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = leg.legint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = poly.polyder(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in c2d.T
        res = poly.polyint(c2d, axis=0)
        assert_almost_equal(res, tgt)


	(c) for c in s

        # Check that we do not allow writeable buffer export
        with pytest.raises(BufferError, match="scalar buffer is readonly"):

	(c) for c in s

        # Check that we do not allow writeable buffer export
        with pytest.raises(BufferError, match="scalar buffer is readonly"):

	(c) for c in yo2
        out.append(" ".join(line))
    return out


	(c) for c in yo2
        out.append(" ".join(line))
    return out


	(c) is C))

    def test_failing_wrap(self):


	(c) is C))

    def test_failing_wrap(self):


	(c) is not None

        s = as_string("'123'")
        s2 = as_string('"ABC"')
        assert s.op == Op.STRING
        assert repr(s) == "Expr(Op.STRING, (\"'123'\", 1))", repr(s)
        assert s == s
        assert s != s2

	(c) is not None

        s = as_string("'123'")
        s2 = as_string('"ABC"')
        assert s.op == Op.STRING
        assert repr(s) == "Expr(Op.STRING, (\"'123'\", 1))", repr(s)
        assert s == s
        assert s != s2

	(c) is not np.matrix)


	(c) is not np.matrix)


	(c) is np.ndarray)
        assert_(c.dtype == object)
        assert_(d.dtype == object)

    def test_array_resize_method_system_error(self):

	(c) is np.ndarray)
        assert_(type(d) is np.ndarray)


	(c) is np.ndarray)
        assert_(type(d) is np.ndarray)

    def test_matrix_multiply_by_1d_vector(self):

	(c) is np.ndarray)
        assert_(c.dtype == object)
        assert_(d.dtype == object)

    def test_array_resize_method_system_error(self):

	(c) is np.ndarray)
        assert_(type(d) is np.ndarray)


	(c) is np.ndarray)
        assert_(type(d) is np.ndarray)

    def test_matrix_multiply_by_1d_vector(self):

	(C) or column-major (Fortran) order. The function
 * array_from_pyobj is very flexible about its Python object argument
 * that can be any number, list, tuple, or array.
 *
 * array_from_pyobj is used in f2py generated Python extension
 * modules.

	(C) or column-major (Fortran) order. The function
 * array_from_pyobj is very flexible about its Python object argument
 * that can be any number, list, tuple, or array.
 *
 * array_from_pyobj is used in f2py generated Python extension
 * modules.

	(c) s4
    real*4 intent(out) :: t4
    real*4 intent(c) :: value
  end
  subroutine s8(t8,value)

	(c) s4
    real*4 intent(out) :: t4
    real*4 intent(c) :: value
  end
  subroutine s8(t8,value)

	(c) s8
    real*8 intent(out) :: t8
    real*8 intent(c) :: value
  end
end interface
end python module c_ext_return_real
    """

	(c) s8
    real*8 intent(out) :: t8
    real*8 intent(c) :: value
  end
end interface
end python module c_ext_return_real
    """

	(c)**2).sum(-1).sum(-1)
                    * (abs(cinv)**2).sum(-1).sum(-1)),
            single_decimal=5, double_decimal=11)


	(c)**2).sum(-1).sum(-1)
                    * (abs(cinv)**2).sum(-1).sum(-1)),
            single_decimal=5, double_decimal=11)


	Copyright (c) 1992-2013 The University of Tennessee and The University
                          of Tennessee Research Foundation.  All rights
                          reserved.

	Copyright (c) 1992-2013 The University of Tennessee and The University
                          of Tennessee Research Foundation.  All rights
                          reserved.

	Copyright (c) 2000-2013 The University of California Berkeley. All
                          rights reserved.

	Copyright (c) 2000-2013 The University of California Berkeley. All
                          rights reserved.

	Copyright (C) 2002-2017 Free Software Foundation, Inc.

	Copyright (C) 2002-2017 Free Software Foundation, Inc.

	Copyright (c) 2005-2022, NumPy Developers.
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

    * Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above
       copyright notice, this list of conditions and the following
       disclaimer in the documentation and/or other materials provided
       with the distribution.

    * Neither the name of the NumPy Developers nor the names of any
       contributors may be used to endorse or promote products derived
       from this software without specific prior written permission.


	Copyright (c) 2005-2022, NumPy Developers.
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

    * Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above
       copyright notice, this list of conditions and the following
       disclaimer in the documentation and/or other materials provided
       with the distribution.

    * Neither the name of the NumPy Developers nor the names of any
       contributors may be used to endorse or promote products derived
       from this software without specific prior written permission.


	Copyright (c) 2006-2013 The University of Colorado Denver.  All rights
                          reserved.


	Copyright (c) 2006-2013 The University of Colorado Denver.  All rights
                          reserved.


	Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>

	Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>

	Copyright (C) 2009 Free Software Foundation, Inc. <http://fsf.org/>

	Copyright (C) 2009 Free Software Foundation, Inc. <http://fsf.org/>

	Copyright (C) 2010 - 2019 ridiculous_fish, <libdivide@ridiculousfish.com>

	Copyright (C) 2010 - 2019 ridiculous_fish, <libdivide@ridiculousfish.com>

	Copyright (c) 2011-2014, The OpenBLAS Project
  All rights reserved.

  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions are
  met:

     1. Redistributions of source code must retain the above copyright
        notice, this list of conditions and the following disclaimer.

     2. Redistributions in binary form must reproduce the above copyright
        notice, this list of conditions and the following disclaimer in
        the documentation and/or other materials provided with the
        distribution.
     3. Neither the name of the OpenBLAS project nor the names of
        its contributors may be used to endorse or promote products

	Copyright (c) 2011-2014, The OpenBLAS Project
  All rights reserved.

  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions are
  met:

     1. Redistributions of source code must retain the above copyright
        notice, this list of conditions and the following disclaimer.

     2. Redistributions in binary form must reproduce the above copyright
        notice, this list of conditions and the following disclaimer in
        the documentation and/or other materials provided with the
        distribution.
     3. Neither the name of the OpenBLAS project nor the names of
        its contributors may be used to endorse or promote products

	Copyright (C) 2016 - 2019 Kim Walisch, <kim.walisch@gmail.com>

	Copyright (C) 2016 - 2019 Kim Walisch, <kim.walisch@gmail.com>

  This software is provided 'as-is', without any express or implied
  warranty.  In no event will the authors be held liable for any damages
  arising from the use of this software.

	Copyright (C) 2016 - 2019 Kim Walisch, <kim.walisch@gmail.com>

	Copyright (C) 2016 - 2019 Kim Walisch, <kim.walisch@gmail.com>

  This software is provided 'as-is', without any express or implied
  warranty.  In no event will the authors be held liable for any damages
  arising from the use of this software.

	Copyright (c) Donald Stufft and individual contributors.
# All rights reserved.

# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:

#     1. Redistributions of source code must retain the above copyright notice,
#        this list of conditions and the following disclaimer.

#     2. Redistributions in binary form must reproduce the above copyright
#        notice, this list of conditions and the following disclaimer in the
#        documentation and/or other materials provided with the distribution.


	Copyright (c) Donald Stufft and individual contributors.
# All rights reserved.

# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:

#     1. Redistributions of source code must retain the above copyright notice,
#        this list of conditions and the following disclaimer.

#     2. Redistributions in binary form must reproduce the above copyright
#        notice, this list of conditions and the following disclaimer in the
#        documentation and/or other materials provided with the distribution.


	Copyright 1999 - 2011 Pearu Peterson all rights reserved.
https://web.archive.org/web/20140822061353/http://cens.ioc.ee/projects/f2py2e"""


	Copyright 1999 - 2011 Pearu Peterson all rights reserved.
https://web.archive.org/web/20140822061353/http://cens.ioc.ee/projects/f2py2e"""


	Copyright 1999, 2000, 2001 Regents of the University of California.
Released for unlimited redistribution.

* Adapted for numpy_core 2005 by Travis Oliphant and (mainly) Paul Dubois.
* Subclassing of the base `ndarray` 2006 by Pierre Gerard-Marchant
  (pgmdevlist_AT_gmail_DOT_com)
* Improvements suggested by Reggie Dugard (reggie_AT_merfinllc_DOT_com)

	Copyright 1999, 2000, 2001 Regents of the University of California.
Released for unlimited redistribution.

* Adapted for numpy_core 2005 by Travis Oliphant and (mainly) Paul Dubois.
* Subclassing of the base `ndarray` 2006 by Pierre Gerard-Marchant
  (pgmdevlist_AT_gmail_DOT_com)
* Improvements suggested by Reggie Dugard (reggie_AT_merfinllc_DOT_com)

	Copyright 1999,2000 Pearu Peterson all rights reserved,

	Copyright 1999,2000 Pearu Peterson all rights reserved,

	Copyright 1999--2011 Pearu Peterson all rights reserved,

	Copyright 1999--2011 Pearu Peterson all rights reserved,

	Copyright 1999-2004 Pearu Peterson all rights reserved,

	Copyright 1999-2004 Pearu Peterson all rights reserved,

	Copyright 2000 Pearu Peterson all rights reserved,

	Copyright 2000 Pearu Peterson all rights reserved,

	Copyright 2001-2005 Pearu Peterson all rights reserved,

	Copyright 2001-2005 Pearu Peterson all rights reserved,

	Copyright 2002 Pearu Peterson all rights reserved,

	Copyright 2002 Pearu Peterson all rights reserved,

	copyright 2010 David
Wolever <david@wolever.net>. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

   1. Redistributions of source code must retain the above copyright notice,
   this list of conditions and the following disclaimer.

   2. Redistributions in binary form must reproduce the above copyright notice,
   this list of conditions and the following disclaimer in the documentation
   and/or other materials provided with the distribution.


	copyright 2010 David
Wolever <david@wolever.net>. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

   1. Redistributions of source code must retain the above copyright notice,
   this list of conditions and the following disclaimer.

   2. Redistributions in binary form must reproduce the above copyright notice,
   this list of conditions and the following disclaimer in the documentation
   and/or other materials provided with the distribution.


	Copyright Absoft Corporation 1994-1998 mV2; Cray Research, Inc. 1994-1996 CF90 (2.x.x.x  f36t87) Version 2.3 Wed Apr 19, 2006  13:05:16

    # samt5735(8)$ f90 -V -c dummy.f

	Copyright Absoft Corporation 1994-1998 mV2; Cray Research, Inc. 1994-1996 CF90 (2.x.x.x  f36t87) Version 2.3 Wed Apr 19, 2006  13:05:16

    # samt5735(8)$ f90 -V -c dummy.f

	Copyright Absoft Corporation 1994-2002; Absoft Pro FORTRAN Version 8.0
    # Note that fink installs g77 as f77, so need to use f90 for detection.

    executables = {
        'version_cmd'  : None,          # set by update_executables
        'compiler_f77' : ["f77"],
        'compiler_fix' : ["f90"],
        'compiler_f90' : ["f90"],
        'linker_so'    : ["<F90>"],
        'archiver'     : ["ar", "-cr"],
        'ranlib'       : ["ranlib"]

	Copyright Absoft Corporation 1994-2002; Absoft Pro FORTRAN Version 8.0
    # Note that fink installs g77 as f77, so need to use f90 for detection.

    executables = {
        'version_cmd'  : None,          # set by update_executables
        'compiler_f77' : ["f77"],
        'compiler_fix' : ["f90"],
        'compiler_f90' : ["f90"],
        'linker_so'    : ["<F90>"],
        'archiver'     : ["ar", "-cr"],
        'ranlib'       : ["ranlib"]

	Copyright Absoft Corporation.
                       r' (?P<version>[^\s*,]*)(.*?Absoft Corp|)'

    # on windows: f90 -V -c dummy.f

	Copyright Absoft Corporation.
                       r' (?P<version>[^\s*,]*)(.*?Absoft Corp|)'

    # on windows: f90 -V -c dummy.f

	COPYRIGHT$

  Additional copyrights may follow

  $HEADER$

	COPYRIGHT$

  Additional copyrights may follow

  $HEADER$

Packaging 25.0 pypi:packaging/25.0: https://github.com/pypa/packaging
	Copyright (c) 2017-present Ofek Lev <oss@ofek.dev>

	Copyright (c) Donald Stufft and individual contributors.
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

    1. Redistributions of source code must retain the above copyright notice,
       this list of conditions and the following disclaimer.

    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.


	copyright = ABOUT

# -- Options for HTML output --------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output

pbr 7.0.1 pypi:pbr/7.0.1: http://openstack.org
	Copyright (C) 2005 Association of Universities for Research in Astronomy (AURA)

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

    1. Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.

    2. Redistributions in binary form must reproduce the above
      copyright notice, this list of conditions and the following
      disclaimer in the documentation and/or other materials provided
      with the distribution.


	Copyright (c) 2011 OpenStack Foundation

	Copyright (C) 2013 Association of Universities for Research in Astronomy
#                    (AURA)
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
#     1. Redistributions of source code must retain the above copyright
#        notice, this list of conditions and the following disclaimer.
#
#     2. Redistributions in binary form must reproduce the above
#        copyright notice, this list of conditions and the following
#        disclaimer in the documentation and/or other materials provided
#        with the distribution.
#

	Copyright (c) 2013 Hewlett-Packard Development Company, L.P.

	Copyright (c) 2013 New Dream Network, LLC (DreamHost)

	Copyright (c) 2015 Hewlett-Packard Development Company, L.P. (HP)

	Copyright (C) 2020 Red Hat, Inc.

	Copyright 2010-2011 OpenStack Foundation

	Copyright 2011 OpenStack Foundation

	Copyright 2012 OpenStack Foundation

	Copyright 2012 Red Hat, Inc.

	Copyright 2012-2013 Hewlett-Packard Development Company, L.P.

	Copyright 2013 Hewlett-Packard Development Company, L.P.

	Copyright 2014 Hewlett-Packard Development Company, L.P.

	Copyright 2018 Red Hat, Inc.

	Copyright 2021 Monty Taylor

	copyright = '2013-, OpenStack Foundation

# If true, '()' will be appended to :func: etc. cross-reference text.
add_function_parentheses = True

	copyright = u

# If true, '()' will be appended to :func: etc. cross-reference text.
add_function_parentheses = True

powertrain-build 1.11.2 pypi:powertrain-build/1.11.2: https://opendev.org/volvocars/powertrain-build
	No Copyrights found
psf-requests 2.32.3 pypi:requests/2.32.3: http://docs.python-requests.org
	(c)
        return c

    def iterkeys(self):

	Copyright 2019 Kenneth Reitz

	Copyright Kenneth Reitz"

	copyright: (c) 2012 by Kenneth Reitz.

	copyright: (c) 2017 by Kenneth Reitz.

pycodestyle 2.14.0 pypi:pycodestyle/2.14.0: https://pypi.python.org/pypi/pycodestyle
	Copyright (C) 2006-2009 Johann C. Rocholl <johann@rocholl.net>

	Copyright (C) 2009-2014 Florent Xicluna <florent.xicluna@gmail.com>

	Copyright (C) 2014-2016 Ian Lee <ianlee1521@gmail.com>

	Copyright © 2006-2009 Johann C. Rocholl <johann@rocholl.net>

	Copyright © 2009-2014 Florent Xicluna <florent.xicluna@gmail.com>

	Copyright © 2014-2020 Ian Lee <IanLee1521@gmail.com>

Pyflakes 3.4.0 pypi:pyflakes/3.4.0: https://github.com/pyflakes/pyflakes
	Copyright 2005-2011 Divmod, Inc.

	Copyright 2013 Florent Xicluna.  See LICENSE file for details
import os.path

try:

	Copyright 2013-2014 Florent Xicluna

Pygments - Python syntax highlighter 2.19.2 pypi:Pygments/2.19.2: http://pygments.org/
	(c)
			(if (> c 127)
			    (logxor c listify-key-sequence-1)
			  c)))
	    key)))

(defun eventp (obj)
  "True if the argument is an event object."
  (when obj
    (or (integerp obj)
        (and (symbolp obj) obj (not (keywordp obj)))
        (and (consp obj) (symbolp (car obj))))))

	(c)

    with open(__file__,
        fp.write(header)

        for cat in sorted(categories):

	(c)
            if cn < (2
                # ASCII character
                buf.append(str(c))
            elif (2**7) <= cn < (2**16):

	(c)
        # XID_START and XID_CONTINUE are special categories used for matching
        # identifiers in Python 3.
        if c.isidentifier():

	(c)
        assert len(cats) == 1, "

	(c)
        if (

	(c)
        if ord(c) == 0xdc00:
            # Hack to avoid combining this combining with the preceding high
            # surrogate, 0xdbff, when doing a repr.
            c = '\\' + c

	(c) & 0xFFFFFF);
        }

	(c) (declare (ignore c)) nil)
)

	(c) * F;
    F := F * B;
  end;
end;

function KeepIn(i, Bottom, Top: Variant): Variant;
begin
  Result := i;
  if Result > Top then
    Result := Top
  else if Result < Bottom then
    Result := Bottom;
end;

	(c) 2006-2024 by Georg Brandl, Matth
              'Chajdas and contributors.')
        return 0

    def is_only_option(opt):

	(C) Copyright ..." is shown in the HTML footer. Default is True.

	(C) Copyright 2006 Salvatore Filippone    University of Rome Tor Vergata
!!$                       Alfredo Buttari        University of Rome Tor Vergata
!!$                       Daniela Di Serafino    II University of Naples
!!$                       Pasqua D'Ambra         ICAR-CNR
!!$
!!$  Redistribution and use in source and binary forms, with or without
!!$  modification, are permitted provided that the following conditions
!!$  are met:
!!$    1. Redistributions of source code must retain the above copyright
!!$       notice, this list of conditions and the following disclaimer.
!!$    2. Redistributions in binary form must reproduce the above copyright
!!$       notice, this list of conditions, and the following disclaimer in the
!!$       documentation and/or other materials provided with the distribution.

	(C) FSF.
;;; See the file `COPYING' for terms applying to this program.
;;;

	(c) in (0x2d, 0x5b, 0x5c, 0x5d, 0x5e):
            # Escape regex metachars.
            c = '\\' + c

	(c) of
      '0'..'9': c := c - 48;
      'A'..'Z': c := c - 55;
    end;
    if c < B then

	copyright            : (C) 2004 by Andr
    email                : andre.simon1@gmx.de
 ***************************************************************************/

	copyright            : (C) 2004 by Andre Simon
    email                : andre.simon1@gmx.de
 ***************************************************************************/

	copyright   Copyright (c) 2006, Manni
 *  @version     1.0
 *  @link        http://www.pkware.com/business_and_developers/developer/popups/appnote.txt
 *  @link        http://mannithedark.is-a-geek.net/
 *  @since       1.0
 *  @package     fnord.bb
 *  @subpackage  archive
 */
class Zip extends Archive {

	Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.

	Copyright (C) 1985-1986, 1992, 1994-1995, 1999-2015 Free Software
;; Foundation, Inc.

;; Maintainer: emacs-devel@gnu.org
;; Keywords: internal
;; Package: emacs

	Copyright (C) 1993-2003 Yukihiro Matsumoto

	Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.

	Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005

	Copyright (c) 1997 Borland International
{                                                       }

	Copyright (c) 1998,1999,2000,2001,2002 Tal Davidson. All rights reserved.
 *
 * ASBeautifier.cpp
 * by Tal Davidson (davidsont@bigfoot.com)
 * This file is a part of "Artistic Style" - an indentater and reformatter
 * of C, C, C# and Java source files.

	Copyright (c) 1998,1999,2000,2001,2002 Tal Davidson. All rights reserved.
 *
 * ASFormatter.cpp
 * by Tal Davidson (davidsont@bigfoot.com)
 * This file is a part of "Artistic Style" - an indentater and reformatter
 * of C, C++, C# and Java source files.

	Copyright (c) 1998,1999,2000,2001,2002 Tal Davidson. All rights reserved.
 *
 * compiler_defines.h   (1 January 1999)
 * by Tal Davidson (davidsont@bigfoot.com)
 * This file is a part of "Artistic Style" - an indentater and reformatter
 * of C, C++, C# and Java source files.

	Copyright (C) 2000  Information-technology Promotion Agency, Japan


	Copyright (C) 2000  Network Applied Communication Laboratory, Inc.

	Copyright (C) 2004, 2005, 2006 Aelitis, All Rights Reserved.

	Copyright (C) 2005  Free Software Foundation, Inc."
    $echo "This is free software; see the source for copying conditions.  There is NO"
    $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
    exit $?
    ;;

	Copyright (c) 2005-2006 by:                               //
//                                                                            //
// Authors:                                                                   //
//      Michael Dominic K. <michaldominik@gmail.com>                          //

	Copyright (c) 2006-2022 by the respective authors (see AUTHORS file).
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

* Redistributions of source code must retain the above copyright
  notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright
  notice, this list of conditions and the following disclaimer in the
  documentation and/or other materials provided with the distribution.


	Copyright (c) 2008 Silken Web - Free BSD License
' All rights reserved.
'
' Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
' * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer
' * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
' * Neither the name of Silken Web nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
'

	Copyright (C) 2008 Slava Pestov

	Copyright (C) 2009 Benjamin Kowarsch. All rights reserved.

	Copyright (c) 2014 Fullstack.io. All rights reserved.
//

	Copyright (c) 2015 Georg Brandl

	Copyright (c) Curve.Fi, 2020-2023 - all rights reserved
@notice Stableswap implementation for up to 8 coins with no rehypothecation,
        i.e. the AMM does not deposit tokens into other contracts. The Pool contract also
        records exponential moving averages for coins relative to coin 0.
@dev Asset Types:

	Copyright (c) Rich Hickey. All rights reserved.

	Copyright 1996 Institut National de Recherche en Informatique et

	Copyright 2005 Brian Alliet

\documentclass[11pt]{article}
\usepackage{palatino}
\usepackage{fullpage}
\usepackage{parskip}
\usepackage{lhs}

	Copyright 2006-2025 by the Pygments team.

	copyright 2006.
 Uploaded to HaskellWiki as DancingSudoku.lhs

 I compile on a powerbook G4 (Mac OS X, ghc 6.4.2) using
 ghc -optc-O3 -funbox-strict-fields -O2 --make -fglasgow-exts

	Copyright 2012 by Luis Majano and Ortus Solutions, Corp

	Copyright 2012 Nokia Siemens Networks Oyj

	copyright = '2006-2024, Georg Brandl and Pygments contributors

# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.

	copyright = llist

	copyright = llist
    while copyright and copyright_2_re.match(copyright[0]):

	copyright = True

# If true, an OpenSearch description file will be output, and all pages will
# contain a <link> tag referring to it.  The value of this option must be the
# base URL from which the finished HTML is served.
#html_use_opensearch = ''

	copyright info"


	copyright or not copyright_re.match(copyright

	Copyright Since

	copyright'            : '\U000000a9
        '\\textregistered'       : '\U000000ae',
        '\\textonequarter'       : '\U000000bc',
        '\\textonehalf'          : '\U000000bd',
        '\\textthreequarters'    : '\U000000be',
        '\\textordfeminine'      : '\U000000aa',
        '\\textordmasculine'     : '\U000000ba',
        '\\euro'                 : '\U000020ac',
        '\\pounds'               : '\U000000a3',
        '\\yen'                  : '\U000000a5',
        '\\textcent'             : '\U000000a2',
        '\\textcurrency'         : '\U000000a4',
        '\\textdegree'           : '\U000000b0',
    }

	copyright: Copyright 2006-2020 by the Pygments team, see AUTHORS.

	copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.

	copyright: Copyright 2006-2025 by
                          r'the Pygments team, see AUTHORS\.$')
copyright_2_re = re.compile(rf'^                {name_mail_re}(, {name_mail_re})*[,.]$')
is_const_re = re.compile(r'if.*?==\s+(None|False|True)\b')

misspellings = ["developement", "adress", "verificate",  # ALLOW-MISSPELLING
                "informations", "unlexer"]               # ALLOW-MISSPELLING

	copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.

	copyright: Copyright 2021 by the Pygments team, see AUTHORS.

	Copyright:: Copyright (c) 2003, 04 by Johannes Barre

	copyright>'            : '\U000000a9
        '\\<registered>'           : '\U000000ae',
        '\\<hyphen>'               : '\U000000ad',
        '\\<inverse>'              : '\U000000af',
        '\\<onequarter>'           : '\U000000bc',
        '\\<onehalf>'              : '\U000000bd',
        '\\<threequarters>'        : '\U000000be',
        '\\<ordfeminine>'          : '\U000000aa',
        '\\<ordmasculine>'         : '\U000000ba',
        '\\<section>'              : '\U000000a7',
        '\\<paragraph>'            : '\U000000b6',
        '\\<exclamdown>'           : '\U000000a1',
        '\\<questiondown>'         : '\U000000bf',
        '\\<euro>'                 : '\U000020ac',
        '\\<pounds>'               : '\U000000a3',
        '\\<yen>'                  : '\U000000a5',
        '\\<cent>'                 : '\U000000a2',
        '\\<currency>'             : '\U000000a4',
        '\\<degree>'               : '\U000000b0',
        '\\<amalg>'                : '\U00002a3f',
        '\\<mho>'                  : '\U00002127',
        '\\<lozenge>'              : '\U000025ca',
        '\\<wp>'                   : '\U00002118',
        '\\<wrong>'                : '\U00002240',
        '\\<struct>'               : '\U000022c4',
        '\\<acute>'                : '\U000000b4',
        '\\<index>'                : '\U00000131',
        '\\<dieresis>'             : '\U000000a8',
        '\\<cedilla>'              : '\U000000b8',
        '\\<hungarumlaut>'         : '\U000002dd',
        '\\<some>'                 : '\U000003f5',
        '\\<newline>'              : '\U000023ce',
        '\\<open>'                 : '\U00002039',
        '\\<close>'                : '\U0000203a',
        '\\<here>'                 : '\U00002302',
        '\\<^sub>'                 : '\U000021e9',
        '\\<^sup>'                 : '\U000021e7',
        '\\<^bold>'                : '\U00002759',
        '\\<^bsub>'                : '\U000021d8',
        '\\<^esub>'                : '\U000021d9',
        '\\<^bsup>'                : '\U000021d7',
        '\\<^esup>'                : '\U000021d6',
    }

	Copyright|VersionDescription
             r'VersionNumber|VersionProduct|VersionTrademarks|Version|'
             r'VFPXMLProgID|ViewPortHeight|ViewPortLeft|'
             r'ViewPortTop|ViewPortWidth|VScrollSmallChange|View|Visible|'
             r'VisualEffect|WhatsThisButton|WhatsThisHelpID|WhatsThisHelp|'
             r'WhereType|Width|WindowList|WindowState|WindowType|WordWrap|'
             r'WrapCharInCDATA|WrapInCDATA|WrapMemoInCDATA|XMLAdapter|'
             r'XMLConstraints|XMLNameIsXPath|XMLNamespace|XMLName|'
             r'XMLPrefix|XMLSchemaLocation|XMLTable|XMLType|'
             r'XSDfractionDigits|XSDmaxLength|XSDtotalDigits|'
             r'XSDtype|ZoomBox)', Name.Attribute),

            (r'\.(ActivateCell|AddColumn|AddItem|AddListItem|AddObject|'
             r'AddProperty|AddTableSchema|AddToSCC|Add|'
             r'ApplyDiffgram|Attach|AutoFit|AutoOpen|Box|Build|'
             r'CancelReport|ChangesToCursor|CheckIn|CheckOut|Circle|'
             r'CleanUp|ClearData|ClearStatus|Clear|CloneObject|CloseTables|'
             r'Close|Cls|CursorAttach|CursorDetach|CursorFill|'
             r'CursorRefresh|DataToClip|DelayedMemoFetch|DeleteColumn|'
             r'Dock|DoMessage|DoScroll|DoStatus|DoVerb|Drag|Draw|Eval|'
             r'GetData|GetDockState|GetFormat|GetKey|GetLatestVersion|'
             r'GetPageHeight|GetPageWidth|Help|Hide|IncludePageInOutput|'
             r'IndexToItemID|ItemIDToIndex|Item|LoadXML|Line|Modify|'
             r'MoveItem|Move|Nest|OLEDrag|OnPreviewClose|OutputPage|'
             r'Point|Print|PSet|Quit|ReadExpression|ReadMethod|'
             r'RecordRefresh|Refresh|ReleaseXML|Release|RemoveFromSCC|'
             r'RemoveItem|RemoveListItem|RemoveObject|Remove|'
             r'Render|Requery|RequestData|ResetToDefault|Reset|Run|'
             r'SaveAsClass|SaveAs|SetAll|SetData|SetFocus|SetFormat|'
             r'SetMain|SetVar|SetViewPort|ShowWhatsThis|Show|'
             r'SupportsListenerType|TextHeight|TextWidth|ToCursor|'
             r'ToXML|UndoCheckOut|Unnest|UpdateStatus|WhatsThisMode|'
             r'WriteExpression|WriteMethod|ZOrder)', Name.Function),

pypi/setuptools 59.6.0 pypi:setuptools/59.6.0: https://pypi.org/project/setuptools/
	(c) *output
        }
    } while (1);

	(c) > 255:
                has_high_char = True
                break
        if has_high_char:

	(c) > 255:
            has_high_char = True
            break
    if has_high_char:

	(c) for c in children
        [[1, 2, 3], [4, 5], [6, 7]]

    If the length of the iterable is smaller than n, then the last returned
    iterables will be empty:


	(c) for c in children
        [[1, 4, 7], [2, 5], [3, 6]]

    If the length of *iterable* is smaller than *n*, then the last returned
    iterables will be empty:


	(c) for c in children
        [[1], [2], [3], [], []]

    This function uses :func:`itertools.tee` and may require significant
    storage. If you need the order items in the smaller iterables to match the
    original iterable, see :func:`divide`.

	(c) for c in children
        [[1], [2], [3], [], []]

    This function will exhaust the iterable before returning and may require
    significant storage. If order is not important, see :func:`distribute`,
    which does not first pull the iterable into memory.

	(c) for c in range(ord(p
    try:

	Copyright (c) 2003-2018  Paul T. McGuire

	Copyright (C) 2005, 2006 Martin von L

	Copyright (c) 2005-2010 ActiveState Software Inc.

	Copyright (c) 2013 Eddy Petri

"""Utilities for determining application-specific dirs.

	Copyright (c) Anderson Bravalheri

	Copyright Jason R. Coombs

pytest 8.4.2 pypi:pytest/8.4.2: http://pytest.org
	(c)

    # ASCII fast path.
    if 0x20 <= o < 0x07F:

	(c)

    # Control characters.
    if category == "Cc":

	(C)

    assert all_marks ==

    assert get_unpacked_marks(C, consider_mro=False) == [xfail("c").mark]

	(c)
        if wc < 0:
            return -1
        width += wc

	(c) in ("F", "W"):
        return 2

    return 1

	Copyright (c) 2004 Holger Krekel and others

	Copyright (c) 2014, Gregory Boissinot

	Copyright Holger Krekel and others, 2004.

python3-charset-normalizer 3.4.4 pypi:charset-normalizer/3.4.4: https://github.com/ousret/charset_normalizer
	No Copyrights found
python-certifi 2024.7.4 pypi:certifi/2024.7.4: https://certifiio.readthedocs.io/en/latest/
	No Copyrights found
python-pluggy 1.6.0 pypi:pluggy/1.6.0: https://pypi.python.org/pypi/pluggy
	Copyright (c) 2015 holger krekel (rather uses bitbucket/hpk42)

python-typing-extensions 4.15.0 pypi:typing-extensions/4.15.0
	(C)

        with self.assertRaisesRegex(TypeError, non_callable_members_illegal):
            issubclass(C, PNonCall)

        self.assertIsInstance(C(), PNonCall)

	(C)
        P.register(C)
        self.assertIsInstance(C(), P)
        self.assertIsInstance(C(), D)

    def test_none_on_non_callable_doesnt_block_implementation(self):

	(C)
        self.assertIsSubclass(C, A)
        self.assertNotIsSubclass(C, B)

        class D: ...
        B.register(D)
        self.assertIsSubclass(D, A)
        self.assertIsSubclass(D, B)

	(C)
        self.assertIsSubclass(C, D)
        self.assertIsInstance(C(), D)

        with self.assertRaisesRegex(TypeError, non_callable_members_illegal):

	Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam,
The Netherlands.  All rights reserved.

Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the name of Stichting Mathematisch
Centrum or CWI not be used in advertising or publicity pertaining to
distribution of the software without specific, written prior
permission.

	Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,

ruamel-yaml 0.18.6 pypi:ruamel.yaml/0.18.6: https://pypi.org/project/ruamel.yaml/
	N/A
ruamel.yaml.clib 0.2.14 pypi:ruamel.yaml.clib/0.2.14: https://sourceforge.net/p/ruamel-yaml-clib/code/ci/default/tree/
	(c) ((unsigned char)c)
#define __Pyx_long_cast(x) ((long)x)
#define __Pyx_fits_Py_ssize_t(v, type, is_signed)  (\
    (sizeof(type) < sizeof(Py_ssize_t))  ||\
    (sizeof(type) > sizeof(Py_ssize_t) &&\
          likely(v < (type)PY_SSIZE_T_MAX ||\
                 v == (type)PY_SSIZE_T_MAX)  &&\
          (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\
                                v == (type)PY_SSIZE_T_MIN)))  ||\
    (sizeof(type) == sizeof(Py_ssize_t) &&\
          (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\
                               v == (type)PY_SSIZE_T_MAX)))  )
static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) {
    return (size_t) i < (size_t) limit;
}
#if defined (__cplusplus) && __cplusplus >= 201103L
    #include <cstdlib>
    #define __Pyx_sst_abs(value) std::abs(value)
#elif SIZEOF_INT >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) abs(value)
#elif SIZEOF_LONG >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) labs(value)
#elif defined (_MSC_VER)
    #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define __Pyx_sst_abs(value) llabs(value)
#elif defined (__GNUC__)
    #define __Pyx_sst_abs(value) __builtin_llabs(value)
#else
    #define __Pyx_sst_abs(value) ((value<0) ? -value : value)
#endif
static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s);
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*);
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString        PyBytes_FromString
#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#if PY_MAJOR_VERSION < 3
    #define __Pyx_PyStr_FromString        __Pyx_PyBytes_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#else
    #define __Pyx_PyStr_FromString        __Pyx_PyUnicode_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
#endif
#define __Pyx_PyBytes_AsWritableString(s)     ((char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableSString(s)    ((signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableUString(s)    ((unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsString(s)     ((const char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsSString(s)    ((const signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsUString(s)    ((const unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyObject_AsWritableString(s)    ((char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableSString(s)    ((signed char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableUString(s)    ((unsigned char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsSString(s)    ((const signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsUString(s)    ((const unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s)  __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s)   __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s)   __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyStr_FromCString(s)     __Pyx_PyStr_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
#define __Pyx_PyUnicode_FromOrdinal(o)       PyUnicode_FromOrdinal((int)o)
#define __Pyx_PyUnicode_AsUnicode            PyUnicode_AsUnicode
#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj)
#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None)
static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b);
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x);
#define __Pyx_PySequence_Tuple(obj)\
    (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*);
#if CYTHON_ASSUME_SAFE_MACROS
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
#endif
#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x))
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x))
#else
#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x))
#endif
#if CYTHON_USE_PYLONG_INTERNALS
  #if PY_VERSION_HEX >= 0x030C00A7
  #ifndef _PyLong_SIGN_MASK
    #define _PyLong_SIGN_MASK 3
  #endif
  #ifndef _PyLong_NON_SIZE_BITS
    #define _PyLong_NON_SIZE_BITS 3
  #endif
  #define __Pyx_PyLong_Sign(x)  (((PyLongObject*)x)->long_value.lv_tag & _PyLong_SIGN_MASK)
  #define __Pyx_PyLong_IsNeg(x)  ((__Pyx_PyLong_Sign(x) & 2) != 0)
  #define __Pyx_PyLong_IsNonNeg(x)  (!__Pyx_PyLong_IsNeg(x))
  #define __Pyx_PyLong_IsZero(x)  (__Pyx_PyLong_Sign(x) & 1)
  #define __Pyx_PyLong_IsPos(x)  (__Pyx_PyLong_Sign(x) == 0)
  #define __Pyx_PyLong_CompactValueUnsigned(x)  (__Pyx_PyLong_Digits(x)[0])
  #define __Pyx_PyLong_DigitCount(x)  ((Py_ssize_t) (((PyLongObject*)x)->long_value.lv_tag >> _PyLong_NON_SIZE_BITS))
  #define __Pyx_PyLong_SignedDigitCount(x)\
        ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x))
  #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue)
    #define __Pyx_PyLong_IsCompact(x)     PyUnstable_Long_IsCompact((PyLongObject*) x)
    #define __Pyx_PyLong_CompactValue(x)  PyUnstable_Long_CompactValue((PyLongObject*) x)
  #else
    #define __Pyx_PyLong_IsCompact(x)     (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS))
    #define __Pyx_PyLong_CompactValue(x)  ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0])
  #endif
  typedef Py_ssize_t  __Pyx_compact_pylong;
  typedef size_t  __Pyx_compact_upylong;
  #else
  #define __Pyx_PyLong_IsNeg(x)  (Py_SIZE(x) < 0)
  #define __Pyx_PyLong_IsNonNeg(x)  (Py_SIZE(x) >= 0)
  #define __Pyx_PyLong_IsZero(x)  (Py_SIZE(x) == 0)
  #define __Pyx_PyLong_IsPos(x)  (Py_SIZE(x) > 0)
  #define __Pyx_PyLong_CompactValueUnsigned(x)  ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0])
  #define __Pyx_PyLong_DigitCount(x)  __Pyx_sst_abs(Py_SIZE(x))
  #define __Pyx_PyLong_SignedDigitCount(x)  Py_SIZE(x)
  #define __Pyx_PyLong_IsCompact(x)  (Py_SIZE(x) == 0 || Py_SIZE(x) == 1 || Py_SIZE(x) == -1)
  #define __Pyx_PyLong_CompactValue(x)\
        ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0]))
  typedef sdigit  __Pyx_compact_pylong;
  typedef digit  __Pyx_compact_upylong;
  #endif
  #if PY_VERSION_HEX >= 0x030C00A5
  #define __Pyx_PyLong_Digits(x)  (((PyLongObject*)x)->long_value.ob_digit)
  #else
  #define __Pyx_PyLong_Digits(x)  (((PyLongObject*)x)->ob_digit)
  #endif
#endif
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
#include <string.h>
static int __Pyx_sys_getdefaultencoding_not_ascii;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
    PyObject* sys;
    PyObject* default_encoding = NULL;
    PyObject* ascii_chars_u = NULL;
    PyObject* ascii_chars_b = NULL;
    const char* default_encoding_c;
    sys = PyImport_ImportModule("sys");
    if (!sys) goto bad;
    default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL);
    Py_DECREF(sys);
    if (!default_encoding) goto bad;
    default_encoding_c = PyBytes_AsString(default_encoding);
    if (!default_encoding_c) goto bad;
    if (strcmp(default_encoding_c, "ascii") == 0) {
        __Pyx_sys_getdefaultencoding_not_ascii = 0;
    } else {
        char ascii_chars[128];
        int c;
        for (c = 0; c < 128; c++) {
            ascii_chars[c] = (char) c;

	Copyright (c) 2019-2024 Anthon van der Neut, Ruamel bvba

	Copyright (c) 2019-2025 Anthon van der Neut, Ruamel bvba
	N/A
	©#f
SciPy 1.9.1 pypi:scipy/1.9.1: http://www.scipy.org
	(c)			(Col

	(c)	(Col
#define KILL_ROW(r)			{ Row [r].shared2.mark = DEAD ; }
#define KILL_PRINCIPAL_COL(c)		{ Col [c].start = DEAD_PRINCIPAL ; }
#define KILL_NON_PRINCIPAL_COL(c)	{ Col [c].start = DEAD_NON_PRINCIPAL ; }


	(C)

        # Check the estimation
        assert_array_almost_equal(smin, smin_svd, decimal=8)
        assert_array_almost_equal(abs(zmin), abs(zmin_svd), decimal=8)


	(C)

        # Get smallest singular value and correspondent right singular vector.
        smin_svd = s[-1]
        zmin_svd = Vt[-1, :]

        # Estimate smallest singular value

	(c)

        res = linprog(c=c
                      method=self.method, integrality=integrality)

        s = (numbers.flatten() * res.x).reshape(n**2, n, n)
        square = np.sum(s, axis=0)
        np.testing.assert_allclose(square.sum(axis=0), M)
        np.testing.assert_allclose(square.sum(axis=1), M)
        np.testing.assert_allclose(np.diag(square).sum(), M)
        np.testing.assert_allclose(np.diag(square[:, ::-1]).sum(), M)

	(c)

        res = linprog(c=c, A_ub=A_ub, b_ub=b_ub, bounds=bounds,
                      method=self.method, integrality=integrality)

        np.testing.assert_allclose(res.fun, -2)
        # two optimal solutions possible, just need one of them
        assert np.allclose(res.x, [1, 2]) or np.allclose(res.x, [2, 2])

	(c)

        res = linprog(c=c, A_ub=A_ub, b_ub=b_ub, bounds=bounds,
                      method=self.method, integrality=integrality)

        np.testing.assert_allclose(res.x, [1, 2])
        np.testing.assert_allclose(res.fun, -3)

	(c)

        return converted

    return __ua_convert__

	(c)

        self.d, self.fd = self._update_bracket(c, fc)
        self.e, self.fe = None, None
        self.iterations += 1

        while True:

	(c)

        with np.testing.assert_warns(OptimizeWarning):
            res = linprog(c=c, A_ub=A_ub, b_ub=b_ub, bounds=bounds,
                          method=self.method, integrality=integrality)

        np.testing.assert_allclose(res.x, [1.8, 2.8])
        np.testing.assert_allclose(res.fun, -2.8)

	(c)

    # solve original problem
    res = milp(c=c, constraints=constraints, integrality=integrality)
    assert_allclose(res.fun, -2)
    # two optimal solutions possible, just need one of them
    assert np.allclose(res.x, [1, 2]) or np.allclose(res.x, [2, 2])

    # solve relaxed problem
    res = milp(c=c, constraints=constraints)
    assert_allclose(res.fun, -2.8)
    assert_allclose(res.x, [1.8, 2.8])

	(c)

    @_call_super_mom
    @inherit_docstring_from(rv_continuous)
    def fit(self, data, *args, **kwds):

	(c)

    def _cdf(self, x, c):

	(c)

    def _cdf(self, x, c):
        return sc.gammainc(c, np.exp(x))

    def _ppf(self, q, c):

	(c)

    def _fitstart(self, data, args=None):
        # invweibull requires c > 1 for the first moment to exist, so use 2.0
        args = (2.0,) if args is None else args
        return super(invweibull_gen, self)._fitstart(data, args=args)


	(c)

    def _ppf(self, q, c):
        return sc.expm1(q * sc.log1p(c)) / c

    def _stats(self, c, moments='mv'):

	(c)

    def _shape_info(self):
        return [_ShapeInfo("c", False, (-np.inf, np.inf), (False, False))]

    def _get_support(self, c):

	(c)

    Display the points at which the FFT is calculated:

    >>> czt_7.points()
    array([ 1.00000000+0.j        ,  0.62348980+0.78183148j,
           -0.22252093+0.97492791j, -0.90096887+0.43388374j,
           -0.90096887-0.43388374j, -0.22252093-0.97492791j,
            0.62348980-0.78183148j])
    >>> import matplotlib.pyplot as plt
    >>> plt.plot(czt_7.points().real, czt_7.points().imag, 'o')
    >>> plt.gca().add_patch(plt.Circle((0,0), radius=1, fill=False, alpha=.3))
    >>> plt.axis('equal')
    >>> plt.show()

	(c)

    return (((uiva


	(c)

    We solve the problem like:

    >>> from scipy.optimize import milp
    >>> res = milp(c=c, constraints=constraints, integrality=integrality)
    >>> res.x
    [1.0, 2.0]

	(c)
                     for c in prepared_constraints

    if len(canonical_all) == 0:

	(c)
                    c = scal(1.0/alpha, c)
                    u = scal(1.0/alpha, u)

                    new_CU.append((c, u))
                CU[:] = new_CU

	(C)
                elements.push_back(el);                                                                     // MAY THROW (C)
            }

	(C)
              IF (DABS((WA-WA0)/WA).LT.EPS.AND.K.GT.10) GO TO 30
10            WA0=WA
        ELSE IF (W0.GT.2.5.AND.W0.LT.4.5) THEN
           M=85
           C=Z0
           CF1=Z0
           CF0=(1.0D-100,0.0D0)
           DO 15 K=M,0,-1
              CF=(2.0D0*K+3.0D0)*CF0/ZP-CF1
              IF (K.EQ.INT(K/2)*2) C=C+CF
              CF1=CF0
15            CF0=CF
           C=2.0D0/(PI*Z)*SIN(ZP)/CF*C
        ELSE
C          See comment at CFS(), use C(z) = iC(-iz)
           IF (DIMAG(Z).GT.-DBLE(Z).AND.DIMAG(Z).LE.DBLE(Z)) THEN
C            right quadrant
             D=DCMPLX(.5D0,0.0D0)
           ELSE IF (DIMAG(Z).GT.DBLE(Z).AND.DIMAG(Z).GE.-DBLE(Z)) THEN
C            upper quadrant
             D=DCMPLX(0.0D0,.5D0)
           ELSE IF (DIMAG(Z).LT.-DBLE(Z).AND.DIMAG(Z).GE.DBLE(Z)) THEN
C            left quadrant
             D=DCMPLX(-.5D0,0.0D0)
           ELSE
C            lower quadrant
             D=DCMPLX(0.0D0,-.5D0)
           ENDIF
           CR=(1.0D0,0.0D0)
           CF=(1.0D0,0.0D0)
           DO 20 K=1,20
              CR=-.25D0*CR*(4.0D0*K-1.0D0)*(4.0D0*K-3.0D0)/ZP2
20            CF=CF+CR
           CR=1.0D0/(PI*Z*Z)
           CG=CR
           DO 25 K=1,12
              CR=-.25D0*CR*(4.0D0*K+1.0D0)*(4.0D0*K-1.0D0)/ZP2
25            CG=CG+CR
           C=D+(CF*SIN(ZP)-CG*COS(ZP))/(PI*Z)
        ENDIF
30      ZF=C
        ZD=COS(0.5*PI*Z*Z)
        RETURN
        END


	(c)
            # Compute Hessian
            H = lagr_hess(x, v)
            # Set Flag
            last_iteration_failed = False
            # Otimality values
            optimality = norm(c + A.T.dot(v), np.inf)
            constr_violation = norm(b, np.inf) if len(b) > 0 else 0
        else:

	(c)
            a = dot(c, transpose(c))
            assert_array_almost_equal(cholesky(a, lower=1), c)

    def test_random_complex(self):

	(c)
            a = dot(c, transpose(conjugate(c)))
            assert_array_almost_equal(cholesky(a, lower=1), c)


	(c)
            a, b = stats.genpareto._get_support(c)
            assert_equal(a, 0.)
            assert_(np.isposinf(b))

        # c < 0: a=0, b=1/|c|
        c = np.asarray(-2.)

	(c)
            assert_allclose(

    def test_rv_frozen_in_namespace(self):

	(c)
            if fc == 0:
                return _ECONVERGED, c

            # re-bracket
            e, fe = d, fd
            d, fd = self._update_bracket(c, fc)

	(c)
            rv = stats.genpareto(c=c)
            a, b = rv.a, rv.b
            assert_equal(a, 0.)
            assert_(np.isposinf(b))

            # c < 0: a=0, b=1/|c|
            c = np.asarray(-2.)

	(c)
            scale = fscale

        return a, floc, scale

	(c)
            x1 = z - x0
            yield [x0, x1]

    def all_partitions_n(z, ns):

	(C)
        # fails if sparse or scalar; that
        # this is only needed for original simplex (never sparse)
    except TypeError:

	(C)
        A = A
	(c)
        a = dot(c, transpose(c))
        assert_array_almost_equal(cholesky(a, lower=1), c)

    def test_check_finite(self):

	(c)
        a = dot(c, transpose(c))
        assert_array_almost_equal(cholesky(a, lower=1, check_finite=False), c)

    def test_simple_complex(self):

	(c)
        a = dot(c, transpose(conjugate(c)))
        assert_array_almost_equal(cholesky(a, lower=1), c)

    def test_random(self):

	(c)
        assert_allclose(

    def test_c0(self):
        # with c=0, genpareto reduces to the exponential distribution

	(C)
        assert_array_equal(C

        # Now test slicing when a row contains only zeros
        E = matrix([[1, 2, 1], [4, 0, 0], [0, 0, 0], [0, 0, 1]])
        F = self.spmatrix(E)
        assert_array_equal(E[1, 1:3], F[1, 1:3].toarray())
        assert_array_equal(E[2, -2:], F[2, -2:].A)

	(C)
        assert_array_equal(C
        assert_array_equal(C[:, [2]], D[:, 2].toarray())

        # Now test slicing when a column contains only zeros
        E = array([[1, 0, 1], [4, 0, 0], [0, 0, 0], [0, 0, 1]])
        F = self.spmatrix(E)
        assert_array_equal(E[:, [1]], F[:, 1].toarray())
        assert_array_equal(E[-2:, [2]], F[-2:, 2].toarray())

	(C)
        assert_array_equal(C.A, D.A)

    def test_fancy_indexing_lil(self):

	(c)
        assert_equal(

        c = 0.1
        stats.genpareto.pdf(0, c)  # this should NOT change genpareto.b
        assert_equal((rv.dist.a, rv.dist.b), stats.genpareto._get_support(c))

	(c)
        assert_equal(

        c = 0.1
        stats.genpareto.pdf(0, c=c)
        assert_equal(rv.dist._get_support(c), [0, np.inf])

	(c)
        assert_equal(a.item(), d)


	(c)
        b = _lazywhere(c < 0, (c,),
                       lambda c: -1. / c,
                       np.inf)
        a = np.where(c >= 0, self.a, self.a)
        return a, b

    def _pdf(self, x, c):

	(C)
        Dsp = self.spmatrix(D)
        assert_almost_equal(Csp.multiply(Dsp).toarray(), C*D)  # sparse/sparse
        assert_almost_equal(Csp.multiply(D).toarray(), C*D)  # sparse/dense

        # real/complex
        assert_almost_equal(Asp.multiply(Dsp).toarray(), A*D)  # sparse/sparse
        assert_almost_equal(Asp.multiply(D).toarray(), A*D)  # sparse/dense

	(c)
        dsp = self.spmatrix(d)
        esp = self.spmatrix(e)
        fsp = self.spmatrix(f)

        # matrix product.
        assert_array_equal(asp.dot(asp).A, np.dot(a, a))
        assert_array_equal(bsp.dot(dsp).A, np.dot(b, d))
        assert_array_equal(dsp.dot(bsp).A, np.dot(d, b))
        assert_array_equal(csp.dot(esp).A, np.dot(c, e))
        assert_array_equal(csp.dot(fsp).A, np.dot(c, f))
        assert_array_equal(esp.dot(csp).A, np.dot(e, c))
        assert_array_equal(dsp.dot(csp).A, np.dot(d, c))
        assert_array_equal(fsp.dot(esp).A, np.dot(f, e))

	(c)
        if ct > 0:
            c = np.r_[c, np.zeros((ct,) + c.shape[1:])]
        ta, ca, ka = _fitpack_impl.splantider((self.t, c, self.k), 1)

        if extrapolate == 'periodic':

	(c)
        if ct > 0:
            c = np.r_[c, np.zeros((ct,) + c.shape[1:])]
        tck = _fitpack_impl.splantider((self.t, c, self.k), nu)

        if self.extrapolate == 'periodic':

	(c)
        if ct > 0:
            c = np.r_[c, np.zeros((ct,) + c.shape[1:])]
        tck = _fitpack_impl.splder((self.t, c, self.k), nu)
        return self.construct_fast(*tck, extrapolate=self.extrapolate,
                                    axis=self.axis)

    def antiderivative(self, nu=1):

	(c)
        if extrapolate is None:
            extrapolate = True
        self.extrapolate = bool(extrapolate)

        ndim = len(self.x)
        if any(v.ndim != 1 for v in self.x):

	(c)
        if fc == 0:

	(c)
        if fc == 0:
            return _ECONVERGED, c

        e, fe = d, fd
        d, fd = self._update_bracket(c, fc)

	(c)
        if mode == "left":
            c = c.T
    else:

	(c)
        if n_x == 0 or len(c.shape)
            raise ValueError(
                "Invalid input for linprog: c must be a 1-D array and must "
                "not have more than one non-singleton dimension")
        if not(np.isfinite(c).all()):

	(c)
        integrality =
	(c)
        integrality =

        res = linprog(c=c, A_ub=A_ub, b_ub=b_ub, bounds=bounds,
                      method=self.method, integrality=integrality)

	(c)
        L

        assert_equal(info, 1)
        # assert_equal(r_c, n - r)
        single_atol = 1000 * np.finfo(np.float32).eps
        double_atol = 1000 * np.finfo(np.float64).eps
        atol = single_atol if ind in [0, 2] else double_atol
        assert_allclose(A[piv-1][:, piv-1], L @ L.conj().T, rtol=0., atol=atol)

	(c)
        mask = np.ones(nx
        mask[x] = False
        y = z[mask]
        yield x, y


	(c)
        mu2 = np.pi
        g1 = -2*sc.zeta(3, c) + 2*_ZETA3
        g1 /= np.power(mu2, 1.5)
        g2 = np.pi**4/15.0 + 6*sc.zeta(4, c)
        g2 /= mu2**2.0
        return mu, mu2, g1, g2


	(C)
        NM2=2
        CALL KMN(M,N,C,CV,KD,DF,DN,CK1,CK2)
        CALL LPMNS(M,NM2,X,PM,PD)
        CALL LQMNS(M,NM2,X,QM,QD)
        SU0=0.0D0
        SW=0.0D0
        DO 10 K=1,NM
          J=2*K-2+M+IP
          SU0=SU0+DF(K)*QM(J)
          IF (K.GT.NM1.AND.DABS(SU0-SW).LT.DABS(SU0)*EPS) GO TO 15
10        SW=SU0
15      SD0=0.0D0
        DO 20 K=1,NM
          J=2*K-2+M+IP
          SD0=SD0+DF(K)*QD(J)
          IF (K.GT.NM1.AND.DABS(SD0-SW).LT.DABS(SD0)*EPS) GO TO 25
20        SW=SD0
25        SU1=0.0D0
          SD1=0.0D0
          DO 30 K=1,M
             J=M-2*K+IP
             IF (J.LT.0) J=-J-1
             SU1=SU1+DN(K)*QM(J)
30           SD1=SD1+DN(K)*QD(J)
          GA=((X-1.0D0)/(X+1.0D0))**(0.5D0*M)
          DO 55 K=1,M
             J=M-2*K+IP
             IF (J.GE.0) GO TO 55
             IF (J.LT.0) J=-J-1
             R1=1.0D0
             DO 35 J1=1,J
35              R1=(M+J1)*R1
             R2=1.0D0
             DO 40 J2=1,M-J-2
40              R2=J2*R2
             R3=1.0D0
             SF=1.0D0
             DO 45 L1=1,J
                R3=0.5D0*R3*(-J+L1-1.0)*(J+L1)/((M+L1)*L1)*(1.0-X)
45              SF=SF+R3
             IF (M-J.GE.2) GB=(M-J-1.0D0)*R2
             IF (M-J.LE.1) GB=1.0D0
             SPL=R1*GA*GB*SF
             SU1=SU1+(-1)**(J+M)*DN(K)*SPL
             SPD1=M/(X*X-1.0D0)*SPL
             GC=0.5D0*J*(J+1.0)/(M+1.0)
             SD=1.0D0
             R4=1.0D0
             DO 50 L1=1,J-1
                R4=0.5D0*R4*(-J+L1)*(J+L1+1.0)/((M+L1+1.0)*L1)
     &             *(1.0-X)
50              SD=SD+R4
             SPD2=R1*GA*GB*GC*SD
             SD1=SD1+(-1)**(J+M)*DN(K)*(SPD1+SPD2)
55        CONTINUE
          SU2=0.0D0
          KI=(2*M+1+IP)/2
          NM3=NM+KI
          DO 60 K=KI,NM3
             J=2*K-1-M-IP
             SU2=SU2+DN(K)*PM(J)
             IF (J.GT.M.AND.DABS(SU2-SW).LT.DABS(SU2)*EPS) GO TO 65
60           SW=SU2
65        SD2=0.0D0
          DO 70 K=KI,NM3
             J=2*K-1-M-IP
             SD2=SD2+DN(K)*PD(J)
             IF (J.GT.M.AND.DABS(SD2-SW).LT.DABS(SD2)*EPS) GO TO 75
70           SW=SD2
75      SUM=SU0+SU1+SU2
        SDM=SD0+SD1+SD2
        R2F=SUM/CK2
        R2D=SDM/CK2
        RETURN
        END


	(C)
        PI=3.141592653589793D0
        A0=A
        A1=A
        X0=X
        HG=0.0D0
C       DLMF 13.2.39
        IF (X.LT.0.0D0) THEN
           A=B-A
           A0=A
           X=DABS(X)
        ENDIF
        NL=0
        LA=0
        IF (A.GE.2.0D0) THEN
C       preparing terms for DLMF 13.3.1
           NL=1
           LA=INT(A)
           A=A-LA-1.0D0
        ENDIF
        Y0=0.0D0
        Y1=0.0D0
        DO 30 N=0,NL
           IF (A0.GE.2.0D0) A=A+1.0D0
           IF (X.LE.30.0D0+DABS(B).OR.A.LT.0.0D0) THEN
              HG=1.0D0
              RG=1.0D0
              DO 15 J=1,500
                 RG=RG*(A+J-1.0D0)/(J*(B+J-1.0D0))*X
                 HG=HG+RG
                 IF (HG.NE.0D0.AND.DABS(RG/HG).LT.1.0D-15) THEN
C       DLMF 13.2.39 (cf. above)
                    IF (X0.LT.0.0D0) HG=HG*EXP(X0)
                    GO TO 25
                 ENDIF
15            CONTINUE
           ELSE
C       DLMF 13.7.2 & 13.2.4, SUM2 corresponds to first sum
              Y=0.0D0
              CALL CGAMA(A,Y,0,TAR,TAI)
              CTA = DCMPLX(TAR, TAI)
              Y=0.0D0
              CALL CGAMA(B,Y,0,TBR,TBI)
              CTB = DCMPLX(TBR, TBI)
              XG=B-A
              Y=0.0D0
              CALL CGAMA(XG,Y,0,TBAR,TBAI)
              CTBA = DCMPLX(TBAR, TBAI)
              SUM1=1.0D0
              SUM2=1.0D0
              R1=1.0D0
              R2=1.0D0
              DO 20 I=1,8
                 R1=-R1*(A+I-1.0D0)*(A-B+I)/(X*I)
                 R2=-R2*(B-A+I-1.0D0)*(A-I)/(X*I)
                 SUM1=SUM1+R1
20               SUM2=SUM2+R2
              IF (X0.GE.0.0D0) THEN
                 HG1=DBLE(EXP(CTB-CTBA))*X**(-A)*DCOS(PI*A)*SUM1
                 HG2=DBLE(EXP(CTB-CTA+X))*X**(A-B)*SUM2
              ELSE
C       DLMF 13.2.39 (cf. above)
                 HG1=DBLE(EXP(CTB-CTBA+X0))*X**(-A)*DCOS(PI*A)*SUM1
                 HG2=DBLE(EXP(CTB-CTA))*X**(A-B)*SUM2
              ENDIF
              HG=HG1+HG2
           ENDIF
25         IF (N.EQ.0) Y0=HG
           IF (N.EQ.1) Y1=HG
30      CONTINUE
        IF (A0.GE.2.0D0) THEN
C       DLMF 13.3.1
           DO 35 I=1,LA-1
              HG=((2.0D0*A-B+X)*Y1+(B-A)*Y0)/A
              Y0=Y1
              Y1=HG
35            A=A+1.0D0
        ENDIF
        A=A1
        X=X0
        RETURN
        END

C       **********************************

	(C)
        REG=1.0D0
        IF (M+NM.GT.80) REG=1.0D-200
        NM2=2*NM+M
        CX=C*X
        CALL SPHY(NM2,CX,NM2,SY,DY)
        R0=REG
        DO 10 J=1,2*M+IP
10         R0=R0*J
        R=R0
        SUC=R*DF(1)
        SW=0.0D0
        DO 15 K=2,NM
           R=R*(M+K-1.0)*(M+K+IP-1.5D0)/(K-1.0D0)/(K+IP-1.5D0)
           SUC=SUC+R*DF(K)
           IF (K.GT.NM1.AND.DABS(SUC-SW).LT.DABS(SUC)*EPS) GO TO 20
15         SW=SUC
20      A0=(1.0D0-KD/(X*X))**(0.5D0*M)/SUC
        R2F=0.0D0
        EPS1=0.0D0
        NP=0
        DO 50 K=1,NM
           L=2*K+M-N-2+IP
           LG=1
           IF (L.NE.4*INT(L/4)) LG=-1
           IF (K.EQ.1) THEN
              R=R0
           ELSE
              R=R*(M+K-1.0)*(M+K+IP-1.5D0)/(K-1.0D0)/(K+IP-1.5D0)
           ENDIF
           NP=M+2*K-2+IP
           R2F=R2F+LG*R*(DF(K)*SY(NP))
           EPS1=DABS(R2F-SW)
           IF (K.GT.NM1.AND.EPS1.LT.DABS(R2F)*EPS) GO TO 55
50         SW=R2F
55      ID1=INT(LOG10(EPS1/DABS(R2F)+EPS))
        R2F=R2F*A0
        IF (NP.GE.NM2) THEN
           ID=10
           RETURN
        ENDIF
        B0=KD*M/X**3.0D0/(1.0-KD/(X*X))*R2F
        SUD=0.0D0
        EPS2=0.0D0
        DO 60 K=1,NM
           L=2*K+M-N-2+IP
           LG=1
           IF (L.NE.4*INT(L/4)) LG=-1
           IF (K.EQ.1) THEN
              R=R0
           ELSE
              R=R*(M+K-1.0)*(M+K+IP-1.5D0)/(K-1.0D0)/(K+IP-1.5D0)
           ENDIF
           NP=M+2*K-2+IP
           SUD=SUD+LG*R*(DF(K)*DY(NP))
           EPS2=DABS(SUD-SW)
           IF (K.GT.NM1.AND.EPS2.LT.DABS(SUD)*EPS) GO TO 65
60         SW=SUD
65      R2D=B0+A0*C*SUD
        ID2=INT(LOG10(EPS2/DABS(SUD)+EPS))
        ID=MAX(ID1,ID2)
        RETURN
        END


	(C)
        REG=1.0D0
        IF (M+NM.GT.80) REG=1.0D-200
        R0=REG
        DO 10 J=1,2*M+IP
10         R0=R0*J
        R=R0
        SUC=R*DF(1)
        SW=0.0D0
        DO 15 K=2,NM
           R=R*(M+K-1.0)*(M+K+IP-1.5D0)/(K-1.0D0)/(K+IP-1.5D0)
           SUC=SUC+R*DF(K)
           IF (K.GT.NM1.AND.DABS(SUC-SW).LT.DABS(SUC)*EPS) GO TO 20
15         SW=SUC
20      CONTINUE
        IF (X.EQ.0.0) THEN
           CALL SCKB(M,N,C,DF,CK)
           SUM=0.0D0
           SW1=0.0D0
           DO 25 J=1,NM
              SUM=SUM+CK(J)
              IF (DABS(SUM-SW1).LT.DABS(SUM)*EPS) GO TO 30
25            SW1=SUM
30         R1=1.0D0
           DO 35 J=1,(N+M+IP)/2
35            R1=R1*(J+0.5D0*(N+M+IP))
           R2=1.0D0
           DO 40 J=1,M
40            R2=2.0D0*C*R2*J
           R3=1.0D0
           DO 45 J=1,(N-M-IP)/2
45            R3=R3*J
           SA0=(2.0*(M+IP)+1.0)*R1/(2.0**N*C**IP*R2*R3)
           IF (IP.EQ.0) THEN
              R1F=SUM/(SA0*SUC)*DF(1)*REG
              R1D=0.0D0
           ELSE IF (IP.EQ.1) THEN
              R1F=0.0D0
              R1D=SUM/(SA0*SUC)*DF(1)*REG
           ENDIF
           RETURN
        ENDIF
        CX=C*X
        NM2=2*NM+M
        CALL SPHJ(NM2,CX,NM2,SJ,DJ)
        A0=(1.0D0-KD/(X*X))**(0.5D0*M)/SUC
        R1F=0.0D0
        SW=0.0D0
        LG=0
        DO 50 K=1,NM
           L=2*K+M-N-2+IP
           IF (L.EQ.4*INT(L/4)) LG=1
           IF (L.NE.4*INT(L/4)) LG=-1
           IF (K.EQ.1) THEN
              R=R0
           ELSE
              R=R*(M+K-1.0)*(M+K+IP-1.5D0)/(K-1.0D0)/(K+IP-1.5D0)
           ENDIF
           NP=M+2*K-2+IP
           R1F=R1F+LG*R*DF(K)*SJ(NP)
           IF (K.GT.NM1.AND.DABS(R1F-SW).LT.DABS(R1F)*EPS) GO TO 55
50         SW=R1F
55      R1F=R1F*A0
        B0=KD*M/X**3.0D0/(1.0-KD/(X*X))*R1F
        SUD=0.0D0
        SW=0.0D0
        DO 60 K=1,NM
           L=2*K+M-N-2+IP
           IF (L.EQ.4*INT(L/4)) LG=1
           IF (L.NE.4*INT(L/4)) LG=-1
           IF (K.EQ.1) THEN
              R=R0
           ELSE
              R=R*(M+K-1.0)*(M+K+IP-1.5D0)/(K-1.0D0)/(K+IP-1.5D0)
           ENDIF
           NP=M+2*K-2+IP
           SUD=SUD+LG*R*DF(K)*DJ(NP)
           IF (K.GT.NM1.AND.DABS(SUD-SW).LT.DABS(SUD)*EPS) GO TO 65
60         SW=SUD
65      R1D=B0+A0*C*SUD
        RETURN
        END


	(c)
        return cls(c.swapaxes(0, 1), xi, extrapolate)

    @staticmethod
    def _construct_from_derivatives(xa, xb, ya, yb):

	(c)
        return np.exp(c

    def _logpdf(self, x, c):

	(c)
        self.ds.append(d)

        if len(self.cs) > c.size:

	(C)
        self.outputs = self.C.shape

    @property
    def D(self):

	(c)
        self.t = np.ascontiguousarray(t, dtype=np.float64)

        if extrapolate == 'periodic':

	(c)
        self.x = np.ascontiguousarray(x, dtype=np.float64)

        if extrapolate is None:

	(c)
        U

        assert_equal(info, 1)
        # python-dbg 3.5.2 runs cause trouble with the commented assertions.
        # assert_equal(r_c, n - r)
        single_atol = 1000 * np.finfo(np.float32).eps
        double_atol = 1000 * np.finfo(np.float64).eps
        atol = single_atol if ind in [0, 2] else double_atol
        assert_allclose(A[piv-1][:, piv-1], U.conj().T @ U, rtol=0., atol=atol)

	(c)
        U

        assert_equal(info, 1)
        # python-dbg 3.5.2 runs cause trouble with the following assertion.
        # assert_equal(r_c, n - r)
        single_atol = 1000 * np.finfo(np.float32).eps
        double_atol = 1000 * np.finfo(np.float64).eps
        atol = single_atol if ind in [0, 2] else double_atol
        assert_allclose(A[piv-1][:, piv-1], U.conj().T @ U, rtol=0., atol=atol)

	(c)
        var = sc.polygamma(1, c)
        skewness = sc.polygamma(2, c) / np.power(var, 1.5)
        excess_kurtosis = sc.polygamma(3, c) / (var*var)
        return mean, var, skewness, excess_kurtosis


	(c)
        x = np.asarray(x)

        if c.ndim < 2:

	(c)
      d1 = abs(d)
c  test whether p(x) is a third degree polynomial.
      if(max(b1,c1,d1).lt.a1*ovfl) go to 300
c  test whether p(x) is a second degree polynomial.
      if(max(c1,d1).lt.b1*ovfl) go to 200
c  test whether p(x) is a first degree polynomial.
      if(d1.lt.c1*ovfl) go to 100
c  p(x) is a constant function.
      n = 0
      go to 800
c  p(x) is a first degree polynomial.
 100  n = 1
      x(1) = -d/c
      go to 500
c  p(x) is a second degree polynomial.
 200  disc = c*c-four*b*d
      n = 0
      if(disc.lt.0.) go to 800
      n = 2
      u = sqrt(disc)
      b1 = b+b
      x(1) = (-c+u)/b1
      x(2) = (-c-u)/b1
      go to 500
c  p(x) is a third degree polynomial.
 300  b1 = b/a*e3
      c1 = c/a
      d1 = d/a
      q = c1*e3-b1*b1
      r = b1*b1*b1+(d1-b1*c1)*half
      disc = q*q*q+r*r
      if(disc.gt.0.) go to 400
      u = sqrt(abs(q))
      if(r.lt.0.) u = -u
      p3 = atan2(sqrt(-disc),abs(r))*e3
      u2 = u+u
      n = 3
      x(1) = -u2*cos(p3)-b1
      x(2) = u2*cos(pi3-p3)-b1
      x(3) = u2*cos(pi3+p3)-b1
      go to 500
 400  u = sqrt(disc)
      u1 = -r+u
      u2 = -r-u
      n = 1
      x(1) = sign(abs(u1)**e3,u1)+sign(abs(u2)**e3,u2)-b1
c  apply a newton iteration to improve the accuracy of the roots.
 500  do 700 i=1,n
        y = x(i)
        f = ((a*y+b)*y+c)*y+d
        df = (three*a*y+two*b)*y+c
        step = 0.
        if(abs(f).lt.abs(df)*tent) step = f/df
        x(i) = y-step
 700  continue
 800  return

	(c)
      i = n
      do 80 j=2,n
         i1 = i
         i = i-1
         fac = g(i)
         do 70 k=i1,n
            fac = fac-g(k)*a(k,i)
  70     continue
         g(i) = fac
  80  continue
      return

	(c)
      j = 1.0D0
      s = 0.0D0
   30 j = j + 1.0D0
      t = t* (x-bx/j)
      aj = t/j
      s = s + aj
      IF (abs(aj).GT.tol) GO TO 30
C
      apser = -a* (c+s)
      RETURN


	(c)
      v = b
      IF (u.LE.v) GO TO 110
      betaln = (((-0.5D0*dlog(b)+e)+w)-v) - u
      RETURN

  110 betaln = (((-0.5D0*dlog(b)+e)+w)-u) - v
      RETURN

	(c)
    #     sf = mpmath.gammainc(c, mpmath.exp(x), mpmath.inf,
    #                          regularized=True)
    @pytest.mark.parametrize('x, c, sf', [(4, 1.5, 1.6341528919488565e-23),
                                          (6, 100, 8.23836829202024e-74)])
    def test_sf_isf(self, x, c, sf):

	(c)
    # > result
    #               risk ratio with 95% C.I.
    # Predictor  estimate     lower    upper
    #   Exposed1 1.000000        NA       NA
    #   Exposed2 1.333333 0.7347317 2.419628
    #
    # The last line is the result that we want.
    assert_allclose(rr, 4/3)
    assert_allclose((ci.low, ci.high), (0.7347317, 2.419628), rtol=5e-7)

	(c)
    # Compute Hessian
    H = lagr_hess(x, v)

    # Update state parameters
    optimality = norm(c + A.T.dot(v), np.inf)
    constr_violation = norm(b, np.inf) if len(b) > 0 else 0
    cg_info = {'niter': 0, 'stop_cond': 0,
               'hits_boundary': False}

	(C)
    # improve precision of result
    for i in range(2):

	(c)
    0.5345224838248487

    In the example above, it can be seen that this works the same as
    `scipy.stats.variation` except 'stats.mstats.variation' ignores masked
    array elements.

	(c)
    >>> u
    array([[-0.21196618,  0.39378971],
           [-0.42393237,  0.78757942],
           [ 0.88054056,  0.4739708 ]])
    >>> p
    array([[ 1.23116567,  1.93241587],
           [ 1.93241587,  4.84930602]])
    >>> u.dot(p)   # Verify the decomposition.
    array([[ 0.5,  1.5],
           [ 1. ,  3. ],
           [ 2. ,  4. ]])
    >>> u.T.dot(u)  # The columns of u are orthonormal.
    array([[  1.00000000e+00,  -1.26363763e-16],
           [ -1.26363763e-16,   1.00000000e+00]])


	(C)
    assert len(row_ind) == 0
    assert len(col_ind) == 0


	(C)
    assert_array_equal(row_ind, np.arange(n))
    assert_array_equal(col_ind, np.arange(n))


	(c)
    else:
        b1 = asarray(b)

	(c)
    else:
        r = np.asarray(r).ravel()
    # Form a 1-D array of values to be used in the matrix, containing `c`
    # followed by r[1:].
    vals = np.concatenate((c, r[1:]))
    # Stride on concatenated array to get hankel matrix
    out_shp = len(c), len(r)
    n = vals.strides[0]
    return as_strided(vals, shape=out_shp, strides=(n, n)).copy()


	(c)
    if c.ndim
        raise ValueError("The factored matrix c is not square.")
    if c.shape[1] != b1.shape[0]:

	(c)
    if c.ndim < 2:
        onedim = True

	(c)
    if c_flag is not None:
        if "extra_compiler_args" not in build_info:

	(c)
    integrality =
	(C)
    MD, ND = _shape_or_none(D)

    p = _choice_not_none(MA, MB, NC)
    q = _choice_not_none(NB, ND)
    r = _choice_not_none(MC, MD)
    if p is None or q is None or r is None:

	(c)
    n = c_ext.strides
    return as_strided(c_ext[L-1:], shape=(L, L), strides=(-n, n)).copy()


	(c)
    nc = _get_axis_len("c", c, caxis)
    b = np.atleast_1d(b)
    nb = _get_axis_len("b", b, baxis)
    if nc != nb:

	(c)
    options =
    res = linprog(c=c, A_eq=A, b_eq=b, bounds=bounds, method='highs',
                  options=options, integrality=integrality)
    msg = "Time limit reached. (HiGHS Status 13:"
    assert res.status == 1
    assert res.message.startswith(msg)

    options = {"maxiter": 10}
    res = linprog(c=c, A_eq=A, b_eq=b, bounds=bounds, method='highs-ds',
                  options=options)
    msg = "Iteration limit reached. (HiGHS Status 14:"
    assert res.status == 1
    assert res.message.startswith(msg)

	(c)
    return BSpline.construct_fast(t, c, k, axis=axis)

	(c)
    return out


	(c)
    slack = b_ub - A_ub.dot(x)
    # report residuals of ORIGINAL EQ constraints
    con = b_eq - A_eq.dot(x)

    return x, fun, slack, con

	(c)
    T_ncols = len(r)
    p = T_nrows + T_ncols - 1  # equivalent to len(embedded_col)

    embedded_col = np.concatenate((c, r[-1:0:-1]))

	(C)
 *	     equed =
 *	   If A->Stype = SLU_NR:

	(C)
 *	     equed =
 *
 *         If options->RowPerm = LargeDiag_MC64, MC64 is used to scale and permute
 *            the matrix to an I-matrix, that is A is modified as follows:

	(C)
 *               in order to obtain the solution to the original system.
 *
 *   FERR    (output) double*, dimension (B->ncol)   
 *           The estimated forward error bound for each solution vector   
 *           X(j) (the j-th column of the solution matrix X).   
 *           If XTRUE is the true solution corresponding to X(j), FERR(j) 
 *           is an estimated upper bound for the magnitude of the largest 
 *           element in (X(j) - XTRUE) divided by the magnitude of the   
 *           largest element in X(j).  The estimate is as reliable as   
 *           the estimate for RCOND, and is almost always a slight   
 *           overestimate of the true error.

	(C)
 *               in order to obtain the solution to the original system.
 *
 *   FERR    (output) float*, dimension (B->ncol)   
 *           The estimated forward error bound for each solution vector   
 *           X(j) (the j-th column of the solution matrix X).   
 *           If XTRUE is the true solution corresponding to X(j), FERR(j) 
 *           is an estimated upper bound for the magnitude of the largest 
 *           element in (X(j) - XTRUE) divided by the magnitude of the   
 *           largest element in X(j).  The estimate is as reliable as   
 *           the estimate for RCOND, and is almost always a slight   
 *           overestimate of the true error.

	(C)
 *           equed =
 *
 * perm_c  (input/output) int*
 *	   If A->Stype = SLU_NC, Column permutation vector of size A->ncol,
 *         which defines the permutation matrix Pc; perm_c[i] = j means
 *         column i of A is in position j in A*Pc.
 *         On exit, perm_c may be overwritten by the product of the input
 *         perm_c and a permutation that postorders the elimination tree
 *         of Pc'*A'*A*Pc; perm_c is not changed if the elimination tree
 *         is already in postorder.

	(C)
 *           equed =
 *         If A->Stype = SLU_NR:

	(c)
# endif // defined(BOOST_ASIO_HAS_NOEXCEPT)
#endif // !defined(BOOST_ASIO_NOEXCEPT_IF)

// Support automatic type deduction on compilers known to support it.
#if !defined(BOOST_ASIO_HAS_DECLTYPE)
# if !defined(BOOST_ASIO_DISABLE_DECLTYPE)
#  if defined(__clang__)
#   if __has_feature(__cxx_decltype__)
#    define BOOST_ASIO_HAS_DECLTYPE 1
#   endif // __has_feature(__cxx_decltype__)
#  endif // defined(__clang__)
#  if defined(__GNUC__)
#   if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 8)) || (__GNUC__ > 4)
#    if (__cplusplus >= 201103) || defined(__GXX_EXPERIMENTAL_CXX0X__)
#     define BOOST_ASIO_HAS_DECLTYPE 1
#    endif // (__cplusplus >= 201103) || defined(__GXX_EXPERIMENTAL_CXX0X__)
#   endif // ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 8)) || (__GNUC__ > 4)
#  endif // defined(__GNUC__)
#  if defined(BOOST_ASIO_MSVC)
#   if (_MSC_VER >= 1800)
#    define BOOST_ASIO_HAS_DECLTYPE 1
#   endif // (_MSC_VER >= 1800)
#  endif // defined(BOOST_ASIO_MSVC)
# endif // !defined(BOOST_ASIO_DISABLE_DECLTYPE)
#endif // !defined(BOOST_ASIO_HAS_DECLTYPE)

	(C)
#else
    #define BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER_WCHAR(C)   \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(wchar_t, C)        \
    /**/
#endif

	(C)
#endif

#define BOOST_SERIALIZATION_COLLECTION_TRAITS(C)                     \
    namespace boost { namespace serialization {                      \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(bool, C)            \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(char, C)            \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(signed char, C)     \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(unsigned char, C)   \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(signed int, C)      \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(unsigned int, C)    \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(signed long, C)     \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(unsigned long, C)   \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(float, C)           \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(double, C)          \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(unsigned short, C)  \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(signed short, C)    \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER_INT64(C)            \
    BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER_WCHAR(C)            \

	(c)          ((c)
#endif

#include "pyfpe.h"

	(c)          (c)
#else

	(c)  # Number of parameters
    m, = np.shape(b)  # Number of constraints

    # Initial Values
    x = Y.dot(-b)
    r = Z.dot(H.dot(x) + c)
    g = Z.dot(r)
    p = -g

	(c)  # Number of parameters
    m, = np.shape(b)  # Number of constraints

    # Karush-Kuhn-Tucker matrix of coefficients.
    # Defined as in Nocedal/Wright "Numerical
    # Optimization" p.452 in Eq. (16.4).
    kkt_matrix = csc_matrix(bmat([[H, A.T], [A, None]]))
    # Vector of coefficients.
    kkt_vec = np.hstack([-c, -b])

	(C) (if options->Trans = NOTRANS) or diag(R)
 *	     (if options->Trans = TRANS or CONJ) so that it solves the
 *	     original system before equilibration.
 *
 *	1.9. options for ILU only
 *	     1) If options->RowPerm = LargeDiag_MC64, MC64 is used to scale and
 *		permute the matrix to an I-matrix, that is Pr*Dr*A*Dc has
 *		entries of modulus 1 on the diagonal and off-diagonal entries
 *		of modulus at most 1. If MC64 fails, dgsequ() is used to
 *		equilibrate the system.
 *              ( Default: LargeDiag_MC64 )
 *	     2) options->ILU_DropTol = tau is the threshold for dropping.
 *		For L, it is used directly (for the whole row in a supernode);
 *		For U, ||A(:,i)||_oo * tau is used as the threshold
 *	        for the	i-th column.
 *		If a secondary dropping rule is required, tau will
 *	        also be used to compute the second threshold.
 *              ( Default: 1e-4 )
 *	     3) options->ILU_FillFactor = gamma, used as the initial guess
 *		of memory growth.
 *		If a secondary dropping rule is required, it will also
 *              be used as an upper bound of the memory.
 *              ( Default: 10 )
 *	     4) options->ILU_DropRule specifies the dropping rule.
 *		Option	      Meaning

	(C) (if options->Trans = NOTRANS) or diag(R)
 *	     (if options->Trans = TRANS or CONJ) so that it solves the
 *	     original system before equilibration.
 *
 *   See supermatrix.h for the definition of 'SuperMatrix' structure.

	(C) (if options->Trans = NOTRANS) or diag(R)
 *           (if options->Trans = TRANS or CONJ) so that it solves the
 *           original system before equilibration.
 *
 *   2. If A is stored row-wise (A->Stype = SLU_NR), apply the above algorithm
 *      to the transpose of A:
 *

	(C) (if options->Trans = NOTRANS) or diag(R)
 *           (if options->Trans = TRANS or CONJ) so that it solves the
 *           original system before equilibration.
 *
 *   See supermatrix.h for the definition of 'SuperMatrix' structure.

	(c) * (xy_y = 1. / sin(d));
                        xy_y *= d * sin(lp_lat);
                    } else
                        xy_x = xy_y = 0.;
                    if (this->m_proj_parm.mode == mode_winkel_tripel) { /* Winkel Tripel */
                        xy_x = (xy_x + lp_lon * this->m_proj_parm.cosphi1) * 0.5;
                        xy_y = (xy_y + lp_lat) * 0.5;
                    }

	(C) * (y = 1. / sin(D));
                            y *= D * sin(lp_lat);
                        } else
                            x = y = 0.;
                        if (this->m_proj_parm.mode == mode_winkel_tripel) { /* Winkel Tripel */
                            x = (x + lp_lon * this->m_proj_parm.cosphi1) * 0.5;
                            y = (y + lp_lat) * 0.5;
                        }
                    /* if too far from given values of x,y, repeat with better approximation of phi,lam */
                    } while (((fabs(xy_x-x) > epsilon) || (fabs(xy_y-y) > epsilon)) && (round++ < max_round));

	(c) * f;
            }

	(c) * gamma(d) / (gamma(p)
	    goto hypdon;
	}
	if (d <= -1.0)
	    goto hypdiv;

	(c) * multiplier;
                    multiplier *= base;
                }

	(c) * self.rtol
                    c = u + adj
                if not self.ab[0] < c < self.ab[1]:

	(C) *inv(diag(C))
 *	     options->Trans = TRANS:

	(C) *inv(diag(C))
 *           options->Trans = TRANS:

	(c) / (gamma(a)
		goto psidon;
	    }

	(c) / (Lanczos::lanczos_sum_expG_scaled(a)

      T l1 = log(cgh / bgh) * (b - 0.5f);
      T l2 = log(x * cgh / agh) * a;

	(c) / (Lanczos::lanczos_sum_expG_scaled(a)
   result *= prefix;
   // combine with the leftover terms from the Lanczos approximation:

	(c) / phi
        c = chi[~mask]
        coef = [-358/65690625, 0, -94/1010625, 0, 2/2625, 0, 6/175, 0, 0.4]
        mu2[~mask] = np.polyval(coef, c)
        return m, mu2 - m**2, None, None


	(c) 1995 Ernst Stadlober, Institut fuer Statistitk, TU Graz
 *****************************************************************************/

	(c) 2000  W. Hoermann
 *****************************************************************************/

	(C) 2003, C. Bond. All rights reserved.
/*                                                                           */
/* See http:// www.crbond.com/                                               */

	(c) 2007  W. Hoermann
 *****************************************************************************/

	(c) 2008 Gordon Woodhull

	(C) 2015-2020 Niall Douglas <http://www.nedproductions.biz/> (7 commits)
File Created: August 2015


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (1 commit)
File Created: June 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (10 commits)
File Created: June 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (10 commits)
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (11 commits)
File Created: July 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (12 commits)
File Created: Nov 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (12 commits)
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (13 commits)
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (14 commits)
File Created: June 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (2 commits)
File Created: June 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (2 commits)
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (20 commits)
File Created: July 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (20 commits)
File Created: June 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (21 commits)
File Created: July 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (225 commits)


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (24 commits)
File Created: June 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (25 commits)
File Created: July 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (3 commits)
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (4 commits)


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (6 commits)
File Created: Aug 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (6 commits)
File Created: June 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (6 commits)
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (6 commits) and Andrzej Krzemie
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (7 commits)
File Created: June 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (7 commits)
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (8 commits)
File Created: June 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (8 commits)
File Created: Oct 2017


	(C) 2017-2020 Niall Douglas <http://www.nedproductions.biz/> (9 commits)
File Created: Oct 2017


	(C) 2018 - 2019 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: Feb 2018


	(C) 2018 - 2020 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: Feb 2018


	(C) 2018 - 2020 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: May 2020


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (11 commits)
File Created: Apr 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (17 commits)
File Created: Apr 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (3 commits)
File Created: March 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (4 commits)
File Created: Mar 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (4 commits)
File Created: Sep 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: Aug 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: Feb 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: Jun 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: June 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: Sep 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (6 commits)
File Created: March 2018


	(C) 2018-2020 Niall Douglas <http://www.nedproductions.biz/> (8 commits)
File Created: March 2018


	(C) 2019-2020 Niall Douglas <http://www.nedproductions.biz/> (12 commits)
File Created: Oct 2019


	(C) 2020 Niall Douglas <http://www.nedproductions.biz/> (11 commits)
File Created: Jan 2020


	(C) 2020 Niall Douglas <http://www.nedproductions.biz/> (5 commits)
File Created: Jan 2020


	(c) < 1e-7, (c

	(c) < 1e-7, np.pi
                         sc.expm1(sc.gammaln(2.0*c+1.0)-2*sc.gammaln(c + 1.0))/c**2.0)
        eps = 1e-14

	(c) < 32;
}

	(c) < eps, -_EULER, sc.expm1(sc.gammaln(c

        m = np.where(c < -1.0, np.nan, -gamk)
        v = np.where(c < -0.5, np.nan, g1**2.0*gam2k)

	(c) < tolerance)
                                lamt -= tolerance;
                            xlam = (par.one_es * tanphi * this->m_proj_parm.sa + sin(lamt) * this->m_proj_parm.ca) / c;
                            lamdp = atan(xlam) + fac;
                            if (fabs(fabs(sav) - fabs(lamdp)) < tolerance)
                                break;
                            sav = lamdp;
                        }
                        if (!l || ++nn >= 3 || (lamdp > this->m_proj_parm.rlm && lamdp < this->m_proj_parm.rlm2))
                            break;
                        if (lamdp <= this->m_proj_parm.rlm)
                            lampp = two_and_half_pi;
                        else if (lamdp >= this->m_proj_parm.rlm2)
                            lampp = half_pi;

	(c) > 0:
            j = js[c[0]]
            # in a previous commit, the previous line was changed to choose
            # index j corresponding with the maximum dot product.
            # While this avoided issues with almost
            # singular matrices, it slowed the routine in most NETLIB tests.
            # I think this is because these columns were denser than the
            # first column with nonzero dot product (c[0]).
            # It would be nice to have a heuristic that balances sparsity with
            # high dot product, but I don't think it's worth the time to
            # develop one right now. Bartels-Golub update is a much higher
            # priority.
            b[i] = j  # replace artificial column
        else:

	(C) ? DD_C_NAN : DD_C_ZERO);
    }
    if (dd_is_zero(C)) {
        return (dd_is_negative(A) ? DD_C_NEGINF : DD_C_INF);

	(C) ? DD_C_ZERO : DD_C_NEGINF);
    }
    if (dd_is_zero(C)) {
        return DD_C_INF;

	(C) @f
    //!
    //! @param g
    //! A monadic function with signature @f$ A \to M(B) @f$.

	(C) @f
    //! @f$ g : A \to M(B) @f$, the signature is
    //! @f$
    //!     \mathtt{monadic\_compose}
    //!         : (B \to M(C)) \times (A \to M(B)) \to (A \to M(C))
    //! @f$.
    //!
    //! @param f

	(C) @f
    //! `Applicative` `F` is also a `Monad`, such functions taking normal
    //! values but returning monadic values are called _monadic functions_.
    //! To compose them, we obviously can't use normal function composition,
    //! since the domains and codomains of `f` and `g` do not match properly.
    //! Instead, we'll need a new operator -- let's call it `monadic_compose`:

	(C) @f
    //! must be satisfied:

	(C) @f
    //! we could simply set
    //! @code
    //!     monadic_compose(g, f)(x) = joker(transform(f(x), g))
    //! @endcode
    //!
    //! and we would be happy. It turns out that `flatten` is precisely this
    //! joker. Now, we'll want our joker to satisfy some properties to make
    //! sure this composition is associative, just like our normal composition
    //! was. These properties are slightly cumbersome to specify, so we won't
    //! do it here. Also, we'll need some kind of neutral element for the
    //! composition. This neutral element can't be the usual identity function,
    //! because it does not have the right type: our neutral element needs to
    //! be a function of type @f$ X \to F(X) @f$ but the identity function has
    //! type @f$ X \to X @f$. It is now the right time to observe that `lift`
    //! from `Applicative` has exactly the right signature, and so we'll take
    //! this for our neutral element.

	(C) ACM, 2011. http://doi.acm.org/10.1145/1916461.1916469
//
// Note that there are no "noexcept" specifications on the functions in this file: there are too many
// calls to lexical_cast (and similar) to easily analyse the code for correctness. So until compilers
// can detect noexcept misuse at compile time, the only realistic option is to simply not use it here.

	(C) ACM, 2011. http://doi.acm.org/10.1145/1916461.1916469
//
// This file has no include guards or namespaces - it's expanded inline inside default_ops.hpp

	(C) ACM, 2011. http://doi.acm.org/10.1145/1916461.1916469
//
// This header contains implementation details for estimating the zeros
// of cylindrical Bessel and Neumann functions on the positive real axis.
// Support is included for both positive as well as negative order.
// Various methods are used to estimate the roots. These include
// empirical curve fitting and McMahon's asymptotic approximation
// for small order, uniform asymptotic expansion for large order,
// and iteration and root interlacing for negative order.

	(C) ACM, 2011. http://doi.acm.org/10.1145/1916461.1916469
//
// This header contains implementation details for estimating the zeros
// of the Airy functions airy_ai and airy_bi on the negative real axis.

	(C) and B by diag(R)

	(c) Any expression implicitly convertible to the single type
    //      of a one-argument T's constructor.
    //  (d*) Weak compilers (BCB) might also resolved Expr as optional<T> and optional<U>
    //       even though explicit overloads are present for these.
    // Depending on the above some T ctor is called.
    // Can throw if the resolved T ctor throws.
#ifndef BOOST_OPTIONAL_DETAIL_NO_RVALUE_REFERENCES


	(C) as c:
            del c


	(C) as c:
            pass


	(C) as c:
    ...     # do something
    ...     del c

    >>> class C:

	(C) as c:
    ...     # do something
    ...     del c
    Traceback (most recent call last):
        ...

	(c) BOOST_ASIO_CORO_REENTER(c)
#endif

#ifndef yield
# define yield BOOST_ASIO_CORO_YIELD
#endif

	(c) BOOST_ASIO_OS_DEF_
# define BOOST_ASIO_OS_DEF_AF_UNSPEC 0
# define BOOST_ASIO_OS_DEF_AF_INET 2
# define BOOST_ASIO_OS_DEF_AF_INET6 23
# define BOOST_ASIO_OS_DEF_SOCK_STREAM 1
# define BOOST_ASIO_OS_DEF_SOCK_DGRAM 2
# define BOOST_ASIO_OS_DEF_SOCK_RAW 3
# define BOOST_ASIO_OS_DEF_SOCK_SEQPACKET 5
# define BOOST_ASIO_OS_DEF_IPPROTO_IP 0
# define BOOST_ASIO_OS_DEF_IPPROTO_IPV6 41
# define BOOST_ASIO_OS_DEF_IPPROTO_TCP 6
# define BOOST_ASIO_OS_DEF_IPPROTO_UDP 17
# define BOOST_ASIO_OS_DEF_IPPROTO_ICMP 1
# define BOOST_ASIO_OS_DEF_IPPROTO_ICMPV6 58
# define BOOST_ASIO_OS_DEF_FIONBIO 1
# define BOOST_ASIO_OS_DEF_FIONREAD 2
# define BOOST_ASIO_OS_DEF_INADDR_ANY 0
# define BOOST_ASIO_OS_DEF_MSG_OOB 0x1
# define BOOST_ASIO_OS_DEF_MSG_PEEK 0x2
# define BOOST_ASIO_OS_DEF_MSG_DONTROUTE 0x4
# define BOOST_ASIO_OS_DEF_MSG_EOR 0 // Not supported.
# define BOOST_ASIO_OS_DEF_SHUT_RD 0x0
# define BOOST_ASIO_OS_DEF_SHUT_WR 0x1
# define BOOST_ASIO_OS_DEF_SHUT_RDWR 0x2
# define BOOST_ASIO_OS_DEF_SOMAXCONN 0x7fffffff
# define BOOST_ASIO_OS_DEF_SOL_SOCKET 0xffff
# define BOOST_ASIO_OS_DEF_SO_BROADCAST 0x20
# define BOOST_ASIO_OS_DEF_SO_DEBUG 0x1
# define BOOST_ASIO_OS_DEF_SO_DONTROUTE 0x10
# define BOOST_ASIO_OS_DEF_SO_KEEPALIVE 0x8
# define BOOST_ASIO_OS_DEF_SO_LINGER 0x80
# define BOOST_ASIO_OS_DEF_SO_OOBINLINE 0x100
# define BOOST_ASIO_OS_DEF_SO_SNDBUF 0x1001
# define BOOST_ASIO_OS_DEF_SO_RCVBUF 0x1002
# define BOOST_ASIO_OS_DEF_SO_SNDLOWAT 0x1003
# define BOOST_ASIO_OS_DEF_SO_RCVLOWAT 0x1004
# define BOOST_ASIO_OS_DEF_SO_REUSEADDR 0x4
# define BOOST_ASIO_OS_DEF_TCP_NODELAY 0x1
# define BOOST_ASIO_OS_DEF_IP_MULTICAST_IF 2
# define BOOST_ASIO_OS_DEF_IP_MULTICAST_TTL 3
# define BOOST_ASIO_OS_DEF_IP_MULTICAST_LOOP 4
# define BOOST_ASIO_OS_DEF_IP_ADD_MEMBERSHIP 5
# define BOOST_ASIO_OS_DEF_IP_DROP_MEMBERSHIP 6
# define BOOST_ASIO_OS_DEF_IP_TTL 7
# define BOOST_ASIO_OS_DEF_IPV6_UNICAST_HOPS 4
# define BOOST_ASIO_OS_DEF_IPV6_MULTICAST_IF 9
# define BOOST_ASIO_OS_DEF_IPV6_MULTICAST_HOPS 10
# define BOOST_ASIO_OS_DEF_IPV6_MULTICAST_LOOP 11
# define BOOST_ASIO_OS_DEF_IPV6_JOIN_GROUP 12
# define BOOST_ASIO_OS_DEF_IPV6_LEAVE_GROUP 13
# define BOOST_ASIO_OS_DEF_AI_CANONNAME 0x2
# define BOOST_ASIO_OS_DEF_AI_PASSIVE 0x1
# define BOOST_ASIO_OS_DEF_AI_NUMERICHOST 0x4
# define BOOST_ASIO_OS_DEF_AI_NUMERICSERV 0x8
# define BOOST_ASIO_OS_DEF_AI_V4MAPPED 0x800
# define BOOST_ASIO_OS_DEF_AI_ALL 0x100
# define BOOST_ASIO_OS_DEF_AI_ADDRCONFIG 0x400
#elif defined(BOOST_ASIO_WINDOWS) || defined(__CYGWIN__)
typedef SOCKET socket_type;
const SOCKET invalid_socket = INVALID_SOCKET;
const int socket_error_retval = SOCKET_ERROR;
const int max_addr_v4_str_len = 256;
const int max_addr_v6_str_len = 256;
typedef sockaddr socket_addr_type;
typedef in_addr in4_addr_type;
typedef ip_mreq in4_mreq_type;
typedef sockaddr_in sockaddr_in4_type;
# if defined(BOOST_ASIO_HAS_OLD_WIN_SDK)
typedef in6_addr_emulation in6_addr_type;
typedef ipv6_mreq_emulation in6_mreq_type;
typedef sockaddr_in6_emulation sockaddr_in6_type;
typedef sockaddr_storage_emulation sockaddr_storage_type;
typedef addrinfo_emulation addrinfo_type;
# else
typedef in6_addr in6_addr_type;
typedef ipv6_mreq in6_mreq_type;
typedef sockaddr_in6 sockaddr_in6_type;
typedef sockaddr_storage sockaddr_storage_type;
typedef addrinfo addrinfo_type;
# endif
typedef ::linger linger_type;
typedef unsigned long ioctl_arg_type;
typedef u_long u_long_type;
typedef u_short u_short_type;
typedef int signed_size_type;
struct sockaddr_un_type { u_short sun_family; char sun_path[108]; };

	(c) BOOST_ASIO_OS_DEF_
# define BOOST_ASIO_OS_DEF_AF_UNSPEC AF_UNSPEC
# define BOOST_ASIO_OS_DEF_AF_INET AF_INET
# define BOOST_ASIO_OS_DEF_AF_INET6 AF_INET6
# define BOOST_ASIO_OS_DEF_SOCK_STREAM SOCK_STREAM
# define BOOST_ASIO_OS_DEF_SOCK_DGRAM SOCK_DGRAM
# define BOOST_ASIO_OS_DEF_SOCK_RAW SOCK_RAW
# define BOOST_ASIO_OS_DEF_SOCK_SEQPACKET SOCK_SEQPACKET
# define BOOST_ASIO_OS_DEF_IPPROTO_IP IPPROTO_IP
# define BOOST_ASIO_OS_DEF_IPPROTO_IPV6 IPPROTO_IPV6
# define BOOST_ASIO_OS_DEF_IPPROTO_TCP IPPROTO_TCP
# define BOOST_ASIO_OS_DEF_IPPROTO_UDP IPPROTO_UDP
# define BOOST_ASIO_OS_DEF_IPPROTO_ICMP IPPROTO_ICMP
# define BOOST_ASIO_OS_DEF_IPPROTO_ICMPV6 IPPROTO_ICMPV6
# define BOOST_ASIO_OS_DEF_FIONBIO FIONBIO
# define BOOST_ASIO_OS_DEF_FIONREAD FIONREAD
# define BOOST_ASIO_OS_DEF_INADDR_ANY INADDR_ANY
# define BOOST_ASIO_OS_DEF_MSG_OOB MSG_OOB
# define BOOST_ASIO_OS_DEF_MSG_PEEK MSG_PEEK
# define BOOST_ASIO_OS_DEF_MSG_DONTROUTE MSG_DONTROUTE
# define BOOST_ASIO_OS_DEF_MSG_EOR 0 // Not supported on Windows.
# define BOOST_ASIO_OS_DEF_SHUT_RD SD_RECEIVE
# define BOOST_ASIO_OS_DEF_SHUT_WR SD_SEND
# define BOOST_ASIO_OS_DEF_SHUT_RDWR SD_BOTH
# define BOOST_ASIO_OS_DEF_SOMAXCONN SOMAXCONN
# define BOOST_ASIO_OS_DEF_SOL_SOCKET SOL_SOCKET
# define BOOST_ASIO_OS_DEF_SO_BROADCAST SO_BROADCAST
# define BOOST_ASIO_OS_DEF_SO_DEBUG SO_DEBUG
# define BOOST_ASIO_OS_DEF_SO_DONTROUTE SO_DONTROUTE
# define BOOST_ASIO_OS_DEF_SO_KEEPALIVE SO_KEEPALIVE
# define BOOST_ASIO_OS_DEF_SO_LINGER SO_LINGER
# define BOOST_ASIO_OS_DEF_SO_OOBINLINE SO_OOBINLINE
# define BOOST_ASIO_OS_DEF_SO_SNDBUF SO_SNDBUF
# define BOOST_ASIO_OS_DEF_SO_RCVBUF SO_RCVBUF
# define BOOST_ASIO_OS_DEF_SO_SNDLOWAT SO_SNDLOWAT
# define BOOST_ASIO_OS_DEF_SO_RCVLOWAT SO_RCVLOWAT
# define BOOST_ASIO_OS_DEF_SO_REUSEADDR SO_REUSEADDR
# define BOOST_ASIO_OS_DEF_TCP_NODELAY TCP_NODELAY
# define BOOST_ASIO_OS_DEF_IP_MULTICAST_IF IP_MULTICAST_IF
# define BOOST_ASIO_OS_DEF_IP_MULTICAST_TTL IP_MULTICAST_TTL
# define BOOST_ASIO_OS_DEF_IP_MULTICAST_LOOP IP_MULTICAST_LOOP
# define BOOST_ASIO_OS_DEF_IP_ADD_MEMBERSHIP IP_ADD_MEMBERSHIP
# define BOOST_ASIO_OS_DEF_IP_DROP_MEMBERSHIP IP_DROP_MEMBERSHIP
# define BOOST_ASIO_OS_DEF_IP_TTL IP_TTL
# define BOOST_ASIO_OS_DEF_IPV6_UNICAST_HOPS IPV6_UNICAST_HOPS
# define BOOST_ASIO_OS_DEF_IPV6_MULTICAST_IF IPV6_MULTICAST_IF
# define BOOST_ASIO_OS_DEF_IPV6_MULTICAST_HOPS IPV6_MULTICAST_HOPS
# define BOOST_ASIO_OS_DEF_IPV6_MULTICAST_LOOP IPV6_MULTICAST_LOOP
# define BOOST_ASIO_OS_DEF_IPV6_JOIN_GROUP IPV6_JOIN_GROUP
# define BOOST_ASIO_OS_DEF_IPV6_LEAVE_GROUP IPV6_LEAVE_GROUP
# define BOOST_ASIO_OS_DEF_AI_CANONNAME AI_CANONNAME
# define BOOST_ASIO_OS_DEF_AI_PASSIVE AI_PASSIVE
# define BOOST_ASIO_OS_DEF_AI_NUMERICHOST AI_NUMERICHOST
# if defined(AI_NUMERICSERV)
#  define BOOST_ASIO_OS_DEF_AI_NUMERICSERV AI_NUMERICSERV
# else
#  define BOOST_ASIO_OS_DEF_AI_NUMERICSERV 0
# endif
# if defined(AI_V4MAPPED)
#  define BOOST_ASIO_OS_DEF_AI_V4MAPPED AI_V4MAPPED
# else
#  define BOOST_ASIO_OS_DEF_AI_V4MAPPED 0
# endif
# if defined(AI_ALL)
#  define BOOST_ASIO_OS_DEF_AI_ALL AI_ALL
# else
#  define BOOST_ASIO_OS_DEF_AI_ALL 0
# endif
# if defined(AI_ADDRCONFIG)
#  define BOOST_ASIO_OS_DEF_AI_ADDRCONFIG AI_ADDRCONFIG
# else
#  define BOOST_ASIO_OS_DEF_AI_ADDRCONFIG 0
# endif
# if defined (_WIN32_WINNT)
const int max_iov_len = 64;
# else
const int max_iov_len = 16;
# endif
#else
typedef int socket_type;
const int invalid_socket = -1;
const int socket_error_retval = -1;
const int max_addr_v4_str_len = INET_ADDRSTRLEN;
#if defined(INET6_ADDRSTRLEN)
const int max_addr_v6_str_len = INET6_ADDRSTRLEN + 1 + IF_NAMESIZE;
#else // defined(INET6_ADDRSTRLEN)
const int max_addr_v6_str_len = 256;
#endif // defined(INET6_ADDRSTRLEN)
typedef sockaddr socket_addr_type;
typedef in_addr in4_addr_type;
# if defined(__hpux)
// HP-UX doesn't provide ip_mreq when _XOPEN_SOURCE_EXTENDED is defined.
struct in4_mreq_type
{
  struct in_addr imr_multiaddr;
  struct in_addr imr_interface;

	(c) BOOST_ASIO_OS_DEF_
# define BOOST_ASIO_OS_DEF_AF_UNSPEC AF_UNSPEC
# define BOOST_ASIO_OS_DEF_AF_INET AF_INET
# define BOOST_ASIO_OS_DEF_AF_INET6 AF_INET6
# define BOOST_ASIO_OS_DEF_SOCK_STREAM SOCK_STREAM
# define BOOST_ASIO_OS_DEF_SOCK_DGRAM SOCK_DGRAM
# define BOOST_ASIO_OS_DEF_SOCK_RAW SOCK_RAW
# define BOOST_ASIO_OS_DEF_SOCK_SEQPACKET SOCK_SEQPACKET
# define BOOST_ASIO_OS_DEF_IPPROTO_IP IPPROTO_IP
# define BOOST_ASIO_OS_DEF_IPPROTO_IPV6 IPPROTO_IPV6
# define BOOST_ASIO_OS_DEF_IPPROTO_TCP IPPROTO_TCP
# define BOOST_ASIO_OS_DEF_IPPROTO_UDP IPPROTO_UDP
# define BOOST_ASIO_OS_DEF_IPPROTO_ICMP IPPROTO_ICMP
# define BOOST_ASIO_OS_DEF_IPPROTO_ICMPV6 IPPROTO_ICMPV6
# define BOOST_ASIO_OS_DEF_FIONBIO FIONBIO
# define BOOST_ASIO_OS_DEF_FIONREAD FIONREAD
# define BOOST_ASIO_OS_DEF_INADDR_ANY INADDR_ANY
# define BOOST_ASIO_OS_DEF_MSG_OOB MSG_OOB
# define BOOST_ASIO_OS_DEF_MSG_PEEK MSG_PEEK
# define BOOST_ASIO_OS_DEF_MSG_DONTROUTE MSG_DONTROUTE
# define BOOST_ASIO_OS_DEF_MSG_EOR MSG_EOR
# define BOOST_ASIO_OS_DEF_SHUT_RD SHUT_RD
# define BOOST_ASIO_OS_DEF_SHUT_WR SHUT_WR
# define BOOST_ASIO_OS_DEF_SHUT_RDWR SHUT_RDWR
# define BOOST_ASIO_OS_DEF_SOMAXCONN SOMAXCONN
# define BOOST_ASIO_OS_DEF_SOL_SOCKET SOL_SOCKET
# define BOOST_ASIO_OS_DEF_SO_BROADCAST SO_BROADCAST
# define BOOST_ASIO_OS_DEF_SO_DEBUG SO_DEBUG
# define BOOST_ASIO_OS_DEF_SO_DONTROUTE SO_DONTROUTE
# define BOOST_ASIO_OS_DEF_SO_KEEPALIVE SO_KEEPALIVE
# define BOOST_ASIO_OS_DEF_SO_LINGER SO_LINGER
# define BOOST_ASIO_OS_DEF_SO_OOBINLINE SO_OOBINLINE
# define BOOST_ASIO_OS_DEF_SO_SNDBUF SO_SNDBUF
# define BOOST_ASIO_OS_DEF_SO_RCVBUF SO_RCVBUF
# define BOOST_ASIO_OS_DEF_SO_SNDLOWAT SO_SNDLOWAT
# define BOOST_ASIO_OS_DEF_SO_RCVLOWAT SO_RCVLOWAT
# define BOOST_ASIO_OS_DEF_SO_REUSEADDR SO_REUSEADDR
# define BOOST_ASIO_OS_DEF_TCP_NODELAY TCP_NODELAY
# define BOOST_ASIO_OS_DEF_IP_MULTICAST_IF IP_MULTICAST_IF
# define BOOST_ASIO_OS_DEF_IP_MULTICAST_TTL IP_MULTICAST_TTL
# define BOOST_ASIO_OS_DEF_IP_MULTICAST_LOOP IP_MULTICAST_LOOP
# define BOOST_ASIO_OS_DEF_IP_ADD_MEMBERSHIP IP_ADD_MEMBERSHIP
# define BOOST_ASIO_OS_DEF_IP_DROP_MEMBERSHIP IP_DROP_MEMBERSHIP
# define BOOST_ASIO_OS_DEF_IP_TTL IP_TTL
# define BOOST_ASIO_OS_DEF_IPV6_UNICAST_HOPS IPV6_UNICAST_HOPS
# define BOOST_ASIO_OS_DEF_IPV6_MULTICAST_IF IPV6_MULTICAST_IF
# define BOOST_ASIO_OS_DEF_IPV6_MULTICAST_HOPS IPV6_MULTICAST_HOPS
# define BOOST_ASIO_OS_DEF_IPV6_MULTICAST_LOOP IPV6_MULTICAST_LOOP
# define BOOST_ASIO_OS_DEF_IPV6_JOIN_GROUP IPV6_JOIN_GROUP
# define BOOST_ASIO_OS_DEF_IPV6_LEAVE_GROUP IPV6_LEAVE_GROUP
# define BOOST_ASIO_OS_DEF_AI_CANONNAME AI_CANONNAME
# define BOOST_ASIO_OS_DEF_AI_PASSIVE AI_PASSIVE
# define BOOST_ASIO_OS_DEF_AI_NUMERICHOST AI_NUMERICHOST
# if defined(AI_NUMERICSERV)
#  define BOOST_ASIO_OS_DEF_AI_NUMERICSERV AI_NUMERICSERV
# else
#  define BOOST_ASIO_OS_DEF_AI_NUMERICSERV 0
# endif
// Note: QNX Neutrino 6.3 defines AI_V4MAPPED, AI_ALL and AI_ADDRCONFIG but
// does not implement them. Therefore they are specifically excluded here.
# if defined(AI_V4MAPPED) && !defined(__QNXNTO__)
#  define BOOST_ASIO_OS_DEF_AI_V4MAPPED AI_V4MAPPED
# else
#  define BOOST_ASIO_OS_DEF_AI_V4MAPPED 0
# endif
# if defined(AI_ALL) && !defined(__QNXNTO__)
#  define BOOST_ASIO_OS_DEF_AI_ALL AI_ALL
# else
#  define BOOST_ASIO_OS_DEF_AI_ALL 0
# endif
# if defined(AI_ADDRCONFIG) && !defined(__QNXNTO__)
#  define BOOST_ASIO_OS_DEF_AI_ADDRCONFIG AI_ADDRCONFIG
# else
#  define BOOST_ASIO_OS_DEF_AI_ADDRCONFIG 0
# endif
# if defined(IOV_MAX)
const int max_iov_len = IOV_MAX;
# else
// POSIX platforms are not required to define IOV_MAX.
const int max_iov_len = 16;
# endif
#endif
const int custom_socket_option_level = 0xA5100000;
const int enable_connection_aborted_option = 1;
const int always_fail_option = 2;

} // namespace detail
} // namespace asio
} // namespace boost

	(c) BOOST_HOF_PP_PRIMITIVE_CAT(BOOST_HOF_PP_IIF_, c)
#define BOOST_HOF_PP_IIF_0(t, ...) __VA_ARGS__
#define BOOST_HOF_PP_IIF_1(t, ...) t

#define BOOST_HOF_PP_WALL(...) __VA_ARGS__

	(c) BOOST_HOF_PP_PRIMITIVE_CAT(BOOST_HOF_PP_RAIL_IIF_, c)
#define BOOST_HOF_PP_RAIL_IIF_0(t, ...) __VA_ARGS__
#define BOOST_HOF_PP_RAIL_IIF_1(t, ...) t

#define BOOST_HOF_PP_RAIL(macro) \
    BOOST_HOF_PP_RAIL_IIF(BOOST_HOF_PP_IS_PAREN(BOOST_HOF_PP_WALL(())))( \
        BOOST_HOF_PP_RAIL_ID BOOST_HOF_PP_OBSTRUCT()()(macro), \
        macro BOOST_HOF_PP_OBSTRUCT() \

	(C) BOOST_MPL_AUX_VALUE_WKND(C)
#else

	(c) BOOST_NOEXCEPT_IF(c)
#  elif defined(__clang__)
#   if __has_feature(__cxx_noexcept__)
#    define BOOST_ASIO_HAS_NOEXCEPT 1
#   endif // __has_feature(__cxx_noexcept__)
#  elif defined(__GNUC__)
#   if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) || (__GNUC__ > 4)
#    if (__cplusplus >= 201103) || defined(__GXX_EXPERIMENTAL_CXX0X__)
#      define BOOST_ASIO_HAS_NOEXCEPT 1
#    endif // (__cplusplus >= 201103) || defined(__GXX_EXPERIMENTAL_CXX0X__)
#   endif // ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) || (__GNUC__ > 4)
#  elif defined(BOOST_ASIO_MSVC)
#   if (_MSC_VER >= 1900)
#    define BOOST_ASIO_HAS_NOEXCEPT 1
#   endif // (_MSC_VER >= 1900)
#  endif // defined(BOOST_ASIO_MSVC)
# endif // !defined(BOOST_ASIO_DISABLE_NOEXCEPT)
# if !defined(BOOST_ASIO_NOEXCEPT)
# endif // !defined(BOOST_ASIO_NOEXCEPT)
# if !defined(BOOST_ASIO_NOEXCEPT_OR_NOTHROW)
# endif // !defined(BOOST_ASIO_NOEXCEPT_OR_NOTHROW)
#endif // !defined(BOOST_ASIO_HAS_NOEXCEPT)
#if !defined(BOOST_ASIO_NOEXCEPT)
# if defined(BOOST_ASIO_HAS_NOEXCEPT)
#  define BOOST_ASIO_NOEXCEPT noexcept(true)
# else // defined(BOOST_ASIO_HAS_NOEXCEPT)
#  define BOOST_ASIO_NOEXCEPT
# endif // defined(BOOST_ASIO_HAS_NOEXCEPT)
#endif // !defined(BOOST_ASIO_NOEXCEPT)
#if !defined(BOOST_ASIO_NOEXCEPT_OR_NOTHROW)
# if defined(BOOST_ASIO_HAS_NOEXCEPT)
#  define BOOST_ASIO_NOEXCEPT_OR_NOTHROW noexcept(true)
# else // defined(BOOST_ASIO_HAS_NOEXCEPT)
#  define BOOST_ASIO_NOEXCEPT_OR_NOTHROW throw()
# endif // defined(BOOST_ASIO_HAS_NOEXCEPT)
#endif // !defined(BOOST_ASIO_NOEXCEPT_OR_NOTHROW)
#if !defined(BOOST_ASIO_NOEXCEPT_IF)
# if defined(BOOST_ASIO_HAS_NOEXCEPT)

	(c) c

	(C) C

	(C) C

#endif

	(C) C
#   define BOOST_MPL_AUX_MSVC_VALUE_WKND(C) \
    ::boost::mpl::aux::value_wknd< C > \
/**/
#endif

	(c) c
#   endif

# endif

	(C) c = span.innerHTML = C;
          if (c.match(/[\u02C6-\u02DC\u00A8]/)) {this.PHTML.acc = -.52}
          else if (c === "\u2192") {this.PHTML.acc = -.15; this.PHTML.vec = true}
        }

	(C) Copyright 2002 Rani Sharoni (rani_sharoni@hotmail.com) and Robert Ramey

	(C) Copyright 2002 Robert Ramey - http://www.rrsd.com .

	(C) Copyright 2002, 2003 Beman Dawes   Boost.Filesystem

	(C) Copyright 2002-2008 Robert Ramey and Joaquin M Lopez Munoz

	(C) Copyright 2002-2008, Fernando Luis Cacciola Carballal.

	(C) Copyright 2002-2009 Robert Ramey - http://www.rrsd.com .

	(C) Copyright 2002-2014 Robert Ramey - http://www.rrsd.com .

	(C) Copyright 2002-2020 Robert Ramey - http://www.rrsd.com .

	(C) Copyright 2002-4 Pavel Vozenilek .

	(C) Copyright 2003-2007 Jonathan Turkanis

	(C) Copyright 2003-4 Pavel Vozenilek and Robert Ramey - http://www.rrsd.com.

	(C) Copyright 2004 Pavel Vozenilek.

	(C) Copyright 2004 Robert Ramey - http://www.rrsd.com .

	(C) Copyright 2004 Robert Ramey and Martin Ecker

	(C) Copyright 2004-2007 Jonathan Turkanis

	(C) Copyright 2004-2009 Robert Ramey, Martin Ecker and Takatoshi Kondo

	(C) Copyright 2005  Matthias Troyer

	(C) Copyright 2005 John Maddock

	(C) Copyright 2005 Matthias Troyer

	(C) Copyright 2005 Matthias Troyer .

	(C) Copyright 2005 Matthias Troyer and Dave Abrahams

	(C) Copyright 2005 Robert Ramey - http://www.rrsd.com

	(C) Copyright 2005 Robert Ramey - http://www.rrsd.com .

	(C) Copyright 2005-2006 Matthias Troyer

	(C) Copyright 2005-2007 Jonathan Turkanis

	(C) Copyright 2005-2007 Matthias Troyer

	(C) Copyright 2005-7 Anthony Williams

	(C) Copyright 2005-8 Anthony Williams

	(C) Copyright 2006 David Abrahams - http://www.boost.org.
// implementation of class export functionality.  This is an alternative to
// "forward declaration" method to provoke instantiation of derived classes
// that are to be serialized through pointers.

#include <utility>
#include <cstddef> // NULL

	(C) Copyright 2006 Douglas Gregor <doug.gregor -at gmail.com>

	(C) Copyright 2006 Douglas Gregor <doug.gregor -at- gmail.com>

	(C) Copyright 2006-7 Anthony Williams

	(C) Copyright 2006-8 Anthony Williams

	(C) Copyright 2007 Andrew Sutton

	(C) Copyright 2007 Anthony Williams

	(C) Copyright 2007 Anthony Williams
#ifndef THREAD_HEAP_ALLOC_HPP
#define THREAD_HEAP_ALLOC_HPP
#include <new>
#include <boost/thread/detail/config.hpp>
#include <boost/thread/win32/thread_primitives.hpp>
#include <stdexcept>
#include <boost/assert.hpp>
#include <boost/throw_exception.hpp>
#include <boost/core/no_exceptions_support.hpp>

#include <boost/winapi/heap_memory.hpp>

	(C) Copyright 2007 David Deakins

	(C) Copyright 2007 Matthias Troyer

	(C) Copyright 2007 Matthias Troyer .

	(C) Copyright 2007 Robert Ramey - http://www.rrsd.com .

	(C) Copyright 2007, 2008 Steven Watanabe, Joseph Gauterin, Niels Dekker

	(C) Copyright 2007-10 Anthony Williams

	(C) Copyright 2007-2009 Andrew Sutton

	(C) Copyright 2007-2010 Anthony Williams

	(C) Copyright 2007-8 Anthony Williams

	(C) Copyright 2007-8 Anthony Williams

#include <boost/thread/detail/config.hpp>

	(C) Copyright 2007-9 Anthony Williams

	(C) Copyright 2007-9 Anthony Williams

#include <list>
#include <boost/thread/csbl/memory/unique_ptr.hpp>
#include <boost/thread/shared_mutex.hpp>
#include <boost/thread/mutex.hpp>
#include <boost/thread/lock_guard.hpp>

	(C) Copyright 2008 Anthony Williams

	(C) Copyright 2008 Anthony Williams
#ifndef THREAD_HEAP_ALLOC_PTHREAD_HPP
#define THREAD_HEAP_ALLOC_PTHREAD_HPP

#include <boost/config/abi_prefix.hpp>

	(C) Copyright 2008 CodeRage, LLC (turkanis at coderage dot com)

	(C) Copyright 2008 Matthias Troyer

	(C) Copyright 2008 Robert Ramey

	(C) Copyright 2008-10 Anthony Williams

	(C) Copyright 2008-2009,2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_STRICT_LOCK_HPP
#define BOOST_THREAD_STRICT_LOCK_HPP

	(C) Copyright 2008-9 Anthony Williams

	(C) Copyright 2009 Eric Bose-Wolf

	(C) Copyright 2009 Robert Ramey - http://www.rrsd.com .

	(C) Copyright 2009-2011 Frederic Bron, Robert Stewart, Steven Watanabe

	(C) Copyright 2009-2011 Frederic Bron.

	(C) Copyright 2009-2012 Anthony Williams

	(C) Copyright 2009-2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_LOCK_TRAITS_HPP
#define BOOST_THREAD_LOCK_TRAITS_HPP

	(C) Copyright 2010 Daniel James

	(C) Copyright 2010 Just Software Solutions Ltd http://www.justsoftwaresolutions.co.uk

	(C) Copyright 2010 Robert Ramey

	(C) Copyright 2010 Vicente J. Botet Escriba

	(C) Copyright 2010-2011 Vicente J. Botet Escriba

	(C) Copyright 2011 Vicente J. Botet Escriba

	(C) Copyright 2011,2012,2015 Vicente J. Botet Escriba

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

	(C) Copyright 2011-2012 Vicente J. Botet Escriba


	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_LOCK_ALGORITHMS_HPP
#define BOOST_THREAD_LOCK_ALGORITHMS_HPP

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_LOCK_GUARD_HPP
#define BOOST_THREAD_LOCK_GUARD_HPP

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_LOCK_OPTIONS_HPP
#define BOOST_THREAD_LOCK_OPTIONS_HPP

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_LOCK_TYPES_HPP
#define BOOST_THREAD_LOCK_TYPES_HPP

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_LOCKABLE_TRAITS_HPP
#define BOOST_THREAD_LOCKABLE_TRAITS_HPP

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_LOCKS_HPP
#define BOOST_THREAD_LOCKS_HPP

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_MOVE_HPP
#define BOOST_THREAD_MOVE_HPP

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#include <boost/assert.hpp>
#include <boost/throw_exception.hpp>
#include <pthread.h>
#include <boost/thread/cv_status.hpp>
#include <boost/thread/mutex.hpp>
#include <boost/thread/lock_types.hpp>
#include <boost/thread/thread_time.hpp>
#include <boost/thread/detail/platform_time.hpp>
#include <boost/thread/pthread/pthread_helpers.hpp>

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#include <boost/thread/detail/config.hpp>
#include <boost/predef/platform.h>

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#include <boost/thread/detail/config.hpp>
#include <boost/thread/exceptions.hpp>
#include <boost/thread/lock_guard.hpp>
#include <boost/thread/lock_types.hpp>
#include <boost/thread/mutex.hpp>
#include <boost/thread/pthread/condition_variable_fwd.hpp>
#include <boost/thread/pthread/pthread_helpers.hpp>

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#include <boost/thread/detail/config.hpp>
#include <boost/thread/thread_time.hpp>
#include <boost/thread/win32/thread_primitives.hpp>
#include <boost/thread/win32/thread_heap_alloc.hpp>
#include <boost/thread/detail/platform_time.hpp>

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#include <boost/thread/detail/platform_time.hpp>
#include <boost/thread/pthread/pthread_mutex_scoped_lock.hpp>
#include <boost/thread/pthread/pthread_helpers.hpp>

	(C) Copyright 2011-2012 Vicente J. Botet Escriba

#include <boost/thread/win32/thread_primitives.hpp>
#include <boost/thread/win32/thread_data.hpp>
#include <boost/thread/win32/thread_data.hpp>
#include <boost/thread/win32/interlocked_read.hpp>
#include <boost/thread/cv_status.hpp>
#if defined BOOST_THREAD_USES_DATETIME
#include <boost/thread/xtime.hpp>
#endif
#include <boost/thread/mutex.hpp>
#include <boost/thread/thread_time.hpp>
#include <boost/thread/lock_guard.hpp>
#include <boost/thread/lock_types.hpp>
#include <boost/thread/detail/platform_time.hpp>

	(C) Copyright 2011-2012,2015 Vicente J. Botet Escriba

	(C) Copyright 2011-2012,2017-2018 Vicente J. Botet Escriba

	(C) Copyright 2011-2013 Vicente J. Botet Escriba

	(C) Copyright 2011-2015 Vicente J. Botet Escriba

	(C) Copyright 2011Vicente J. Botet Escriba

	(C) Copyright 2012 Vicente Botet

	(C) Copyright 2012 Vicente J. Botet Escriba

	(C) Copyright 2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_DETAIL_LOCKABLE_WRAPPER_HPP
#define BOOST_THREAD_DETAIL_LOCKABLE_WRAPPER_HPP

	(C) Copyright 2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_LOCK_FACTORIES_HPP
#define BOOST_THREAD_LOCK_FACTORIES_HPP

	(C) Copyright 2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_REVERSE_LOCK_HPP
#define BOOST_THREAD_REVERSE_LOCK_HPP
#include <boost/thread/detail/config.hpp>
#include <boost/thread/detail/move.hpp>
#include <boost/thread/lockable_traits.hpp>
#include <boost/thread/lock_options.hpp>
#include <boost/thread/detail/delete.hpp>

	(C) Copyright 2012 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_SHARED_LOCK_GUARD_HPP
#define BOOST_THREAD_SHARED_LOCK_GUARD_HPP
#include <boost/thread/detail/config.hpp>
//#include <boost/thread/locks.hpp>
#include <boost/thread/lock_options.hpp>
#include <boost/thread/detail/delete.hpp>

	(C) Copyright 2012 Vicente J. Botet Escriba

#include <boost/thread/detail/config.hpp>
#include <boost/thread/detail/delete.hpp>

	(C) Copyright 2012 Vicente J. Botet Escriba

// Based on the Anthony's idea of scoped_thread in CCiA

	(C) Copyright 2012 Vicente J. Botet Escriba

// Based on the Anthony's idea of thread_joiner in CCiA

	(C) Copyright 2013 Andrey Semashev

	(C) Copyright 2013 Ruslan Baratov

	(C) Copyright 2013 Tim Blechmann

	(C) Copyright 2013 Vicente J. Botet Escriba

	(C) Copyright 2013 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_COMPLETION_LATCH_HPP
#define BOOST_THREAD_COMPLETION_LATCH_HPP

	(C) Copyright 2013 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_COUNTER_HPP
#define BOOST_THREAD_COUNTER_HPP

	(C) Copyright 2013 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_LATCH_HPP
#define BOOST_THREAD_LATCH_HPP

	(C) Copyright 2013, 2020 Andrey Semashev
 */

	(C) Copyright 2013,2014 Vicente J. Botet Escriba

	(C) Copyright 2013,2015 Vicente J. Botet Escriba

	(C) Copyright 2014 Jim Bell

	(C) Copyright 2014 Robert Ramey - http://www.rrsd.com .

	(C) Copyright 2014 Vicente J. Botet Escriba

#ifndef BOOST_THREAD_EXCEPTIONAL_PTR_HPP
#define BOOST_THREAD_EXCEPTIONAL_PTR_HPP

	(C) Copyright 2016 Ashish Sadanandan

	(C) Copyright 2016 Raffi Enficiaud.

	(C) Copyright 2017 Andrey Semashev

	(C) Copyright 2020  Robert Ramey

	(C) Copyright Aleksey Gurtovoy 2002 - 2003.

	(C) Copyright Aleksey Gurtovoy 2002.

	(C) Copyright Aleksey Gurtovoy 2003.

	(c) Copyright Andreas Huber Doenni 2002-2005, Eric Niebler 2006

	(C) Copyright Andrew Sutton 2007

	(C) Copyright Andrey Semashev 2017.

	(C) Copyright Anton Bikineev 2014

	(C) Copyright Antony Polukhin 2013.

	(C) Copyright Antony Polukhin 2014.

	(C) Copyright Artyom Beilis 2010.

	(C) Copyright Balint Cserni 2017

	(C) Copyright Beman Dawes 1999-2003. Distributed under the Boost

	(C) Copyright Beman Dawes 1999.

	(C) Copyright Beman Dawes 2000. Distributed under the Boost

	(C) Copyright Beman Dawes 2001 - 2003.

	(C) Copyright Beman Dawes 2001.

	(C) Copyright Beman Dawes 2002

	(C) Copyright Beman Dawes 2002 - 2003.

	(C) Copyright Beman Dawes 2003.

	(C) Copyright Beman Dawes 2006, 2009, 2014

	(C) Copyright Benedek Thaler 2015-2016

	(C) Copyright Bill Kempf 2001.

	(C) Copyright Bill Kempf 2002.

	(C) Copyright Boris Gubenko 2006 - 2007.

	(C) Copyright Boris Gubenko 2007.

	(C) Copyright Boris Rasin 2014.

	(C) Copyright Boris Rasin and Antony Polukhin 2014-2019.

	(C) Copyright Brian Kuhl 2016.

	(C) Copyright Bruno Lalande 2008.

	(C) Copyright Bryce Lelbach 2010

	(C) Copyright Bryce Lelbach 2011

	(C) Copyright Christopher Jefferson 2011.

	(C) Copyright Craig Henderson 2002.

	(C) Copyright Daniel Frey 2002-2017.

	(C) Copyright Daniel Frey and Robert Ramey 2009.

	(C) Copyright Daniel K. O. 2005.

	(C) Copyright Daniel Wallin 2004.

	(C) Copyright Darin Adler 2000

	(C) Copyright Darin Adler 2001

	(C) Copyright Darin Adler 2001 - 2002.

	(C) Copyright Darin Adler 2001.

	(C) Copyright Daryle Walker 2000-2001.

	(C) Copyright Daryle Walker 2001, 2006.

	(C) Copyright Daryle Walker 2001-2002.

	(C) Copyright Daryle Walker 2001.

	(C) Copyright Daryle Walker and Stephen Cleary 2001-2002.

	(C) Copyright Dave Abrahams and Daniel Walker 1999-2003.

	(C) Copyright Dave Abrahams and Daryle Walker 2001. Distributed under the Boost

	(C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes,

	(C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes,
//      Howard Hinnant and John Maddock 2000, 2010. 

	(C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes,
//      Howard Hinnant and John Maddock 2000. 

	(C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes, Howard

	(C) Copyright David Abrahams 2000.

	(C) Copyright David Abrahams 2001 - 2002.

	(C) Copyright David Abrahams 2001, Howard Hinnant 2001.

	(C) Copyright David Abrahams 2001.

	(C) Copyright David Abrahams 2002 - 2003.

	(C) Copyright David Abrahams 2002.

	(C) Copyright David Abrahams 2003.

	(C) Copyright David Abrahams 2004.

	(C) Copyright David Abrahams Steve Cleary, Beman Dawes, Howard

	(C) Copyright David Abrahams, Jeremy Siek, Daryle Walker 1999-2001.

	(C) Copyright David Abrahams, Vicente Botet 2009.

	(C) Copyright Douglas Gregor 2001.

	(C) Copyright Douglas Gregor 2002.

	(C) Copyright Douglas Gregor 2010

	(C) Copyright Dustin Spicuzza 2009.

	(C) Copyright Edward Diener 2011,2012

	(C) Copyright Edward Diener 2011,2012,2013

	(C) Copyright Edward Diener 2011,2012,2019

	(C) Copyright Edward Diener 2011,2013.

	(C) Copyright Edward Diener 2011,2014.

	(C) Copyright Edward Diener 2011-2015

	(C) Copyright Edward Diener 2011-2015,2019

	(C) Copyright Edward Diener 2011-2020.

	(C) Copyright Edward Diener 2011.

	(C) Copyright Edward Diener 2012

	(C) Copyright Edward Diener 2012,2013

	(C) Copyright Edward Diener 2012,2013,2019

	(C) Copyright Edward Diener 2013.

	(C) Copyright Edward Diener 2014,2019.

	(C) Copyright Edward Diener 2014.

	(C) Copyright Edward Diener 2015

	(C) Copyright Edward Diener 2015.

	(C) Copyright Edward Diener 2016.

	(C) Copyright Edward Diener 2019

	(C) Copyright Edward Diener 2019.

	(C) Copyright Edward Diener 2020

	(C) Copyright Edward Diener 2020.

	(C) Copyright Eric Ford

	(C) Copyright Eric Ford 2001

	(C) Copyright Eric Friedman 2002-2003.

	(C) Copyright Eric Jourdanneau, Joel Falcou 2010

	(C) Copyright Eric Niebler 2004-2005

	(c) Copyright Fernando Luis Cacciola Carballal 2000-2004

	(C) Copyright Francois Faure, iMAGIS-GRAVIR / UJF, 2001.

	(C) Copyright Gennadiy Rozental 2001.

	(C) Copyright Gennaro Prota 2003 - 2004.

	(C) Copyright Gennaro Prota 2003.

	(C) Copyright Greg Colvin and Beman Dawes 1998, 1999.

	(C) Copyright Guillaume Melquiond 2002 - 2003.

	(C) Copyright Guillaume Melquiond 2003.

	(C) Copyright Guillaume Melquiond 2003.

#ifndef BOOST_LEAF_ENABLE_WARNINGS
#   if defined(__clang__)
#       pragma clang system_header
#   elif (__GNUC__*100+__GNUC_MINOR__>301)
#       pragma GCC system_header
#   elif defined(_MSC_VER)
#       pragma warning(push,1)
#   endif
#endif

	(C) Copyright Herve Bronnimann 2004.

	(C) Copyright Howard Hinnant

	(C) Copyright Howard Hinnant 2004

	(C) Copyright Howard Hinnant 2007-2010. Distributed under the Boost

	(C) Copyright Hubert Holin 2001.

	(C) Copyright Hubert Holin 2003-2005.");

	(C) Copyright Hubert Holin 2003.

	(C) Copyright Hubert Holin and Daryle Walker 2001-2002.  Distributed under the Boost

	(C) Copyright Ignacy Gawedzki 2010

	(C) Copyright Ion Gaztanaga          2014-2014

	(C) Copyright Ion Gaztanaga        2006-2014

	(C) Copyright Ion Gaztanaga  2006-2013

	(C) Copyright Ion Gaztanaga  2006-2013.

	(C) Copyright Ion Gaztanaga  2006-2014

	(C) Copyright Ion Gaztanaga  2006-2014.

	(C) Copyright Ion Gaztanaga  2006-2015

	(C) Copyright Ion Gaztanaga  2007-2013

	(C) Copyright Ion Gaztanaga  2007-2014

	(C) Copyright Ion Gaztanaga  2009-2013.

	(C) Copyright Ion Gaztanaga  2010-2013

	(C) Copyright Ion Gaztanaga  2013-2013

	(C) Copyright Ion Gaztanaga  2013-2014

	(C) Copyright Ion Gaztanaga  2014-2014

	(C) Copyright Ion Gaztanaga  2014-2015

	(C) Copyright Ion Gaztanaga  2015-2017.

	(C) Copyright Ion Gaztanaga  2017-2017

	(C) Copyright Ion Gaztanaga 2004-2015. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2005-2012.

	(C) Copyright Ion Gaztanaga 2005-2012. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2005-2013.

	(C) Copyright Ion Gaztanaga 2005-2013. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2005-2014. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2005-2015.

	(C) Copyright Ion Gaztanaga 2005-2015. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2005-2016.

	(C) Copyright Ion Gaztanaga 2005.

	(C) Copyright Ion Gaztanaga 2006-2012

	(C) Copyright Ion Gaztanaga 2006-2012.

	(C) Copyright Ion Gaztanaga 2006-2012. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2006-2014. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2006. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2007-2012.

	(C) Copyright Ion Gaztanaga 2007-2012. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2007-2013

	(C) Copyright Ion Gaztanaga 2007-2013.

	(C) Copyright Ion Gaztanaga 2007-2013. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2007-2014

	(C) Copyright Ion Gaztanaga 2007-2014. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2008

	(C) Copyright Ion Gaztanaga 2008-2012. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2008-2013

	(C) Copyright Ion Gaztanaga 2008-2013. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2008-2015. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2009-2012.

	(C) Copyright Ion Gaztanaga 2009-2012. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2009. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2010-2012.

	(C) Copyright Ion Gaztanaga 2010-2012. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2010-2016.

	(C) Copyright Ion Gaztanaga 2011-2012. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2011-2013. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2011-2014. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2012-2012.

	(C) Copyright Ion Gaztanaga 2012-2012. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2012-2013. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2012-2015.

	(C) Copyright Ion Gaztanaga 2012-2016.

	(C) Copyright Ion Gaztanaga 2013-2013. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2014-2014.

	(C) Copyright Ion Gaztanaga 2014-2014. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2014-2015. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2014-2017. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2014.

	(C) Copyright Ion Gaztanaga 2015-2015.

	(C) Copyright Ion Gaztanaga 2015-2015. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2015-2016.

	(C) Copyright Ion Gaztanaga 2016-2016. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2017-2017.

	(C) Copyright Ion Gaztanaga 2017-2017. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2017-2018.

	(C) Copyright Ion Gaztanaga 2017-2018. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2018-2018. Distributed under the Boost

	(C) Copyright Ion Gaztanaga 2019-2020. Distributed under the Boost

	(C) Copyright Jens Mauer 2001

	(C) Copyright Jens Maurer 2001

	(C) Copyright Jens Maurer 2001 - 2002.

	(C) Copyright Jens Maurer 2001 - 2003.

	(C) Copyright Jens Maurer 2001.

	(C) Copyright Jens Maurer 2002 - 2003.

	(C) Copyright Jens Maurer 2003.

	(C) Copyright Jeremiah Willcock 2004

	(C) Copyright Jeremy Siek    2002.

	(C) Copyright Jeremy Siek    2004.

	(C) Copyright Jeremy Siek 1999-2001.

	(C) Copyright Jeremy Siek 1999.

	(C) Copyright Jeremy Siek 2000.

	(C) Copyright Jeremy Siek 2001.

	(C) Copyright Jeremy Siek 2001. Use, modification and

	(C) Copyright Jeremy Siek 2002.

	(C) Copyright Jeremy Siek 2004

	(C) Copyright Jeremy Siek 2006

	(c) Copyright Jeremy Siek and John R. Bandela 2001.

	(C) Copyright Jeremy Siek, 2001.

	(C) Copyright Jeremy William Murphy 2015.


	(C) Copyright Jeremy William Murphy 2016.

	(C) Copyright Jessica Hamilton 2014.

	(C) Copyright Jim Douglas 2005.

	(C) Copyright Joaquin M Lopez Munoz  2006-2013

	(C) Copyright Joel de Guzman 2003.

	(C) Copyright Johan Rade 2006.

	(C) Copyright John Maddock

	(C) Copyright John maddock 1999.

	(C) Copyright John maddock 1999. Distributed under the Boost

	(C) Copyright John Maddock 2000.

	(C) Copyright John Maddock 2001

	(C) Copyright John Maddock 2001 - 2002.

	(C) Copyright John Maddock 2001 - 2003

	(C) Copyright John Maddock 2001 - 2003.

	(C) Copyright John Maddock 2001-8.

	(C) Copyright John Maddock 2001.

	(C) Copyright John Maddock 2002 - 2003.

	(C) Copyright John Maddock 2002.

	(c) Copyright John Maddock 2003

	(C) Copyright John Maddock 2003.

	(C) Copyright John Maddock 2005-2006.

	(C) Copyright John Maddock 2005.

	(C) Copyright John Maddock 2006, 2015

	(C) Copyright John Maddock 2006-7.

	(C) Copyright John Maddock 2006-8.

	(C) Copyright John Maddock 2006.

	(C) Copyright John Maddock 2007.

	(C) Copyright John Maddock 2008.

	(C) Copyright John Maddock 2010.

	(C) Copyright John Maddock 2011.

	(C) Copyright John Maddock 2015.

	(C) Copyright John Maddock 2017.

	(C) Copyright John Maddock 2018.

	(C) Copyright John Maddock and Steve Cleary 2000.

	(C) Copyright Jonathan Graehl 2004.

	(C) Copyright Jonathan Turkanis 2003.

	(C) Copyright Jonathan Turkanis 2004

	(C) Copyright Jonathan Turkanis 2004-2005.

	(C) Copyright Jonathan Turkanis 2004.

	(C) Copyright Jorge Lodos 2008.

	(c) Copyright Juergen Hunold 2008

	(C) Copyright Kevlin Henney and Dave Abrahams 1999.

	(C) Copyright Lie-Quan Lee 2001.

	(C) Copyright Markus Schoepflin 2002 - 2003.

	(C) Copyright Markus Schoepflin 2005.

	(C) Copyright Markus Schoepflin 2007

	(C) Copyright Martin Wille 2003.

	(C) Copyright Mat Marcus, Jesse Jones and Adobe Systems Inc 2001

	(C) Copyright Matthias Troyerk 2006.

	(C) Copyright Michael Glassford 2004.

	(C) Copyright Microsoft Corporation  2014

	(C) Copyright Milan Svoboda 2008.

	(C) Copyright Nick Thompson 2017.

	(C) Copyright Nick Thompson 2018.

	(C) Copyright Nick Thompson 2019.

	(C) Copyright Nick Thompson 2020.

	(C) Copyright Nicolai M. Josuttis 2001,
// available at http://www.josuttis.com/cppcode/fdstream.html.

#ifndef BOOST_IOSTREAMS_FILE_DESCRIPTOR_HPP_INCLUDED
#define BOOST_IOSTREAMS_FILE_DESCRIPTOR_HPP_INCLUDED

	(C) Copyright Nicolai M. Josuttis 2001.

	(C) Copyright Noel Belcourt 2007.

	(C) Copyright Olaf Krzikalla 2004-2006.

	(C) Copyright Orson Peters  2017.

	(C) Copyright Pablo Halpern 2009. Distributed under the Boost

	(C) Copyright Paul A. Bristow 2006.

	(C) Copyright Paul A. Bristow 2011 (added changesign).

	(C) Copyright Paul A. Bristow 2011 (added tests for changesign)

	(C) Copyright Paul Mensonides 2002-2011.

	(C) Copyright Paul Mensonides 2002.

	(C) Copyright Paul Mensonides 2003.

	(C) Copyright Paul Mensonides 2005.

	(C) Copyright Paul Mensonides 2011.

	(C) Copyright Paul Mensonides 2012.

	(C) Copyright Paul Moore 1999. Permission to copy, use, modify, sell and

	(C) Copyright Peter Dimov 2001

	(C) Copyright Peter Dimov 2001, 2002

	(C) Copyright Peter Dimov 2001, 2002, 2003

	(C) Copyright Peter Dimov 2001.

	(C) Copyright Peter Dimov 2002

	(C) Copyright Peter Dimov 2002.

	(C) Copyright Peter Dimov 2004-2005

	(C) Copyright Peter Dimov 2008.

	(C) Copyright Peter Dimov 2017.

	(C) Copyright Peter Dimov 2019

	(C) Copyright Peter Dimov and Multi Media Ltd. 2001, 2002, 2003

	(C) Copyright R.W. Grosse-Kunstleve 2002.

	(c) Copyright Raffi Enficiaud 2017.

	(C) Copyright Raffi Enficiaud 2018.

	(C) Copyright Raffi Enficiaud 2019.

	(C) Copyright Rani Sharoni 2003-2005.

	(C) Copyright Rani Sharoni 2003.

	(C) Copyright Reimar D
// Based on zstd.hpp by:

	(C) Copyright Rene Rivera 2005.

	(C) Copyright Robert Ramey 2003. Jonathan Turkanis 2004.

	(c) Copyright Robert Ramey 2004

	(C) Copyright Roland Richter 2003.

	(C) Copyright Ronald Garcia 2002. Permission to copy, use, modify, sell and
// distribute this software is granted provided this copyright notice appears
// in all copies. This software is provided "as is" without express or implied
// warranty, and with no claim as to its suitability for any purpose.

// See http://www.boost.org/libs/utility/shared_container_iterator.html for documentation.

	(C) Copyright Runar Undheim, Robert Ramey

	(C) Copyright Samuli-Petrus Korhonen 2017.

	(C) Copyright Stefan Slapeta 2004.

	(C) Copyright Stephen Cleary 2000

	(C) Copyright Stephen Cleary 2000.

	(C) Copyright Steve Cleary, Beman Dawes, Aleksey Gurtovoy, Howard Hinnant

	(C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant

	(C) Copyright Synge Todo 2003.

	(C) Copyright Thomas Claveirole 2010

	(C) Copyright Thomas Witt    2002.

	(C) Copyright Thorsten Ottosen 2002-2003. Use, modification and

	(C) Copyright Thorsten Ottosen 2005

	(C) Copyright Thorsten Ottosen 2005.

	(C) Copyright Tobias Schwinger

	(C) Copyright Toon Knapen    2001.

	(C) Copyright Toon Knapen 2001 - 2003.

	(C) Copyright Toon Knapen 2003.

	(C) Copyright Vicente J. Botet Escriba 20010.

	(C) Copyright Vicente J. Botet Escriba 2008-2009,2012. Distributed under the Boost

	(C) Copyright Vicente J. Botet Escriba 2010.

	(C) Copyright Vicente J. Botet Escriba 2013-2014. Distributed under the Boost

	(C) Copyright Vicente J. Botet Escriba 2013-2017. Distributed under the Boost

	(C) Copyright Vicente J. Botet Escriba 2014-2015. Distributed under the Boost

	(C) Copyright Vicente J. Botet Escriba 2014. Distributed under the Boost

	(C) Copyright Yuriy Krasnoschek 2009.

	(C) David Abrahams 2002.  Distributed under the Boost

	(c) for c in p

	(c) for c in q
#---------------------------------------------------------------------------

	(c) for c in q
print('p =', p)

	(c) if (

#define MIN(a,b) ((a) < (b) ? (a) : (b))
#define MAX(a,b) ((a) > (b) ? (a) : (b))

	(C) if sps.issparse(A) else A
        c = c*C

    b_scale = np.max(np.abs(b)) if b.size > 0 else 1
    if b_scale == 0:

	(C) is not known a priori, a conservative bound is:
 *          nnz(C) <= nnz(A) + nnz(B)
 *
 * Note:

	(c) MSVC 14.0 and later, which are used with Windows SDK 10.
BOOST_WINAPI_IMPORT boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC
CryptReleaseContext(
    boost::winapi::HCRYPTPROV_ hProv,
    boost::winapi::ULONG_PTR_ dwFlags);
#else
BOOST_WINAPI_IMPORT boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC
CryptReleaseContext(
    boost::winapi::HCRYPTPROV_ hProv,
    boost::winapi::DWORD_ dwFlags);
#endif
#endif // BOOST_WINAPI_PARTITION_APP_SYSTEM
}
#endif // !defined( BOOST_USE_WINDOWS_H )

	(C) needs to be assigned for the test
        # to function correctly.  It is assigned to c, but c itself is
        # not referenced in the body of the with, it is only there for
        # the refcount.

	(c) noexcept(c)
# else // defined(BOOST_ASIO_HAS_NOEXCEPT)

	(c) of the bivariate B-spline representation of the
        surface along with the degree of the spline.
    fp : ndarray
        The weighted sum of squared residuals of the spline approximation.
    ier : int
        An integer flag about splrep success. Success is indicated if
        ier<=0. If ier in [1,2,3] an error occurred but was not raised.
        Otherwise an error is raised.
    msg : str
        A message corresponding to the integer flag, ier.

    See Also

	(C) or diag(R))
		for (i = 0; i < A->nrow; ++i) work[i] *= rwork[i];
		
		dgstrs (trans, L, U, perm_c, perm_r, &Bjcol, stat, info);

	(C) or diag(R))
		for (i = 0; i < A->nrow; ++i) work[i] *= rwork[i];
		
		sgstrs (trans, L, U, perm_c, perm_r, &Bjcol, stat, info);

	(C) or diag(R))
		for (i = 0; i < A->nrow; ++i) {
		    cs_mult(&work[i], &work[i], rwork[i]);
		}

	(C) or diag(R))
		for (i = 0; i < A->nrow; ++i) {
		    zd_mult(&work[i], &work[i], rwork[i]);
		}

	(C) or diag(R)).
		if ( notran && colequ )
		    for (i = 0; i < A->ncol; ++i) work[i] *= C[i];
		else if ( !notran && rowequ )
		    for (i = 0; i < A->nrow; ++i) work[i] *= R[i];
		
		dgstrs (transt, L, U, perm_c, perm_r, &Bjcol, stat, info);

	(C) or diag(R)).
		if ( notran && colequ )
		    for (i = 0; i < A->ncol; ++i) work[i] *= C[i];
		else if ( !notran && rowequ )
		    for (i = 0; i < A->nrow; ++i) work[i] *= R[i];
		
		sgstrs (transt, L, U, perm_c, perm_r, &Bjcol, stat, info);

	(C) or diag(R)).
		if ( notran && colequ )
		    for (i = 0; i < A->ncol; ++i) {
		        cs_mult(&work[i], &work[i], C[i]);
	            }
		else if ( !notran && rowequ )
		    for (i = 0; i < A->nrow; ++i) {
		        cs_mult(&work[i], &work[i], R[i]);

	(C) or diag(R)).
		if ( notran && colequ )
		    for (i = 0; i < A->ncol; ++i) {
		        zd_mult(&work[i], &work[i], C[i]);
	            }
		else if ( !notran && rowequ )
		    for (i = 0; i < A->nrow; ++i) {
		        zd_mult(&work[i], &work[i], R[i]);

	(c) or np.iscomplexobj(b)
    dtype = np.complex128 if is_cmplx else np.double
    r, c, b = (np.asarray(i, dtype=dtype) for i in (r, c, b))

    if b.ndim == 1 and not keep_b_shape:

	(c) or np.iscomplexobj(b)):
        x = x.real
    if outaxis != -1:

	(c) Peter Kankowski, 2008
==============================================================================*/
#if !defined(BOOST_SPIRIT_UNICODE_QUERY_FEBRUARY_2_2010)
#define BOOST_SPIRIT_UNICODE_QUERY_FEBRUARY_2_2010

	(C) Rasmus Munk Larsen, Stanford University, 1999, 2004
c


	(C) Rasmus Munk Larsen, Stanford University, 2000
c

      integer nopx, nreorth, nreorthu, nreorthv, ndot, nitref, 
     c     nrestart, nbsvd, nlandim, nsing
      real    tmvopx, tgetu0, tupdmu, tupdnu, tintv, tlanbpro,
     c     treorthu, treorthv, telru, telrv, tbsvd, tnorm2,
     c     tlansvd, tritzvec, trestart, treorth, tdot

	(C) Rasmus Munk Larsen, Stanford University, 2000
c
      subroutine clearstat
      implicit none
      include 'stat.h'
      nopx = 0
      nreorth = 0
      ndot = 0
      nitref = 0
      nbsvd = 0
      nrestart = 0
      tmvopx = 0
      tgetu0 = 0
      tupdmu = 0
      tupdnu = 0
      tintv = 0
      tlanbpro = 0
      treorth = 0      
      treorthu = 0
      treorthv = 0
      telru = 0
      telrv = 0
      tbsvd = 0
      tnorm2 = 0
      tdot = 0
      tlansvd = 0
      nlandim = 0
      nsing = 0
      tritzvec = 0
      trestart = 0
      end


	(C) Rasmus Munk Larsen, Stanford University, 2000, 2004
c
c
c****************************************************************************
c
C This version of MGS is faster on MIPS, UltraSPARC and Itanium.
c Probably because it exposes possibility of using fused multiply-add
c instructions in the inner loop(?).

      subroutine cmgs(n,k,V,ldv,vnew,index)
c     
c     Modified Gram-Schmidt orthogonalization:

	(C) Rasmus Munk Larsen, Stanford University, 2000, 2004
c
c
c****************************************************************************
c
C This version of MGS is faster on MIPS, UltraSPARC and Itanium.
c Probably because it exposes possibility of using fused multiply-add
c instructions in the inner loop(?).

      subroutine dmgs(n,k,V,ldv,vnew,index)
c     
c     Modified Gram-Schmidt orthogonalization:

	(C) Rasmus Munk Larsen, Stanford University, 2000, 2004
c
c
c****************************************************************************
c
C This version of MGS is faster on MIPS, UltraSPARC and Itanium.
c Probably because it exposes possibility of using fused multiply-add
c instructions in the inner loop(?).

      subroutine smgs(n,k,V,ldv,vnew,index)
c     
c     Modified Gram-Schmidt orthogonalization:

	(C) Rasmus Munk Larsen, Stanford University, 2000, 2004
c
c
c****************************************************************************
c
C This version of MGS is faster on MIPS, UltraSPARC and Itanium.
c Probably because it exposes possibility of using fused multiply-add
c instructions in the inner loop(?).

      subroutine zmgs(n,k,V,ldv,vnew,index)
c     
c     Modified Gram-Schmidt orthogonalization:

	(C) Rasmus Munk Larsen, Stanford University, 2000,2004
c


	(C) Rasmus Munk Larsen, Stanford University, 2000,2004
c
      subroutine csafescal(n,alpha,x)
c
c     Scale the vector x by 1/alpha avoiding unnecessary under- and overflow.
c

c     %-----------%
c     | Arguments |
c     %-----------%
      implicit none
      integer n
      real alpha
      complex x(*)

	(C) Rasmus Munk Larsen, Stanford University, 2000,2004
c
      subroutine dsafescal(n,alpha,x)
c
c     Scale the vector x by 1/alpha avoiding unnecessary under- and overflow.
c

c     %-----------%
c     | Arguments |
c     %-----------%
      implicit none
      integer n
      double precision alpha, x(*)

	(C) Rasmus Munk Larsen, Stanford University, 2000,2004
c
      subroutine ssafescal(n,alpha,x)
c
c     Scale the vector x by 1/alpha avoiding unnecessary under- and overflow.
c

c     %-----------%
c     | Arguments |
c     %-----------%
      implicit none
      integer n
      real alpha, x(*)

	(C) Rasmus Munk Larsen, Stanford University, 2000,2004
c
      subroutine zsafescal(n,alpha,x)
c
c     Scale the vector x by 1/alpha avoiding unnecessary under- and overflow.
c

c     %-----------%
c     | Arguments |
c     %-----------%
      implicit none
      integer n
      double precision alpha
      complex*16 x(*)

	(C) Rasmus Munk Larsen, Stanford University, 2004
c


	(C) Rasmus Munk Larsen, Stanford University, 2004
c

      subroutine dbsvdstep(jobu,jobv,m,n,k,sigma,D,E,U,ldu,V,ldv)
c
c     Perform one implicit LQ SVD sweep with shift SIGMA.
c

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

      subroutine dgemm_ovwr(transa,m,n,k,alpha,A,lda,beta,B,ldb,
     c     dwork,ldwork)
c     
c     compute B <- alpha*op(A)*B + beta*B
c
      implicit none
      character*1 transa
      integer m,n,k,lda,ldb,ldwork
      double precision alpha,beta,A(lda,*),B(ldb,*),dwork(ldwork)
      integer i,j,l,blocksize

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

      subroutine sbsvdstep(jobu,jobv,m,n,k,sigma,D,E,U,ldu,V,ldv)
c
c     Perform one implicit LQ SVD sweep with shift SIGMA.
c

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

      subroutine sgemm_ovwr(transa,m,n,k,alpha,A,lda,beta,B,ldb,
     c     work,lwork)
c     
c     compute B <- alpha*op(A)*B + beta*B
c
      implicit none
      character*1 transa
      integer m,n,k,lda,ldb,lwork
      real alpha,beta,A(lda,*),B(ldb,*),work(lwork)
      integer i,j,l,blocksize

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

#ifdef _OPENMP
      double precision function pdnrm2(n, x, incx)
      implicit none
      integer n, incx
      double precision x(*)

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

#ifdef _OPENMP
      double precision function pdznrm2(n, x, incx)
      implicit none
      integer n, incx
      complex*16 x(*)

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

#ifdef _OPENMP
      real function pscnrm2(n, x, incx)
      implicit none
      integer n, incx
      complex x(*)

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

#ifdef _OPENMP
      real function psnrm2(n, x, incx)
      implicit none
      integer n, incx
      real x(*)

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

c
c****************************************************************************
C     This simple version of MGS is faster on Pentium machines.

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

c 
c     DGETU0: Attempt to generate a pseudo-random vector in SPAN(Op(A)) 
c     orthogonal to span(U(:,1:j)), where Op(A) = A if transa='n' and
c     Op(A) = A^H if transa='c'.
c

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

c 
c     DGETU0: Attempt to generate a pseudo-random vector in SPAN(Op(A)) 
c     orthogonal to span(U(:,1:j)), where Op(A) = A if transa='n' and
c     Op(A) = A^T if transa='t'.
c

	(C) Rasmus Munk Larsen, Stanford University, 2004
c

c 
c     SGETU0: Attempt to generate a pseudo-random vector in SPAN(Op(A)) 
c     orthogonal to span(U(:,1:j)), where Op(A) = A if transa='n' and
c     Op(A) = A^T if transa='t'.
c

	(C) Rasmus Munk Larsen, Stanford University, 2004
c     


	(C) Rasmus Munk Larsen, Stanford University, March 2004.

	(C) Rasmus Munk Larsen, Stanford, 1999, 2004
c


	(c) test for convergence

    trlib_int_t *leftmost_timing = NULL;
    #if TRLIB_MEASURE_TIME
        struct timespec verystart, start, end;
        leftmost_timing = timing + 1;
        TRLIB_TIC(verystart)
    #endif
    // sane names for workspace variables
    trlib_int_t *status = iwork;
    trlib_int_t *ii = iwork+1;
    trlib_int_t *pos_def = iwork+2;
    trlib_int_t *interior = iwork+3;
    trlib_int_t *warm_leftmost = iwork+4;
    trlib_int_t *ileftmost = iwork+5;
    trlib_int_t *warm_lam0 = iwork+6;
    trlib_int_t *warm_lam = iwork+7;
    trlib_int_t *lanczos_switch = iwork+8;
    trlib_int_t *exit_tri = iwork+9;
    trlib_int_t *sub_fail_tri = iwork+10;
    trlib_int_t *iter_tri = iwork+11;
    trlib_int_t *iter_last_head = iwork+12;
    trlib_int_t *type_last_head = iwork+13;
    trlib_int_t *nirblk = iwork + 15;
    trlib_int_t *irblk = iwork+16;

	(c) the ring consists of at most two distinct points
        // (d) the ring is not topologically closed
        // (e) the ring has spikes
        // (f) the ring has duplicate points (if AllowDuplicates is false)
        // (g) the boundary of the ring has self-intersections
        // (h) the order of the points is inconsistent with the defined order
        //
        // Note: no need to check if the area is zero. If this is the
        // case, then the ring must have at least two spikes, which is
        // checked by condition (d).

	(c)" (ambiguity resolution)
                                                {
                                                    is >> ch;                                    // get the next lexeme

	(c)" (ambiguity resolution)
                                        {
                                            is >> ch;                                    // get the next lexeme

	(c)" (ambiguity resolution)
                                {
                                    is >> ch;                                    // get the next lexeme

	(c)(boost::forward<K2>(k));
    }

	(c)(boost::forward<V2>(v));
    }

	(C)* BOOST_CONTRACT_DETAIL_NAME1(obj) \
            BOOST_CONTRACT_DETAIL_TVARIADIC_COMMA(arity) \
            BOOST_CONTRACT_DETAIL_TVARIADIC_FPARAMS_Z(z, arity, \
                BOOST_CONTRACT_DETAIL_NAME1(Args), \
                &, \
                BOOST_CONTRACT_DETAIL_NAME1(args) \

	(c)*8))

        #define BOOST_MPL_MULTICHAR_POP_BACK(c)                                                     \

	(c)*8))

        #define BOOST_MPL_MULTICHAR_PUSH_FRONT(c,i)                                                 \

	(C)*B
 *	     options->Trans = CONJ:

	(C)*B
 *	     Whether or not the system will be equilibrated depends on the
 *	     scaling of the matrix A, but if equilibration is used, A is

	(C)*B
 *	     Whether or not the system will be equilibrated depends on the
 *	     scaling of the matrix A, but if equilibration is used, A' is

	(C)*B
 *           options->Trans = CONJ:

	(C)*B
 *           Whether or not the system will be equilibrated depends on the
 *           scaling of the matrix A, but if equilibration is used, A is

	(C)*B
 *           Whether or not the system will be equilibrated depends on the
 *           scaling of the matrix A, but if equilibration is used, A' is

	(C)*B (if options->Trans
 *	     = TRANS or CONJ).
 *
 *	1.2. Permute columns of A, forming A*Pc, where Pc is a permutation
 *	     matrix that usually preserves sparsity.
 *	     For more details of this step, see sp_preorder.c.

	(C)*B (if options->Trans
 *           = TRANS or CONJ).
 *
 *      1.2. Permute columns of A, forming A*Pc, where Pc is a permutation
 *           matrix that usually preserves sparsity.
 *           For more details of this step, see sp_preorder.c.

	(C)*B (if trans =
 *
 *	2.2. Permute columns of transpose(A) (rows of A),
 *	     forming transpose(A)*Pc, where Pc is a permutation matrix that
 *	     usually preserves sparsity.
 *	     For more details of this step, see sp_preorder.c.

	(C)*B (if trans =
 *
 *      2.2. Permute columns of transpose(A) (rows of A),
 *           forming transpose(A)*Pc, where Pc is a permutation matrix that
 *           usually preserves sparsity.
 *           For more details of this step, see sp_preorder.c.

	(C)*B;
 *		 if options->Trans = TRANS or CONJ and equed = 'R' of 'B',
 *		    B is overwritten by diag(R)*B.
 *
 * X	   (output) SuperMatrix*
 *	   X has types: Stype = SLU_DN, Dtype = SLU_C, Mtype = SLU_GE.
 *	   If info = 0 or info = A->ncol+1, X contains the solution matrix
 *	   to the original system of equations. Note that A and B are modified
 *	   on exit if equed is not 'N', and the solution to the equilibrated
 *	   system is inv(diag(C))*X if options->Trans = NOTRANS and
 *	   equed = 'C' or 'B', or inv(diag(R))*X if options->Trans = 'T' or 'C'
 *	   and equed = 'R' or 'B'.

	(C)*B;
 *		 if options->Trans = TRANS or CONJ and equed = 'R' of 'B',
 *		    B is overwritten by diag(R)*B.
 *
 * X	   (output) SuperMatrix*
 *	   X has types: Stype = SLU_DN, Dtype = SLU_D, Mtype = SLU_GE.
 *	   If info = 0 or info = A->ncol+1, X contains the solution matrix
 *	   to the original system of equations. Note that A and B are modified
 *	   on exit if equed is not 'N', and the solution to the equilibrated
 *	   system is inv(diag(C))*X if options->Trans = NOTRANS and
 *	   equed = 'C' or 'B', or inv(diag(R))*X if options->Trans = 'T' or 'C'
 *	   and equed = 'R' or 'B'.

	(C)*B;
 *		 if options->Trans = TRANS or CONJ and equed = 'R' of 'B',
 *		    B is overwritten by diag(R)*B.
 *
 * X	   (output) SuperMatrix*
 *	   X has types: Stype = SLU_DN, Dtype = SLU_S, Mtype = SLU_GE.
 *	   If info = 0 or info = A->ncol+1, X contains the solution matrix
 *	   to the original system of equations. Note that A and B are modified
 *	   on exit if equed is not 'N', and the solution to the equilibrated
 *	   system is inv(diag(C))*X if options->Trans = NOTRANS and
 *	   equed = 'C' or 'B', or inv(diag(R))*X if options->Trans = 'T' or 'C'
 *	   and equed = 'R' or 'B'.

	(C)*B;
 *		 if options->Trans = TRANS or CONJ and equed = 'R' of 'B',
 *		    B is overwritten by diag(R)*B.
 *
 * X	   (output) SuperMatrix*
 *	   X has types: Stype = SLU_DN, Dtype = SLU_Z, Mtype = SLU_GE.
 *	   If info = 0 or info = A->ncol+1, X contains the solution matrix
 *	   to the original system of equations. Note that A and B are modified
 *	   on exit if equed is not 'N', and the solution to the equilibrated
 *	   system is inv(diag(C))*X if options->Trans = NOTRANS and
 *	   equed = 'C' or 'B', or inv(diag(R))*X if options->Trans = 'T' or 'C'
 *	   and equed = 'R' or 'B'.

	(C)*B;
 *	      if A->Stype = SLU_NR:

	(C)*B;
 *               if options->Trans = TRANS or CONJ and equed = 'R' of 'B',
 *                  B is overwritten by diag(R)*B.
 *
 * X       (output) SuperMatrix*
 *         X has types: Stype = SLU_DN, Dtype = SLU_C, Mtype = SLU_GE.
 *         If info = 0 or info = A->ncol+1, X contains the solution matrix
 *         to the original system of equations. Note that A and B are modified
 *         on exit if equed is not 'N', and the solution to the equilibrated
 *         system is inv(diag(C))*X if options->Trans = NOTRANS and
 *         equed = 'C' or 'B', or inv(diag(R))*X if options->Trans = 'T' or 'C'
 *         and equed = 'R' or 'B'.

	(C)*B;
 *               if options->Trans = TRANS or CONJ and equed = 'R' of 'B',
 *                  B is overwritten by diag(R)*B.
 *
 * X       (output) SuperMatrix*
 *         X has types: Stype = SLU_DN, Dtype = SLU_D, Mtype = SLU_GE.
 *         If info = 0 or info = A->ncol+1, X contains the solution matrix
 *         to the original system of equations. Note that A and B are modified
 *         on exit if equed is not 'N', and the solution to the equilibrated
 *         system is inv(diag(C))*X if options->Trans = NOTRANS and
 *         equed = 'C' or 'B', or inv(diag(R))*X if options->Trans = 'T' or 'C'
 *         and equed = 'R' or 'B'.

	(C)*B;
 *               if options->Trans = TRANS or CONJ and equed = 'R' of 'B',
 *                  B is overwritten by diag(R)*B.
 *
 * X       (output) SuperMatrix*
 *         X has types: Stype = SLU_DN, Dtype = SLU_S, Mtype = SLU_GE.
 *         If info = 0 or info = A->ncol+1, X contains the solution matrix
 *         to the original system of equations. Note that A and B are modified
 *         on exit if equed is not 'N', and the solution to the equilibrated
 *         system is inv(diag(C))*X if options->Trans = NOTRANS and
 *         equed = 'C' or 'B', or inv(diag(R))*X if options->Trans = 'T' or 'C'
 *         and equed = 'R' or 'B'.

	(C)*B;
 *               if options->Trans = TRANS or CONJ and equed = 'R' of 'B',
 *                  B is overwritten by diag(R)*B.
 *
 * X       (output) SuperMatrix*
 *         X has types: Stype = SLU_DN, Dtype = SLU_Z, Mtype = SLU_GE.
 *         If info = 0 or info = A->ncol+1, X contains the solution matrix
 *         to the original system of equations. Note that A and B are modified
 *         on exit if equed is not 'N', and the solution to the equilibrated
 *         system is inv(diag(C))*X if options->Trans = NOTRANS and
 *         equed = 'C' or 'B', or inv(diag(R))*X if options->Trans = 'T' or 'C'
 *         and equed = 'R' or 'B'.

	(C)*B;
 *            if A->Stype = SLU_NR:

	(C)*EPS) GO TO 15
10         CONTINUE
15         S=XA*T/3.0D0
           R=S
           DO 20 K=1,50
              R=-.5D0*R*(4.0D0*K-1.0D0)/K/(2.0D0*K+1.0D0)
     &          /(4.0D0*K+3.0D0)*T2
              S=S+R
              IF (DABS(R).LT.DABS(S)*EPS) GO TO 40
20         CONTINUE
        ELSE IF (XA.LT.4.5D0) THEN
           M=INT(42.0+1.75*T)
           SU=0.0D0
           C=0.0D0
           S=0.0D0
           F1=0.0D0
           F0=1.0D-100
           DO 25 K=M,0,-1
              F=(2.0D0*K+3.0D0)*F0/T-F1
              IF (K.EQ.INT(K/2)*2) THEN
                 C=C+F
              ELSE
                 S=S+F
              ENDIF
              SU=SU+(2.0D0*K+1.0D0)*F*F
              F1=F0
25            F0=F
           Q=DSQRT(SU)
           C=C*XA/Q
           S=S*XA/Q
        ELSE
           R=1.0D0
           F=1.0D0
           DO 30 K=1,20
              R=-.25D0*R*(4.0D0*K-1.0D0)*(4.0D0*K-3.0D0)/T2
30            F=F+R
           R=1.0D0/(PX*XA)
           G=R
           DO 35 K=1,12
              R=-.25D0*R*(4.0D0*K+1.0D0)*(4.0D0*K-1.0D0)/T2
35            G=G+R
           T0=T-INT(T/(2.0D0*PI))*2.0D0*PI
           C=.5D0+(F*DSIN(T0)-G*DCOS(T0))/PX
           S=.5D0-(F*DCOS(T0)+G*DSIN(T0))/PX
        ENDIF
40      IF (X.LT.0.0D0) THEN
           C=-C
           S=-S
        ENDIF
        RETURN
        END

C       **********************************

	(c)*high

    The iteration continues with the updated sample until no
    elements are outside the (updated) range.

	(c)*low

	(c)*pow((x), ((c)-1.)) )
#define TI(c,x)  ( pow(-(x), 1./(c)) )

	(c)*R::num/R::den)
    );

	(c)*sc.expn(1, c)


	(c)/((c)

	(c)/((c)

/* logarithm of inverse transformation */
#define logTI(c,x)  ( -log(-(x)) / (c) )

	(c)<<8)

        #define BOOST_MPL_MULTICHAR_POP_BACK(c)                                                     \
          (((1<<((BOOST_MPL_MULTICHAR_LENGTH(c)-1)*8))-1)&(unsigned)(c))

	(c)<<8)

        #define BOOST_MPL_MULTICHAR_PUSH_FRONT(c,i)                                                 \

	(C)> const
}

	(c)>( BOOST_PP_CAT(mpl_assert_arg,counter)::assert_arg() ) \
        ) \

	(c)>>(8

        #define BOOST_MPL_MULTICHAR_PUSH_BACK(c,i)                                                  \

	(c)>>8)

        #define BOOST_MPL_MULTICHAR_POP_FRONT(c)                                                    \
          (((1<<((BOOST_MPL_MULTICHAR_LENGTH(c)-1)*8))-1)&(unsigned)(c))

	(c)>>8)

    #else

	(c)?c:null,l(d)
function Ea(a,b,c,d,e){if(a instanceof E||8==a.b||c&&null===a.b){var f=b.all;if(!f)return e;a=Ga(a);if("*"!=a&&(f=b.getElementsByTagName(a),!f))return e;if(c){for(var g=[],h=0;b=f[h++];)A(b,c,d)&&g.push(b);f=g}for(h=0;b=f[h++];)"*"==a&&"!"==b.tagName||F(e,b);return e}Ha(a,b,c,d,e);return e}
function Fa(a,b,c,d,e){b.getElementsByName&&d&&"name"==c&&!v?(b=b.getElementsByName(d),r(b,function(b){a.a(b)&&F(e,b)})):b.getElementsByClassName&&d&&"class"==c?(b=b.getElementsByClassName(d),r(b,function(b){b.className==d&&a.a(b)&&F(e,b)})):a instanceof G?Ha(a,b,c,d,e):b.getElementsByTagName&&(b=b.getElementsByTagName(a.f()),r(b,function(a){A(a,c,d)&&F(e,a)}));return e}
function Ia(a,b,c,d,e){var f;if((a instanceof E||8==a.b||c&&null===a.b)&&(f=b.childNodes)){var g=Ga(a);if("*"!=g&&(f=ia(f,function(a){return a.tagName&&a.tagName.toLowerCase()==g}),!f))return e;c&&(f=ia(f,function(a){return A(a,c,d)}));r(f,function(a){"*"==g&&("!"==a.tagName||"*"==g&&1!=a.nodeType)||F(e,a)});return e}return Ja(a,b,c,d,e)}function Ja(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)A(b,c,d)&&a.a(b)&&F(e,b);return e}
function Ha(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)A(b,c,d)&&a.a(b)&&F(e,b),Ha(a,b,c,d,e)}function Ga(a){if(a instanceof G){if(8==a.b)return"!";if(null===a.b)return"*"}return a.f()};!ra&&!v||v&&9<=Number(Ba)||ra&&za("1.9.1");v&&za("9");function Ka(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a}
function La(a,b){if(a==b)return 0;if(a.compareDocumentPosition)return a.compareDocumentPosition(b)&2?1:-1;if(v&&!(9<=Number(Ba))){if(9==a.nodeType)return-1;if(9==b.nodeType)return 1}if("sourceIndex"in a||a.parentNode&&"sourceIndex"in a.parentNode){var c=1==a.nodeType,d=1==b.nodeType;if(c&&d)return a.sourceIndex-b.sourceIndex;var e=a.parentNode,f=b.parentNode;return e==f?Ma(a,b):!c&&Ka(e,b)?-1*Na(a,b):!d&&Ka(f,a)?Na(b,a):(c?a.sourceIndex:e.sourceIndex)-(d?b.sourceIndex:f.sourceIndex)}d=9==a.nodeType?
a:a.ownerDocument||a.document;c=d.createRange();c.selectNode(a);c.collapse(!0);d=d.createRange();d.selectNode(b);d.collapse(!0);return c.compareBoundaryPoints(k.Range.START_TO_END,d)}function Na(a,b){var c=a.parentNode;if(c==b)return-1;for(var d=b;d.parentNode!=c;)d=d.parentNode;return Ma(d,a)}function Ma(a,b){for(var c=b;c=c.previousSibling;)if(c==a)return-1;return 1};function C(){this.b=this.a=null;this.l=0}function Oa(a){this.node=a;this.a=this.b=null}function Pa(a,b){if(!a.a)return b;if(!b.a)return a;for(var c=a.a,d=b.a,e=null,f=null,g=0;c&&d;){var f=c.node,h=d.node;f==h||f instanceof x&&h instanceof x&&f.a==h.a?(f=c,c=c.a,d=d.a):0<La(c.node,d.node)?(f=d,d=d.a):(f=c,c=c.a);(f.b=e)?e.a=f:a.a=f;e=f;g++}for(f=c||d;f;)f.b=e,e=e.a=f,g++,f=f.a;a.b=e;a.l=g;return a}function Qa(a,b){var c=new Oa(b);c.a=a.a;a.b?a.a.b=c:a.a=a.b=c;a.a=c;a.l++}
function F(a,b){var c=new Oa(b);c.b=a.b;a.a?a.b.a=c:a.a=a.b=c;a.b=c;a.l++}function Ra(a){return(a=a.a)?a.node:null}function Sa(a){return(a=Ra(a))?z(a):""}function H(a,b){return new Ta(a,!!b)}function Ta(a,b){this.f=a;this.b=(this.c=b)?a.b:a.a;this.a=null}function I(a){var b=a.b;if(null==b)return null;var c=a.a=b;a.b=a.c?b.b:b.a;return c.node};function n(a){this.i=a;this.b=this.g=!1;this.f=null}function J(a){return"\n  "+a.toString().split("\n").join("\n  ")}function Ua(a,b){a.g=b}function Va(a,b){a.b=b}function K(a,b){var c=a.a(b);return c instanceof C?+Sa(c):+c}function L(a,b){var c=a.a(b);return c instanceof C?Sa(c):""+c}function M(a,b){var c=a.a(b);return c instanceof C?!!c.l:!!c};function N(a,b,c){n.call(this,a.i);this.c=a;this.h=b;this.o=c;this.g=b.g||c.g;this.b=b.b||c.b;this.c==Wa&&(c.b||c.g||4==c.i||0==c.i||!b.f?b.b||b.g||4==b.i||0==b.i||!c.f||(this.f={name:c.f.name,s:b}):this.f={name:b.f.name,s:c})}m(N);
function O(a,b,c,d,e){b=b.a(d);c=c.a(d);var f;if(b instanceof C&&c instanceof C){b=H(b);for(d=I(b);d;d=I(b))for(e=H(c),f=I(e);f;f=I(e))if(a(z(d),z(f)))return!0;return!1}if(b instanceof C||c instanceof C){b instanceof C?(e=b,d=c):(e=c,d=b);f=H(e);for(var g=typeof d,h=I(f);h;h=I(f)){switch(g){case "number":h=+z(h);break;case "boolean":h=!!z(h);break;case "string":h=z(h);break;default:throw Error("Illegal primitive type for comparison.");}if(e==b&&a(h,d)||e==c&&a(d,h))return!0}return!1}return e?"boolean"==
typeof b||"boolean"==typeof c?a(!!b,!!c):"number"==typeof b||"number"==typeof c?a(+b,+c):a(b,c):a(+b,+c)}N.prototype.a=function(a){return this.c.m(this.h,this.o,a)};N.prototype.toString=function(){var a="Binary Expression: "+this.c,a=a+J(this.h);return a+=J(this.o)};function Xa(a,b,c,d){this.a=a;this.w=b;this.i=c;this.m=d}Xa.prototype.toString=function(){return this.a};var Ya={};
function P(a,b,c,d){if(Ya.hasOwnProperty(a))throw Error("Binary operator already created: "+a);a=new Xa(a,b,c,d);return Ya[a.toString()]=a}P("div",6,1,function(a,b,c){return K(a,c)/K(b,c)});P("mod",6,1,function(a,b,c){return K(a,c)%K(b,c)});P("*",6,1,function(a,b,c){return K(a,c)*K(b,c)});P("+",5,1,function(a,b,c){return K(a,c)+K(b,c)});P("-",5,1,function(a,b,c){return K(a,c)-K(b,c)});P("<",4,2,function(a,b,c){return O(function(a,b){return a<b},a,b,c)});
P(">",4,2,function(a,b,c){return O(function(a,b){return a>b},a,b,c)});P("<=",4,2,function(a,b,c){return O(function(a,b){return a<=b},a,b,c)});P(">=",4,2,function(a,b,c){return O(function(a,b){return a>=b},a,b,c)});var Wa=P("=",3,2,function(a,b,c){return O(function(a,b){return a==b},a,b,c,!0)});P("!=",3,2,function(a,b,c){return O(function(a,b){return a!=b},a,b,c,!0)});P("and",2,2,function(a,b,c){return M(a,c)&&M(b,c)});P("or",1,2,function(a,b,c){return M(a,c)||M(b,c)});function Q(a,b,c){this.a=a;this.b=b||1;this.f=c||1};function Za(a,b){if(b.a.length&&4!=a.i)throw Error("Primary expression must evaluate to nodeset if filter has predicate(s).");n.call(this,a.i);this.c=a;this.h=b;this.g=a.g;this.b=a.b}m(Za);Za.prototype.a=function(a){a=this.c.a(a);return $a(this.h,a)};Za.prototype.toString=function(){var a;a="Filter:"+J(this.c);return a+=J(this.h)};function ab(a,b){if(b.length<a.A)throw Error("Function "+a.j+" expects at least"+a.A+" arguments, "+b.length+" given");if(null!==a.v&&b.length>a.v)throw Error("Function "+a.j+" expects at most "+a.v+" arguments, "+b.length+" given");a.B&&r(b,function(b,d){if(4!=b.i)throw Error("Argument "+d+" to function "+a.j+" is not of type Nodeset: "+b);});n.call(this,a.i);this.h=a;this.c=b;Ua(this,a.g||ja(b,function(a){return a.g}));Va(this,a.D&&!b.length||a.C&&!!b.length||ja(b,function(a){return a.b}))}m(ab);
ab.prototype.a=function(a){return this.h.m.apply(null,la(a,this.c))};ab.prototype.toString=function(){var a="Function: "+this.h;if(this.c.length)var b=t(this.c,function(a,b){return a+J(b)},"Arguments:"),a=a+J(b);return a};function bb(a,b,c,d,e,f,g,h,p){this.j=a;this.i=b;this.g=c;this.D=d;this.C=e;this.m=f;this.A=g;this.v=void 0!==h?h:g;this.B=!!p}bb.prototype.toString=function(){return this.j};var cb={};
function R(a,b,c,d,e,f,g,h){if(cb.hasOwnProperty(a))throw Error("Function already created: "+a+".");cb[a]=new bb(a,b,c,d,!1,e,f,g,h)}R("boolean",2,!1,!1,function(a,b){return M(b,a)},1);R("ceiling",1,!1,!1,function(a,b){return Math.ceil(K(b,a))},1);R("concat",3,!1,!1,function(a,b){return t(ma(arguments,1),function(b,d){return b+L(d,a)},"")},2,null);R("contains",2,!1,!1,function(a,b,c){return q(L(b,a),L(c,a))},2);R("count",1,!1,!1,function(a,b){return b.a(a).l},1,1,!0);
R("false",2,!1,!1,function(){return!1},0);R("floor",1,!1,!1,function(a,b){return Math.floor(K(b,a))},1);R("id",4,!1,!1,function(a,b){function c(a){if(w){var b=e.all[a];if(b){if(b.nodeType&&a==b.id)return b;if(b.length)return ka(b,function(b){return a==b.id})}return null}return e.getElementById(a)}var d=a.a,e=9==d.nodeType?d:d.ownerDocument,d=L(b,a).split(/\s+/),f=[];r(d,function(a){a=c(a);!a||0<=ha(f,a)||f.push(a)});f.sort(La);var g=new C;r(f,function(a){F(g,a)});return g},1);
R("lang",2,!1,!1,function(){return!1},1);R("last",1,!0,!1,function(a){if(1!=arguments.length)throw Error("Function last expects ()");return a.f},0);R("local-name",3,!1,!0,function(a,b){var c=b?Ra(b.a(a)):a.a;return c?c.localName||c.nodeName.toLowerCase():""},0,1,!0);R("name",3,!1,!0,function(a,b){var c=b?Ra(b.a(a)):a.a;return c?c.nodeName.toLowerCase():""},0,1,!0);R("namespace-uri",3,!0,!1,function(){return""},0,1,!0);
R("normalize-space",3,!1,!0,function(a,b){return(b?L(b,a):z(a.a)).replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")},0,1);R("not",2,!1,!1,function(a,b){return!M(b,a)},1);R("number",1,!1,!0,function(a,b){return b?K(b,a):+z(a.a)},0,1);R("position",1,!0,!1,function(a){return a.b},0);R("round",1,!1,!1,function(a,b){return Math.round(K(b,a))},1);R("starts-with",2,!1,!1,function(a,b,c){b=L(b,a);a=L(c,a);return 0==b.lastIndexOf(a,0)},2);R("string",3,!1,!0,function(a,b){return b?L(b,a):z(a.a)},0,1);
R("string-length",1,!1,!0,function(a,b){return(b?L(b,a):z(a.a)).length},0,1);R("substring",3,!1,!1,function(a,b,c,d){c=K(c,a);if(isNaN(c)||Infinity==c||-Infinity==c)return"";d=d?K(d,a):Infinity;if(isNaN(d)||-Infinity===d)return"";c=Math.round(c)-1;var e=Math.max(c,0);a=L(b,a);return Infinity==d?a.substring(e):a.substring(e,c+Math.round(d))},2,3);R("substring-after",3,!1,!1,function(a,b,c){b=L(b,a);a=L(c,a);c=b.indexOf(a);return-1==c?"":b.substring(c+a.length)},2);
R("substring-before",3,!1,!1,function(a,b,c){b=L(b,a);a=L(c,a);a=b.indexOf(a);return-1==a?"":b.substring(0,a)},2);R("sum",1,!1,!1,function(a,b){for(var c=H(b.a(a)),d=0,e=I(c);e;e=I(c))d+=+z(e);return d},1,1,!0);R("translate",3,!1,!1,function(a,b,c,d){b=L(b,a);c=L(c,a);var e=L(d,a);a={};for(d=0;d<c.length;d++){var f=c.charAt(d);f in a||(a[f]=e.charAt(d))}c="";for(d=0;d<b.length;d++)f=b.charAt(d),c+=f in a?a[f]:f;return c},3);R("true",2,!1,!1,function(){return!0},0);function G(a,b){this.h=a;this.c=void 0!==b?b:null;this.b=null;switch(a){case "comment":this.b=8;break;case "text":this.b=3;break;case "processing-instruction":this.b=7;break;case "node":break;default:throw Error("Unexpected argument");}}function db(a){return"comment"==a||"text"==a||"processing-instruction"==a||"node"==a}G.prototype.a=function(a){return null===this.b||this.b==a.nodeType};G.prototype.f=function(){return this.h};
G.prototype.toString=function(){var a="Kind Test: "+this.h;null===this.c||(a+=J(this.c));return a};function eb(a){this.b=a;this.a=0}function fb(a){a=a.match(gb);for(var b=0;b<a.length;b++)hb.test(a[b])&&a.splice(b,1);return new eb(a)}var gb=/\$?(?:(?![0-9-\.])(?:\*|[\w-\.]+):)?(?![0-9-\.])(?:\*|[\w-\.]+)|\/\/|\.\.|::|\d+(?:\.\d*)?|\.\d+|"[^"]*"|'[^']*'|[!<>]=|\s+|./g,hb=/^\s/;function S(a,b){return a.b[a.a+(b||0)]}function T(a){return a.b[a.a++]}function ib(a){return a.b.length<=a.a};function jb(a){n.call(this,3);this.c=a.substring(1,a.length-1)}m(jb);jb.prototype.a=function(){return this.c};jb.prototype.toString=function(){return"Literal: "+this.c};function E(a,b){this.j=a.toLowerCase();var c;c="*"==this.j?"*":"http://www.w3.org/1999/xhtml";this.c=b?b.toLowerCase():c}E.prototype.a=function(a){var b=a.nodeType;if(1!=b&&2!=b)return!1;b=void 0!==a.localName?a.localName:a.nodeName;return"*"!=this.j&&this.j!=b.toLowerCase()?!1:"*"==this.c?!0:this.c==(a.namespaceURI?a.namespaceURI.toLowerCase():"http://www.w3.org/1999/xhtml")};E.prototype.f=function(){return this.j};
E.prototype.toString=function(){return"Name Test: "+("http://www.w3.org/1999/xhtml"==this.c?"":this.c+":")+this.j};function kb(a,b){n.call(this,a.i);this.h=a;this.c=b;this.g=a.g;this.b=a.b;if(1==this.c.length){var c=this.c[0];c.u||c.c!=lb||(c=c.o,"*"!=c.f()&&(this.f={name:c.f(),s:null}))}}m(kb);function mb(){n.call(this,4)}m(mb);mb.prototype.a=function(a){var b=new C;a=a.a;9==a.nodeType?F(b,a):F(b,a.ownerDocument);return b};mb.prototype.toString=function(){return"Root Helper Expression"};function nb(){n.call(this,4)}m(nb);nb.prototype.a=function(a){var b=new C;F(b,a.a);return b};nb.prototype.toString=function(){return"Context Helper Expression"};
function ob(a){return"/"==a||"//"==a}kb.prototype.a=function(a){var b=this.h.a(a);if(!(b instanceof C))throw Error("Filter expression must evaluate to nodeset.");a=this.c;for(var c=0,d=a.length;c<d&&b.l;c++){var e=a[c],f=H(b,e.c.a),g;if(e.g||e.c!=pb)if(e.g||e.c!=qb)for(g=I(f),b=e.a(new Q(g));null!=(g=I(f));)g=e.a(new Q(g)),b=Pa(b,g);else g=I(f),b=e.a(new Q(g));else{for(g=I(f);(b=I(f))&&(!g.contains||g.contains(b))&&b.compareDocumentPosition(g)&8;g=b);b=e.a(new Q(g))}}return b};
kb.prototype.toString=function(){var a;a="Path Expression:"+J(this.h);if(this.c.length){var b=t(this.c,function(a,b){return a+J(b)},"Steps:");a+=J(b)}return a};function rb(a){n.call(this,4);this.c=a;Ua(this,ja(this.c,function(a){return a.g}));Va(this,ja(this.c,function(a){return a.b}))}m(rb);rb.prototype.a=function(a){var b=new C;r(this.c,function(c){c=c.a(a);if(!(c instanceof C))throw Error("Path expression must evaluate to NodeSet.");b=Pa(b,c)});return b};rb.prototype.toString=function(){return t(this.c,function(a,b){return a+J(b)},"Union Expression:")};function sb(a,b){this.a=a;this.b=!!b}
function $a(a,b,c){for(c=c||0;c<a.a.length;c++)for(var d=a.a[c],e=H(b),f=b.l,g,h=0;g=I(e);h++){var p=a.b?f-h:h+1;g=d.a(new Q(g,p,f));if("number"==typeof g)p=p==g;else if("string"==typeof g||"boolean"==typeof g)p=!!g;else if(g instanceof C)p=0<g.l;else throw Error("Predicate.evaluate returned an unexpected type.");if(!p){p=e;g=p.f;var y=p.a;if(!y)throw Error("Next must be called at least once before remove.");var D=y.b,y=y.a;D?D.a=y:g.a=y;y?y.b=D:g.b=D;g.l--;p.a=null}}return b}
sb.prototype.toString=function(){return t(this.a,function(a,b){return a+J(b)},"Predicates:")};function U(a,b,c,d){n.call(this,4);this.c=a;this.o=b;this.h=c||new sb([]);this.u=!!d;b=this.h;b=0<b.a.length?b.a[0].f:null;a.b&&b&&(a=b.name,a=w?a.toLowerCase():a,this.f={name:a,s:b.s});a:{a=this.h;for(b=0;b<a.a.length;b++)if(c=a.a[b],c.g||1==c.i||0==c.i){a=!0;break a}a=!1}this.g=a}m(U);
U.prototype.a=function(a){var b=a.a,c=null,c=this.f,d=null,e=null,f=0;c&&(d=c.name,e=c.s?L(c.s,a):null,f=1);if(this.u)if(this.g||this.c!=tb)if(a=H((new U(ub,new G("node"))).a(a)),b=I(a))for(c=this.m(b,d,e,f);null!=(b=I(a));)c=Pa(c,this.m(b,d,e,f));else c=new C;else c=B(this.o,b,d,e),c=$a(this.h,c,f);else c=this.m(a.a,d,e,f);return c};U.prototype.m=function(a,b,c,d){a=this.c.f(this.o,a,b,c);return a=$a(this.h,a,d)};
U.prototype.toString=function(){var a;a="Step:"+J("Operator: "+(this.u?"//":"/"));this.c.j&&(a+=J("Axis: "+this.c));a+=J(this.o);if(this.h.a.length){var b=t(this.h.a,function(a,b){return a+J(b)},"Predicates:");a+=J(b)}return a};function vb(a,b,c,d){this.j=a;this.f=b;this.a=c;this.b=d}vb.prototype.toString=function(){return this.j};var wb={};function V(a,b,c,d){if(wb.hasOwnProperty(a))throw Error("Axis already created: "+a);b=new vb(a,b,c,!!d);return wb[a]=b}
V("ancestor",function(a,b){for(var c=new C,d=b;d=d.parentNode;)a.a(d)&&Qa(c,d);return c},!0);V("ancestor-or-self",function(a,b){var c=new C,d=b;do a.a(d)&&Qa(c,d);while(d=d.parentNode);return c},!0);

	(c)?c:null,l(d)
var ub=V("descendant-or-self",function(a,b,c,d){var e=new C;A(b,c,d)&&a.a(b)&&F(e,b);return B(a,b,c,d,e)},!1,!0),pb=V("following",function(a,b,c,d){var e=new C;do for(var f=b;f=f.nextSibling;)A(f,c,d)&&a.a(f)&&F(e,f),e=B(a,f,c,d,e);while(b=b.parentNode);return e},!1,!0);V("following-sibling",function(a,b){for(var c=new C,d=b;d=d.nextSibling;)a.a(d)&&F(c,d);return c},!1);V("namespace",function(){return new C},!1);
var xb=V("parent",function(a,b){var c=new C;if(9==b.nodeType)return c;if(2==b.nodeType)return F(c,b.ownerElement),c;var d=b.parentNode;a.a(d)&&F(c,d);return c},!1),qb=V("preceding",function(a,b,c,d){var e=new C,f=[];do f.unshift(b);while(b=b.parentNode);for(var g=1,h=f.length;g<h;g++){var p=[];for(b=f[g];b=b.previousSibling;)p.unshift(b);for(var y=0,D=p.length;y<D;y++)b=p[y],A(b,c,d)&&a.a(b)&&F(e,b),e=B(a,b,c,d,e)}return e},!0,!0);
V("preceding-sibling",function(a,b){for(var c=new C,d=b;d=d.previousSibling;)a.a(d)&&Qa(c,d);return c},!0);var yb=V("self",function(a,b){var c=new C;a.a(b)&&F(c,b);return c},!1);function zb(a){n.call(this,1);this.c=a;this.g=a.g;this.b=a.b}m(zb);zb.prototype.a=function(a){return-K(this.c,a)};zb.prototype.toString=function(){return"Unary Expression: -"+J(this.c)};function Ab(a){n.call(this,1);this.c=a}m(Ab);Ab.prototype.a=function(){return this.c};Ab.prototype.toString=function(){return"Number: "+this.c};function Bb(a,b){this.a=a;this.b=b}function Cb(a){for(var b,c=[];;){W(a,"Missing right hand side of binary expression.");b=Db(a);var d=T(a.a);if(!d)break;var e=(d=Ya[d]||null)&&d.w;if(!e){a.a.a--;break}for(;c.length&&e<=c[c.length-1].w;)b=new N(c.pop(),c.pop(),b);c.push(b,d)}for(;c.length;)b=new N(c.pop(),c.pop(),b);return b}function W(a,b){if(ib(a.a))throw Error(b);}function Eb(a,b){var c=T(a.a);if(c!=b)throw Error("Bad token, expected: "+b+" got: "+c);}
function Fb(a){a=T(a.a);if(")"!=a)throw Error("Bad token: "+a);}function Gb(a){a=T(a.a);if(2>a.length)throw Error("Unclosed literal string");return new jb(a)}
function Hb(a){var b,c=[],d;if(ob(S(a.a))){b=T(a.a);d=S(a.a);if("/"==b&&(ib(a.a)||"."!=d&&".."!=d&&"@"!=d&&"*"!=d&&!/(?![0-9])[\w]/.test(d)))return new mb;d=new mb;W(a,"Missing next location step.");b=Ib(a,b);c.push(b)}else{a:{b=S(a.a);d=b.charAt(0);switch(d){case "$":throw Error("Variable reference not allowed in HTML XPath");case "(":T(a.a);b=Cb(a);W(a,'unclosed "("');Eb(a,")");break;case '"':case "'":b=Gb(a);break;default:if(isNaN(+b))if(!db(b)&&/(?![0-9])[\w]/.test(d)&&"("==S(a.a,1)){b=T(a.a);
b=cb[b]||null;T(a.a);for(d=[];")"!=S(a.a);){W(a,"Missing function argument list.");d.push(Cb(a));if(","!=S(a.a))break;T(a.a)}W(a,"Unclosed function argument list.");Fb(a);b=new ab(b,d)}else{b=null;break a}else b=new Ab(+T(a.a))}"["==S(a.a)&&(d=new sb(Jb(a)),b=new Za(b,d))}if(b)if(ob(S(a.a)))d=b;else return b;else b=Ib(a,"/"),d=new nb,c.push(b)}for(;ob(S(a.a));)b=T(a.a),W(a,"Missing next location step."),b=Ib(a,b),c.push(b);return new kb(d,c)}
function Ib(a,b){var c,d,e;if("/"!=b&&"//"!=b)throw Error('Step op should be "/" or "//"');if("."==S(a.a))return d=new U(yb,new G("node")),T(a.a),d;if(".."==S(a.a))return d=new U(xb,new G("node")),T(a.a),d;var f;if("@"==S(a.a))f=lb,T(a.a),W(a,"Missing attribute name");else if("::"==S(a.a,1)){if(!/(?![0-9])[\w]/.test(S(a.a).charAt(0)))throw Error("Bad token: "+T(a.a));c=T(a.a);f=wb[c]||null;if(!f)throw Error("No axis with name: "+c);T(a.a);W(a,"Missing node name")}else f=tb;c=S(a.a);if(/(?![0-9])[\w\*]/.test(c.charAt(0)))if("("==
S(a.a,1)){if(!db(c))throw Error("Invalid node type: "+c);c=T(a.a);if(!db(c))throw Error("Invalid type name: "+c);Eb(a,"(");W(a,"Bad nodetype");e=S(a.a).charAt(0);var g=null;if('"'==e||"'"==e)g=Gb(a);W(a,"Bad nodetype");Fb(a);c=new G(c,g)}else if(c=T(a.a),e=c.indexOf(":"),-1==e)c=new E(c);else{var g=c.substring(0,e),h;if("*"==g)h="*";else if(h=a.b(g),!h)throw Error("Namespace prefix not declared: "+g);c=c.substr(e+1);c=new E(c,h)}else throw Error("Bad token: "+T(a.a));e=new sb(Jb(a),f.a);return d||
new U(f,c,e,"//"==b)}function Jb(a){for(var b=[];"["==S(a.a);){T(a.a);W(a,"Missing predicate expression.");var c=Cb(a);b.push(c);W(a,"Unclosed predicate expression.");Eb(a,"]")}return b}function Db(a){if("-"==S(a.a))return T(a.a),new zb(Db(a));var b=Hb(a);if("|"!=S(a.a))a=b;else{for(b=[b];"|"==T(a.a);)W(a,"Missing next union location path."),b.push(Hb(a));a.a.a--;a=new rb(b)}return a};function Kb(a){switch(a.nodeType){case 1:return ea(Lb,a);case 9:return Kb(a.documentElement);case 11:case 10:case 6:case 12:return Mb;default:return a.parentNode?Kb(a.parentNode):Mb}}function Mb(){return null}function Lb(a,b){if(a.prefix==b)return a.namespaceURI||"http://www.w3.org/1999/xhtml";var c=a.getAttributeNode("xmlns:"+b);return c&&c.specified?c.value||null:a.parentNode&&9!=a.parentNode.nodeType?Lb(a.parentNode,b):null};function Nb(a,b){if(!a.length)throw Error("Empty XPath expression.");var c=fb(a);if(ib(c))throw Error("Invalid XPath expression.");b?"function"==aa(b)||(b=da(b.lookupNamespaceURI,b)):b=function(){return null};var d=Cb(new Bb(c,b));if(!ib(c))throw Error("Bad token: "+T(c));this.evaluate=function(a,b){var c=d.a(new Q(a));return new Y(c,b)}}
function Y(a,b){if(0==b)if(a instanceof C)b=4;else if("string"==typeof a)b=2;else if("number"==typeof a)b=1;else if("boolean"==typeof a)b=3;else throw Error("Unexpected evaluation result.");if(2!=b&&1!=b&&3!=b&&!(a instanceof C))throw Error("value could not be converted to the specified type");this.resultType=b;var c;switch(b){case 2:this.stringValue=a instanceof C?Sa(a):""+a;break;case 1:this.numberValue=a instanceof C?+Sa(a):+a;break;case 3:this.booleanValue=a instanceof C?0<a.l:!!a;break;case 4:case 5:case 6:case 7:var d=
H(a);c=[];for(var e=I(d);e;e=I(d))c.push(e instanceof x?e.a:e);this.snapshotLength=a.l;this.invalidIteratorState=!1;break;case 8:case 9:d=Ra(a);this.singleNodeValue=d instanceof x?d.a:d;break;default:throw Error("Unknown XPathResult type.");}var f=0;this.iterateNext=function(){if(4!=b&&5!=b)throw Error("iterateNext called with wrong result type");return f>=c.length?null:c[f++]};this.snapshotItem=function(a){if(6!=b&&7!=b)throw Error("snapshotItem called with wrong result type");return a>=c.length||
0>a?null:c[a]}}Y.ANY_TYPE=0;Y.NUMBER_TYPE=1;Y.STRING_TYPE=2;Y.BOOLEAN_TYPE=3;Y.UNORDERED_NODE_ITERATOR_TYPE=4;Y.ORDERED_NODE_ITERATOR_TYPE=5;Y.UNORDERED_NODE_SNAPSHOT_TYPE=6;Y.ORDERED_NODE_SNAPSHOT_TYPE=7;Y.ANY_UNORDERED_NODE_TYPE=8;Y.FIRST_ORDERED_NODE_TYPE=9;function Ob(a){this.lookupNamespaceURI=Kb(a)}

	(c)` is assumed.

    Parameters

	(C)` to respect the signature of

	(c)`` is
    assumed.

    Parameters

	(c)`` is assumed.
        r[0] is ignored; the last row of the returned matrix is
        ``[c[-1], r[1:]]``. Whatever the actual shape of `r`, it will be
        converted to a 1-D array.

    Returns

	(c)`` is assumed;
        in this case, if c[0] is real, the result is a Hermitian matrix.
        r[0] is ignored; the first row of the returned matrix is
        ``[c[0], r[1:]]``.  Whatever the actual shape of `r`, it will be
        converted to a 1-D array.

    Returns

	(c)`` is assumed; in this case, if c
        real, the Toeplitz matrix is Hermitian. r[0] is ignored; the first row
        of the Toeplitz matrix is ``[c[0], r[1:]]``. Whatever the actual shape
        of ``r``, it will be converted to a 1-D array.
    b : (M,) or (M, K) array_like
        Right-hand side in ``T x = b``.
    check_finite : bool
        Whether to check that the input matrices contain only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (result entirely NaNs) if the inputs do contain infinities or NaNs.
    keep_b_shape : bool
        Whether to convert a (M,) dimensional b into a (M, 1) dimensional
        matrix.
    enforce_square : bool, optional
        If True (default), this verifies that the Toeplitz matrix is square.

    Returns

	(c)`` is assumed; in this case, if c
        real, the Toeplitz matrix is Hermitian. r[0] is ignored; the first row
        of the Toeplitz matrix is ``[c[0], r[1:]]``. Whatever the actual shape
        of ``r``, it will be converted to a 1-D array.
    b : (M,) or (M, K) array_like
        Right-hand side in ``T x = b``.
    check_finite : bool, optional
        Whether to check that the input matrices contain only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (result entirely NaNs) if the inputs do contain infinities or NaNs.

    Returns

	(c)`` is assumed; in this case, if c
        real, the Toeplitz matrix is Hermitian. r[0] is ignored; the first row
        of the Toeplitz matrix is ``[c[0], r[1:]]``. Whatever the actual shape
        of ``r``, it will be converted to a 1-D array.
    x : (M,) or (M, K) array_like
        Matrix with which to multiply.
    check_finite : bool, optional
        Whether to check that the input matrices contain only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (result entirely NaNs) if the inputs do contain infinities or NaNs.
    workers : int, optional
        To pass to scipy.fft.fft and ifft. Maximum number of workers to use
        for parallel computation. If negative, the value wraps around from
        ``os.cpu_count()``. See scipy.fft.fft for more details.

    Returns

	(c)`` or two items
        ``c`` which are assumed to be a starting interval for a downhill
        bracket search (see `bracket`); it doesn't always mean that the
        obtained solution will satisfy ``a <= x <= c``.
    bounds : sequence, optional
        For method 'bounded', `bounds` is mandatory and must have two items
        corresponding to the optimization bounds.
    args : tuple, optional
        Extra arguments passed to the objective function.
    method : str or callable, optional
        Type of solver.  Should be one of:


	copy right boundary of domain
	iv_new->ip = iv->x;
	iv_new->fip = iv->fx;
	/* make shure that we will never use this interval for sampling. */
	iv->next->Asqueeze = iv->next->Ahat = iv->next->Ahatr = 0.;
	iv->Acum = UNUR_INFINITY;
	iv->next-> sq = 0.;
	/* we even have to to some additional work */
      }
      else
	/* nothing to do any more */
	break;

	Copyright
 *
 * I hereby release this code into the PUBLIC DOMAIN AS IS. There is no
 * support, warranty, or guarantee. I will gladly accept comments, bug
 * reports, and patches, however.
 *
 * Robert Kern
 * kern@caltech.edu

	copyright  Boost Software License, version 1.0

    Contains the declarations (and definitions) of various kinds of CRC
    computation functions, function object types, and encapsulated policy types.

	Copyright  Paul A. Bristow 2007, 2009, 2010, 2012.

	Copyright  Paul A. Bristow 2007, 2012.

	Copyright  Paul A. Bristow 2007.

	Copyright (2) Beman Dawes 2010, 2011

	Copyright (3) Ion Gaztanaga 2013
//

	Copyright (arg) 2001-2014 Joel de Guzman

	Copyright (c)      2010 Bryce Lelbach

	Copyright (c)      2011 Bryce Lelbach

	Copyright (c)      2011 Thomas Heller

	Copyright (c)  2000 David Abrahams.

	Copyright (C)  Tyler Reddy, Ross Hemsley, Edd Edmondson,

	Copyright (c) 1992-2013 The University of Tennessee and The University
                          of Tennessee Research Foundation.  All rights
                          reserved.

	Copyright (c) 1993-2019
                    
                            C.B. Barber
                           Arlington, MA 

	Copyright (c) 1993-2019 C.B. Barber.
   $Id: //main/2019/qhull/src/libqhull_r/merge_r.c#12 $$Change: 2712 $
   $DateTime: 2019/06/28 12:57:00 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 C.B. Barber.
   $Id: //main/2019/qhull/src/libqhull_r/merge_r.h#1 $$Change: 2661 $
   $DateTime: 2019/05/24 20:09:58 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/geom2_r.c#15 $$Change: 2712 $
   $DateTime: 2019/06/28 12:57:00 $$Author: bbarber $

   frequently used code goes into geom_r.c

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/geom_r.c#4 $$Change: 2712 $
   $DateTime: 2019/06/28 12:57:00 $$Author: bbarber $

   infrequent code goes into geom2_r.c

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/geom_r.h#1 $$Change: 2661 $
   $DateTime: 2019/05/24 20:09:58 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/global_r.c#12 $$Change: 2712 $
   $DateTime: 2019/06/28 12:57:00 $$Author: bbarber $
 */

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/io_r.c#7 $$Change: 2683 $
   $DateTime: 2019/06/14 16:05:16 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/io_r.h#2 $$Change: 2671 $
   $DateTime: 2019/06/06 11:24:01 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/libqhull_r.c#16 $$Change: 2712 $
   $DateTime: 2019/06/28 12:57:00 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/libqhull_r.h#13 $$Change: 2714 $
   $DateTime: 2019/06/28 16:16:13 $$Author: bbarber $

   includes function prototypes for libqhull_r.c, geom_r.c, global_r.c, io_r.c, user_r.c

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/mem_r.h#5 $$Change: 2698 $
   $DateTime: 2019/06/24 14:52:34 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/poly2_r.c#18 $$Change: 2712 $
   $DateTime: 2019/06/28 12:57:00 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/poly_r.c#7 $$Change: 2705 $
   $DateTime: 2019/06/26 16:34:45 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/poly_r.h#3 $$Change: 2701 $
   $DateTime: 2019/06/25 15:24:47 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/qhull_ra.h#1 $$Change: 2661 $
   $DateTime: 2019/05/24 20:09:58 $$Author: bbarber $

   Notes:  grep for ((" and (" to catch fprintf("lkasdjf");
           full parens around (x?y:z)
           use '#include "libqhull_r/qhull_ra.h"' to avoid name clashes

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/qset_r.c#7 $$Change: 2711 $
   $DateTime: 2019/06/27 22:34:56 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/qset_r.h#3 $$Change: 2700 $
   $DateTime: 2019/06/25 05:52:18 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/random_r.h#2 $$Change: 2666 $
   $DateTime: 2019/05/30 10:11:25 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/stat_r.c#7 $$Change: 2712 $
   $DateTime: 2019/06/28 12:57:00 $$Author: bbarber $
*/

	Copyright (c) 1993-2019 The Geometry Center.
   $Id: //main/2019/qhull/src/libqhull_r/stat_r.h#3 $$Change: 2711 $
   $DateTime: 2019/06/27 22:34:56 $$Author: bbarber $

   recompile qhull if you change this file

	Copyright (c) 1993-2019 The Geometry Center.
  $Id: //main/2019/qhull/src/libqhull_r/mem_r.c#6 $$Change: 2711 $
  $DateTime: 2019/06/27 22:34:56 $$Author: bbarber $
*/

	Copyright (c) 1994
 * Hewlett-Packard Company
 *
 * Permission to use, copy, modify, distribute and sell this software
 * and its documentation for any purpose is hereby granted without fee,
 * provided that the above copyright notice appear in all copies and
 * that both that copyright notice and this permission notice appear
 * in supporting documentation.  Hewlett-Packard Company makes no
 * representations about the suitability of this software for any
 * purpose.  It is provided "as is" without express or implied warranty.

	Copyright (c) 1994
// Hewlett-Packard Company
//
// Permission to use, copy, modify, distribute and sell this software
// and its documentation for any purpose is hereby granted without fee,
// provided that the above copyright notice appear in all copies and
// that both that copyright notice and this permission notice appear
// in supporting documentation.  Hewlett-Packard Company makes no
// representations about the suitability of this software for any
// purpose.  It is provided "as is" without express or implied warranty.

	Copyright (c) 1994 by Xerox Corporation.  All rights reserved.
 *
 * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY
 * EXPRESSED OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.

	Copyright (c) 1995 Maarten Hilferink, Amsterdam, the Netherlands

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 1995, 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 1995, Gerald Evenden

	copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.

	copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2013-2020.

	copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2016-2020.

	copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2018-2020.

	copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2018.

	Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler

    This software is provided 'as-is', without any express or implied
    warranty.  In no event will the authors be held liable for any damages
    arising from the use of this software.

	Copyright (c) 1996
 * Silicon Graphics Computer Systems, Inc.
 *
 * Permission to use, copy, modify, distribute and sell this software
 * and its documentation for any purpose is hereby granted without fee,
 * provided that the above copyright notice appear in all copies and
 * that both that copyright notice and this permission notice appear
 * in supporting documentation.  Silicon Graphics makes no
 * representations about the suitability of this software for any
 * purpose.  It is provided "as is" without express or implied warranty.

	Copyright (c) 1996
// Silicon Graphics Computer Systems, Inc.
//
// Permission to use, copy, modify, distribute and sell this software
// and its documentation for any purpose is hereby granted without fee,
// provided that the above copyright notice appear in all copies and
// that both that copyright notice and this permission notice appear
// in supporting documentation.  Silicon Graphics makes no
// representations about the suitability of this software for any
// purpose.  It is provided "as is" without express or implied warranty.

	Copyright (C) 1996, 1997, 1998, 1999, 2000 Gerard Jungman, Brian Gough

	Copyright (C) 1996, 1997, 1998, 1999, 2000 Gerard Jungman, Brian Gough
 *                                                                           *
 *   adapted by Wolfgang Hoermann and Josef Leydold                          *
 *   Department of Statistics and Mathematics, WU Wien, Austria              *

	Copyright (c) 1996,1997
 * Silicon Graphics Computer Systems, Inc.
 *
 * Permission to use, copy, modify, distribute and sell this software
 * and its documentation for any purpose is hereby granted without fee,
 * provided that the above copyright notice appear in all copies and
 * that both that copyright notice and this permission notice appear
 * in supporting documentation.  Silicon Graphics makes no
 * representations about the suitability of this software for any
 * purpose.  It is provided "as is" without express or implied warranty.

	Copyright (c) 1996-1998
// Silicon Graphics Computer Systems, Inc.
//
// Permission to use, copy, modify, distribute and sell this software
// and its documentation for any purpose is hereby granted without fee,
// provided that the above copyright notice appear in all copies and
// that both that copyright notice and this permission notice appear
// in supporting documentation.  Silicon Graphics makes no
// representations about the suitability of this software for any
// purpose.  It is provided "as is" without express or implied warranty.

	Copyright (c) 1996-2008 Rice University.

	Copyright (c) 1996-2008 Rice University.
Developed by D.C. Sorensen, R.B. Lehoucq, C. Yang, and K. Maschhoff.
All rights reserved.

Arpack has been renamed to arpack-ng.

	Copyright (c) 1998
 * Silicon Graphics Computer Systems, Inc.
 *
 * Permission to use, copy, modify, distribute and sell this software
 * and its documentation for any purpose is hereby granted without fee,
 * provided that the above copyright notice appear in all copies and
 * that both that copyright notice and this permission notice appear
 * in supporting documentation.  Silicon Graphics makes no
 * representations about the suitability of this software for any
 * purpose.  It is provided "as is" without express or implied warranty.

	Copyright (c) 1998-2000

	Copyright (c) 1998-2000 Theodore C. Belding
     /*    University of Michigan Center for the Study of Complex Systems    */
     /*    Ted.Belding@umich.edu)                                            */
     /*----------------------------------------------------------------------*/

	Copyright (c) 1998-2002

	Copyright (c) 1998-2002 Joel de Guzman

	Copyright (c) 1998-2003 by the University of Florida.
	All Rights Reserved.

	THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY
	EXPRESSED OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.

	Copyright (c) 1998-2003 Joel de Guzman

	Copyright (c) 1998-2004 John Maddock

	Copyright (c) 1998-2005

	Copyright (c) 1998-2008 Joel de Guzman

	Copyright (c) 1998-2009

	Copyright (c) 1998-2009 John Maddock

	Copyright (C) 1999, 2000 Jaakko Jarvi (jaakko.jarvi@cs.utu.fi)

	Copyright (c) 1999, 2000, 2001 North Carolina State University

	Copyright (C) 1999-2001 Jaakko Jarvi (jaakko.jarvi@cs.utu.fi)

	Copyright (c) 1999-2003 Jaakko Jarvi

	Copyright (c) 1999-2003 Jeremiah Willcock

	Copyright (c) 1999-2006: Cortex Software GmbH, Kantstrasse 57, Berlin

	Copyright (c) 2000 Cadenza New Zealand Ltd

	Copyright (C) 2000 Gary Powell (gary.powell@sierra.com)

	Copyright (C) 2000 Gary Powell (gwpowell@hotmail.com)

	Copyright (C) 2000 Gary Powell (powellg@amazon.com)

	Copyright (C) 2000 Stephen Cleary

	Copyright (C) 2000, 2001 Stephen Cleary

	Copyright (c) 2000, Frank Warmerdam

	Copyright (c) 2000-2002

	Copyright (c) 2000-2003 Brian McNamara and Yannis Smaragdakis

	Copyright (c) 2000-2004

	Copyright (c) 2000-2006 Wolfgang Hoermann and Josef Leydold
 *   Dept. for Statistics, University of Economics, Vienna, Austria          *
 *                                                                           *

	Copyright (c) 2000-2006, 2010 Wolfgang Hoermann and Josef Leydold
 *   Department of Statistics and Mathematics, WU Wien, Austria              *
 *                                                                           *

	Copyright (c) 2000-2007

	Copyright (c) 2000-2009

	Copyright (c) 2000-2010

	Copyright (c) 2000-2010
//  Joerg Walter, Mathias Koch, David Bellot

	Copyright (c) 2000-2010
//  Joerg Walter, Mathias Koch, Gunter Winkler, David Bellot

	Copyright (c) 2000-2010  Wolfgang Hoermann and Josef Leydold
 *   Department of Statistics and Mathematics, WU Wien, Austria              *
 *                                                                           *

	Copyright (c) 2000-2011 Joerg Walter, Mathias Koch, David Bellot

	Copyright (c) 2000-2013

	Copyright (c) 2000-2013 The University of California Berkeley. All
                          rights reserved.

	Copyright (c) 2000-2022 Wolfgang Hoermann and Josef Leydold

	Copyright (C) 2001

	Copyright (c) 2001 Alexander Peslyak and it is hereby released to the
 * general public under the following terms:
 *
 * Redistribution and use in source and binary forms, with or without

	Copyright (c) 2001 Bruce Florman

	Copyright (c) 2001 by Andrei Alexandrescu. Distributed under the Boost

	Copyright (c) 2001 Daniel C. Nuffer

	Copyright (c) 2001 Daniel C. Nuffer.

	Copyright (c) 2001 Daniel Nuffer

	Copyright (c) 2001 Darin Adler

	Copyright (C) 2001 Daryle Walker.

	Copyright (c) 2001 David Abrahams

	Copyright (C) 2001 Dietmar Kuehl

	Copyright (c) 2001 Doug Gregor

	Copyright (C) 2001 Gary Powell (gary.powell@sierra.com)

	Copyright (C) 2001 Jaakko Jarvi (jaakko.jarvi@cs.utu.fi)

	Copyright (C) 2001 Jeremy Siek <jsiek@cs.indiana.edu>

	Copyright (C) 2001 Jeremy Siek, Douglas Gregor, Brian Osman

	Copyright (c) 2001 Peter Dimov

	Copyright (C) 2001 Peter Dimov

# include <boost/config.hpp>
# include <boost/mpl/bool.hpp>

	Copyright (c) 2001 Peter Dimov and Multi Media Ltd.

	Copyright (c) 2001 Ronald Garcia, Indiana University (garcia@osl.iu.edu)

	Copyright (c) 2001 Ronald Garcia, Indiana University (garcia@osl.iu.edu)
// Andrew Lumsdaine, Indiana University (lums@osl.iu.edu). Permission to copy, 
// use, modify, sell and distribute this software is granted provided this
// copyright notice appears in all copies. This software is provided "as is"
// without express or implied warranty, and with no claim as to its suitability
// for any purpose.

#ifndef BOOST_PROGRAM_OPTIONS_UTF8_CODECVT_FACET_HPP
#define BOOST_PROGRAM_OPTIONS_UTF8_CODECVT_FACET_HPP

	Copyright (C) 2001 Vladimir Prus <ghost@cs.msu.su>

	Copyright (c) 2001, 2002 Enthought, Inc.
#
# All rights reserved.

	Copyright (C) 2001, 2002 Peter Dimov

	Copyright (c) 2001, 2002 Peter Dimov

	Copyright (c) 2001, 2002 Peter Dimov and Multi Media Ltd.

	Copyright (c) 2001, 2002 Python Software Foundation; All Rights

	Copyright (c) 2001, 2002, 2003 Peter Dimov

	Copyright (c) 2001, 2002, 2003 Peter Dimov and Multi Media Ltd.

	Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Python Software Foundation;
All Rights Reserved
*/

	Copyright (c) 2001, 2002, 2012 Peter Dimov

	Copyright (c) 2001, Daniel C. Nuffer

	Copyright (c) 2001, Daniel C. Nuffer

    This software is provided 'as-is', without any express or implied
    warranty. In no event will the copyright holder be held liable for
    any damages arising from the use of this software.

	Copyright (c) 2001, Thomas Flemming, tf@ttqv.com

	Copyright (c) 2001-2002 Chuck Allison and Jeremy Siek

	Copyright (c) 2001-2002 Enthought, Inc. 2003-2022, SciPy Developers.
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above
   copyright notice, this list of conditions and the following
   disclaimer in the documentation and/or other materials provided
   with the distribution.

3. Neither the name of the copyright holder nor the names of its
   contributors may be used to endorse or promote products derived
   from this software without specific prior written permission.


	Copyright (C) 2001-2002 Joel de Guzman

	Copyright (c) 2001-2002 Joel de Guzman

	Copyright (C) 2001-2003

	Copyright (C) 2001-2003
// William E. Kempf

	Copyright (C) 2001-2003
// William E. Kempf
//
// Permission to use, copy, modify, distribute and sell this software
// and its documentation for any purpose is hereby granted without fee,
// provided that the above copyright notice appear in all copies and
// that both that copyright notice and this permission notice appear
// in supporting documentation.  William E. Kempf makes no representations
// about the suitability of this software for any purpose.
// It is provided "as is" without express or implied warranty.

	Copyright (c) 2001-2003 Daniel Nuffer

	Copyright (c) 2001-2003 Hartmut Kaiser

	Copyright (c) 2001-2003 Joel de Guzman

	Copyright (c) 2001-2003 John Maddock

	Copyright (c) 2001-2004 Peter Dimov and Multi Media Ltd.

	Copyright (c) 2001-2005 Peter Dimov

	Copyright (c) 2001-2007 Hartmut Kaiser

	Copyright (c) 2001-2007 Joel de Guzman

	Copyright (c) 2001-2008 Hartmut Kaiser

	Copyright (c) 2001-2008 Joel de Guzman

	Copyright (c) 2001-2008 Peter Dimov

	Copyright (c) 2001-2009 Daniel Nuffer

	Copyright (c) 2001-2009 Joel de Guzman

	Copyright (c) 2001-2009, 2012 Peter Dimov

	Copyright (c) 2001-2009, Hartmut Kaiser

	Copyright (c) 2001-2010 Hartmut Kaiser

	Copyright (c) 2001-2010 Joel de Guzman

	Copyright (c) 2001-2011 - Scilab Enterprises
Updated by Allan Cornet, Sylvestre Ledru.


	Copyright (c) 2001-2011 Hartmut Kaiser

	Copyright (c) 2001-2011 Hartmut Kaiser.

	Copyright (c) 2001-2011 Joel de Guzman

	Copyright (c) 2001-2011 Thomas Bernard

	Copyright (c) 2001-2012 Hartmut Kaiser

	Copyright (c) 2001-2012 Hartmut Kaiser.

	Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost

	Copyright (c) 2001-2012 Joel de Guzman

	Copyright (c) 2001-2013 Hartmut Kaiser

	Copyright (c) 2001-2013 Hartmut Kaiser.

	Copyright (c) 2001-2013 Joel de Guzman

	Copyright (c) 2001-2014 Joel de Guzman

	Copyright (c) 2001-2015 Joel de Guzman

	Copyright (c) 2001-2019 Joel de Guzman

	Copyright (c) 2002

	Copyright (C) 2002 Beman Dawes

	Copyright (c) 2002 Bill Kempf

	Copyright (C) 2002 Brad King (brad.king@kitware.com)
                   Douglas Gregor (gregod@cs.rpi.edu)


	Copyright (C) 2002 Brad King and Douglas Gregor

	Copyright (c) 2002 by Andrei Alexandrescu

	Copyright (C) 2002 David Abrahams

	Copyright (C) 2002 David Abrahams
//

	Copyright (c) 2002 Eric Friedman, Itay Maman

	Copyright (C) 2002 Gary Powell (gwpowell@hotmail.com)

	Copyright (c) 2002 Hartmut Kaiser

	Copyright (C) 2002 Jaakko Jarvi (jaakko.jarvi@cs.utu.fi)

	Copyright (c) 2002 Jeff Westfahl

	Copyright (c) 2002 Jens Maurer

	Copyright (c) 2002 Joel de Guzman

	Copyright (c) 2002 Juan Carlos Arevalo-Baeza

	Copyright (c) 2002 Lars Gullik Bj

	Copyright (c) 2002 Peter Dimov

	Copyright (c) 2002 Peter Dimov and Multi Media Ltd.

	Copyright (c) 2002 Raghavendra Satish

	Copyright (c) 2002 Travis Oliphant all rights reserved

	Copyright (c) 2002, 2003 Peter Dimov

	Copyright (c) 2002, 2003 Peter Dimov and Multi Media Ltd.

	Copyright (C) 2002, 2008, 2013 Peter Dimov


	Copyright (c) 2002, 2009, 2014 Peter Dimov

	Copyright (c) 2002, 2018, 2019 Peter Dimov

	Copyright (c) 2002, Frank Warmerdam

	Copyright (c) 2002,2003 CrystalClear Software, Inc.

	Copyright (c) 2002,2003, 2007 CrystalClear Software, Inc.

	Copyright (c) 2002,2003, 2020 CrystalClear Software, Inc.

	Copyright (c) 2002,2003,2005 CrystalClear Software, Inc.

	Copyright (c) 2002,2003,2005,2020 CrystalClear Software, Inc.

	Copyright (c) 2002,2003,2020 CrystalClear Software, Inc.

	Copyright (c) 2002-2003

	Copyright (C) 2002-2003
// David Moore, William E. Kempf

	Copyright (c) 2002-2003 David Abrahams

	Copyright (c) 2002-2003 Eric Friedman

	Copyright (c) 2002-2003 Eric Friedman, Itay Maman

	Copyright (c) 2002-2003 Hartmut Kaiser

	Copyright (c) 2002-2003 Joel de Guzman

	Copyright (c) 2002-2003 Juan Carlos Arevalo-Baeza

	Copyright (c) 2002-2003 Martin Wille

	Copyright (c) 2002-2003,2005 CrystalClear Software, Inc.

	Copyright (c) 2002-2004 CrystalClear Software, Inc.

	Copyright (c) 2002-2005 CrystalClear Software, Inc.

	Copyright (c) 2002-2005, Jean-Sebastien Roy (js@jeannot.org)

	Copyright (c) 2002-2006 Hartmut Kaiser

	Copyright (C) 2002-2006 Marcin Kalicinski

	Copyright (C) 2002-2007 Marcin Kalicinski

	Copyright (C) 2002-2017 Free Software Foundation, Inc.

	Copyright (c) 2002-2020 CrystalClear Software, Inc.

	Copyright (c) 2003

	Copyright (c) 2003
// Eric Friedman
//

	Copyright (c) 2003   Gerald I. Evenden

	Copyright (c) 2003 Daniel Frey

	Copyright (c) 2003 David Abrahams

	Copyright (c) 2003 Eric Friedman

	Copyright (c) 2003 Eric Friedman, Itay Maman

	Copyright (c) 2003 Gennaro Prota

	Copyright (C) 2003 Gennaro Prota.

	Copyright (c) 2003 Giovanni Bajo

	Copyright (c) 2003 Gustavo Guerra

	Copyright (c) 2003 Hartmut Kaiser

	Copyright (c) 2003 Howard Hinnant

	Copyright (c) 2003 Joel de Guzman

	Copyright (c) 2003 Jonathan de Halleux

	Copyright (c) 2003 Jonathan de Halleux (dehalleux@pelikhan.com)

	Copyright (c) 2003 Martin Wille

	Copyright (c) 2003 Paul Mensonides

	Copyright (c) 2003 Peter Dimov

	Copyright (c) 2003 Peter Dimov  Distributed under the Boost

	Copyright (c) 2003 Thomas Witt

	Copyright (c) 2003 Vaclav Vesely

	Copyright (C) 2003 Vesa Karvonen.

	Copyright (c) 2003 Vladimir Prus.

	Copyright (c) 2003, 2006   Gerald I. Evenden

	Copyright (C) 2003, 2007-14 Massachusetts Institute of Technology

Authors: Martin Reinecke, Peter Bell

	Copyright (C) 2003, 2007-14 Matteo Frigo

	Copyright (C) 2003, 2008 Fernando Luis Cacciola Carballal.

	Copyright (C) 2003, Fernando Luis Cacciola Carballal.

	Copyright (c) 2003, Hartmut Kaiser

	Copyright (c) 2003, The Regents of the University of California, through
Lawrence Berkeley National Laboratory (subject to receipt of any required
approvals from U.S. Dept. of Energy)

All rights reserved.

	Copyright (c) 2003, The Regents of the University of California, through
Lawrence Berkeley National Laboratory (subject to receipt of any required 
approvals from U.S. Dept. of Energy) 

All rights reserved. 

	Copyright (c) 2003-2004 CrystalClear Software, Inc.

	Copyright (c) 2003-2004 Gennaro Prota

	Copyright (C) 2003-2004 Jeremy B. Maitin-Shepard.

	Copyright (c) 2003-2004, 2008 Gennaro Prota

	Copyright (c) 2003-2005

	Copyright (c) 2003-2005 CrystalClear Software, Inc.

	Copyright (c) 2003-2005 Peter Dimov

	Copyright (C) 2003-2005 Peter J. Verveer

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above
   copyright notice, this list of conditions and the following
   disclaimer in the documentation and/or other materials provided
   with the distribution.

3. The name of the author may not be used to endorse or promote

	Copyright (C) 2003-2005 Peter J. Verveer
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above
 *    copyright notice, this list of conditions and the following
 *    disclaimer in the documentation and/or other materials provided
 *    with the distribution.
 *
 * 3. The name of the author may not be used to endorse or promote

	Copyright (C) 2003-2005 Peter J. Verveer
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above
#    copyright notice, this list of conditions and the following
#    disclaimer in the documentation and/or other materials provided
#    with the distribution.
#
# 3. The name of the author may not be used to endorse or promote

	Copyright (c) 2003-2006, 2008 Gennaro Prota

	Copyright (c) 2003-2008 Jan Gaspar

	Copyright (c) 2003-2008 Jan Gaspar


	Copyright (C) 2003-2008 Matthias Christian Schabel

	Copyright (C) 2003-2009 Matthias Christian Schabel

	Copyright (c) 2003-2009, The Regents of the University of California,

	Copyright (c) 2003-2009, The Regents of the University of California,
  through Lawrence Berkeley National Laboratory (subject to receipt of
  any required approvals from U.S. Dept. of Energy) All rights reserved.

  1. Redistribution and use in source and binary forms, with or
  without modification, are permitted provided that the following
  conditions are met:

  (1) Redistributions of source code must retain the copyright
  notice, this list of conditions and the following disclaimer.

  (2) Redistributions in binary form must reproduce the copyright
  notice, this list of conditions and the following disclaimer in
  the documentation and/or other materials provided with the
  distribution.

  (3) Neither the name of the University of California, Lawrence
  Berkeley National Laboratory, U.S. Dept. of Energy nor the names
  of its contributors may be used to endorse or promote products

	Copyright (c) 2003-2011 Christopher M. Kohlhoff (chris at kohlhoff dot com)

	Copyright (c) 2003-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)

	Copyright (c) 2004

	Copyright (c) 2004   Gerald I. Evenden

	Copyright (C) 2004  The Trustees of Indiana University.

	Copyright (c) 2004 Angus Leeming

	Copyright (C) 2004 Arkadiy Vertleyb

	Copyright (c) 2004 CrystalClear Software, Inc.

	Copyright (c) 2004 Daniel Wallin

	Copyright (c) 2004 David M. Cooke <cookedm@physics.mcmaster.ca>

	Copyright (c) 2004 Hartmut Kaiser

	Copyright (c) 2004 Joel de Guzman

	Copyright (c) 2004 John Maddock

	Copyright (c) 2004 Jonathan Brandmeyer

	Copyright (c) 2004 Kristopher Beevers

	Copyright (C) 2004 Peder Holt

	Copyright (c) 2004 Ralf Mattethat
//
//  Permission to copy, use, modify, sell and distribute this software
//  is granted provided this copyright notice appears in all copies.
//  This software is provided "as is" without express or implied
//  warranty, and with no claim as to its suitability for any purpose.

	Copyright (C) 2004 The Trustees of Indiana University

	Copyright (C) 2004 The Trustees of Indiana University.

	Copyright (C) 2004, 2005 Arkadiy Vertleyb

	Copyright (c) 2004-2005 CrystalClear Software, Inc.

	Copyright (c) 2004-2005, Jean-Sebastien Roy (js@jeannot.org)

	Copyright (C) 2004-2006 The Trustees of Indiana University.

	Copyright (C) 2004-2008 The Trustees of Indiana University.

	Copyright (C) 2004-2009 The Trustees of Indiana University.

	copyright (c) 2005

	Copyright (c) 2005 Aaron Windsor

	Copyright (C) 2005 Arkadiy Vertleyb

	Copyright (C) 2005 Arkadiy Vertleyb, Peder Holt.

	Copyright (c) 2005 CrystalClear Software, Inc.

	Copyright (c) 2005 Dan Marsden

	Copyright (C) 2005 Douglas Gregor.

	Copyright (C) 2005 Eric Niebler

	Copyright (c) 2005 Eric Niebler

	Copyright (C) 2005 Igor Chesnokov, mailto:ichesnokov@gmail.com (VC 6.5,VC 7.1

	Copyright (c) 2005 Matthew Calabrese

	Copyright (C) 2005 Peder Holt

	Copyright (C) 2005 Peder Holt
//

	Copyright (c) 2005 Peter Dimov

	Copyright (c) 2005 Peter Dimov.

	Copyright (c) 2005 Stefan Arentz (stefan at soze dot com)

	Copyright (c) 2005 Voipster / Indrek dot Juhani at voipster dot com

	Copyright (C) 2005, 2006 Douglas Gregor <doug.gregor -at- gmail.com>.

	Copyright (C) 2005, 2006 Douglas Gregor.

	Copyright (c) 2005, 2014 Eric Niebler

	Copyright (C) 2005, Fernando Luis Cacciola Carballal.

	Copyright (c) 2005, Rasmus Munk Larsen, Stanford University
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

    * Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above
      copyright notice, this list of conditions and the following
      disclaimer in the documentation and/or other materials provided
      with the distribution.

    * Neither the name of Stanford University nor the names of its
      contributors may be used to endorse or promote products derived
      from this software without specific prior written permission.


	Copyright (C) 2005-2006 Alain Miniussi <alain.miniussi -at- oca.eu>.

	Copyright (c) 2005-2006 Dan Marsden

	Copyright (C) 2005-2006 Douglas Gregor <doug.gregor -at- gmail.com>

	Copyright (C) 2005-2006 Douglas Gregor <doug.gregor -at- gmail.com>.

	Copyright (C) 2005-2006 Douglas Gregor <doug.gregor@gmail.com>.

	Copyright (c) 2005-2006 Joao Abecasis

	Copyright (C) 2005-2006 The Trustees of Indiana University.

	Copyright (c) 2005-2007 Dan Marsden

	Copyright (C) 2005-2007 Peder Holt (VC 7.0

	Copyright (C) 2005-2008 Daniel James.

	Copyright (c) 2005-2008 Hartmut Kaiser

	Copyright (C) 2005-2008 The Trustees of Indiana University.

	Copyright (C) 2005-2009 Jongsoo Park <jongsoo.park -at- gmail.com>

	Copyright (c) 2005-2010 Joel de Guzman

	Copyright (C) 2005-2010 The Trustees of Indiana University.

	Copyright (C) 2005-2011 Daniel James.

	Copyright (c) 2005-2011 Joel de Guzman

	Copyright (c) 2005-2012 Joel de Guzman

	Copyright (c) 2005-2013 Joel de Guzman

	Copyright (c) 2005-2015, Michele Simionato
# All rights reserved.

# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:

#   Redistributions of source code must retain the above copyright
#   notice, this list of conditions and the following disclaimer.
#   Redistributions in bytecode form must reproduce the above copyright
#   notice, this list of conditions and the following disclaimer in
#   the documentation and/or other materials provided with the
#   distribution.


	Copyright (C) 2005-2016 Daniel James

	Copyright (c) 2005-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)

	Copyright (C) 2006  Tiago de Paula Peixoto <tiago@forked.de>

	Copyright (C) 2006 Arkadiy Vertleyb

	Copyright (c) 2006 CrystalClear Software, Inc.

	Copyright (c) 2006 Dan Marsden

	Copyright (c) 2006 Daniel Wallin

	Copyright (C) 2006 Douglas Gregor <doug.gregor -at- gmail.com>

	Copyright (C) 2006 Douglas Gregor <doug.gregor -at- gmail.com>.

	Copyright (c) 2006 Eric Niebler

	Copyright (c) 2006 Joao Abecasis

	Copyright (c) 2006 Johan Rade

	Copyright (c) 2006 John Maddock

	Copyright (c) 2006 Peter Dimov

	Copyright (c) 2006 Piotr Wyderski

	Copyright (c) 2006 Stephen Nutt

	Copyright (C) 2006 Steven Watanabe (VC 8.0)

	Copyright (C) 2006 The Trustees of Indiana University.

	Copyright (C) 2006 Tobias Schwinger

	Copyright (c) 2006 Tobias Schwinger

	Copyright (c) 2006 Tomas Puverle

	Copyright (C) 2006 Trustees of Indiana University

	Copyright (c) 2006 Xiaogang Zhang

	Copyright (c) 2006 Xiaogang Zhang, 2015 John Maddock

	Copyright (c) 2006 Xiaogang Zhang, 2015 John Maddock.

	Copyright (c) 2006, 2007 Julio M. Merino Vidal

	Copyright (C) 2006, 2009 Marcin Kalicinski

	Copyright (c) 2006, Stephan Diederich
//
//  This code may be used under either of the following two licences:
//
//    Permission is hereby granted, free of charge, to any person
//    obtaining a copy of this software and associated documentation

	Copyright (c) 2006, Systems Optimization Laboratory
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

    * Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above
      copyright notice, this list of conditions and the following
      disclaimer in the documentation and/or other materials provided
      with the distribution.

    * Neither the name of Stanford University nor the names of its
      contributors may be used to endorse or promote products derived
      from this software without specific prior written permission.


	Copyright (c) 2006-2007 Matias Capeletto

	Copyright (c) 2006-2007 Tobias Schwinger

	Copyright (c) 2006-2007, Robert Hetland <hetland@tamu.edu>

	Copyright (c) 2006-2008 Alexander Chemeris
// 
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
// 
//   1. Redistributions of source code must retain the above copyright notice,
//      this list of conditions and the following disclaimer.
// 
//   2. Redistributions in binary form must reproduce the above copyright
//      notice, this list of conditions and the following disclaimer in the
//      documentation and/or other materials provided with the distribution.
// 
//   3. The name of the author may be used to endorse or promote products
//      derived from this software without specific prior written permission.
// 

	Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc.

	Copyright (c) 2006-2008 Johan Rade

	Copyright (C) 2006-2009 Dmitry Bufistov and Andrey Parfenov

	Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc.

	Copyright (C) 2006-2009, 2012 Alexander Nasonov

	Copyright (c) 2006-2010 Emil Dotchevski and Reverge Studios, Inc.

	Copyright (C) 2006-2010 The Trustees of Indiana University.

	Copyright (c) 2006-2013 Emil Dotchevski and Reverge Studios, Inc.

	Copyright (c) 2006-2013 The University of Colorado Denver.  All rights
                          reserved.
  

	Copyright (c) 2006-7 John Maddock

	Copyright (C) 2007   Douglas Gregor

	Copyright (C) 2007  Douglas Gregor  <doug.gregor@gmail.com>

	Copyright (C) 2007  Matthias Troyer  <troyer@boost-consulting.com>

	Copyright (c) 2007 - S

	Copyright (C) 2007 Alexey Baskakov

	Copyright (c) 2007 Cybozu Labs, Inc.

	Copyright (c) 2007 Dan Marsden

	Copyright (C) 2007 Douglas Gregor

	Copyright (C) 2007 Douglas Gregor and Matthias Troyer

	Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>

	Copyright (C) 2007 Hartmut Kaiser

	Copyright (c) 2007 Joel de Guzman

	Copyright (c) 2007 John Maddock

	Copyright (C) 2007 Marcin Kalicinski

	Copyright (C) 2007 Matthias Troyer

	Copyright (C) 2007 Peder Holt

	Copyright (c) 2007 Peter Dimov

	Copyright (C) 2007 The Trustees of Indiana University.

	Copyright (C) 2007 The Trustees of Indiana University.

// Authors: Douglas Gregor
//          Andrew Lumsdaine

	Copyright (c) 2007 Tobias Schwinger

	Copyright (C) 2007 Trustees of Indiana University

// Authors: Douglas Gregor
//          Andrew Lumsdaine

	Copyright (c) 2007, 2008 Peter Dimov

	Copyright (C) 2007, 2008 Steven Watanabe, Joseph Gauterin, Niels Dekker

	Copyright (c) 2007, 2008, 2012 Peter Dimov

	Copyright (c) 2007, 2008, Damian Eads
#
# All rights reserved.

	Copyright (c) 2007, 2008, Damian Eads. All rights reserved.
 * Adapted for incorporation into Scipy, April 9, 2008.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *   - Redistributions of source code must retain the above
 *     copyright notice, this list of conditions and the
 *     following disclaimer.
 *   - Redistributions in binary form must reproduce the above copyright
 *     notice, this list of conditions and the following disclaimer
 *     in the documentation and/or other materials provided with the
 *     distribution.
 *   - Neither the name of the author nor the names of its
 *     contributors may be used to endorse or promote products derived
 *     from this software without specific prior written permission.
 *

	Copyright (c) 2007, 2013 John Maddock

	Copyright (c) 2007, 2013 Peter Dimov

	Copyright (c) 2007, 2014 Peter Dimov

	Copyright (c) 2007, Damian Eads. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *   - Redistributions of source code must retain the above
 *     copyright notice, this list of conditions and the
 *     following disclaimer.
 *   - Redistributions in binary form must reproduce the above copyright
 *     notice, this list of conditions and the following disclaimer
 *     in the documentation and/or other materials provided with the
 *     distribution.
 *   - Neither the name of the author nor the names of its
 *     contributors may be used to endorse or promote products derived
 *     from this software without specific prior written permission.
 *

	Copyright (c) 2007, John Travers <jtravs@gmail.com>

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

    * Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above
       copyright notice, this list of conditions and the following
       disclaimer in the documentation and/or other materials provided
       with the distribution.

    * Neither the name of Robert Hetland nor the names of any
       contributors may be used to endorse or promote products derived
       from this software without specific prior written permission.


	Copyright (C) 2007, Tobias Schwinger.

	Copyright (C) 2007-2008 Steven Watanabe

	Copyright (c) 2007-2008 Tobias Schwinger

	Copyright (c) 2007-2009 Ben Hanson (http://www.benhanson.net/)

	Copyright (C) 2007-2009 Steven Watanabe

	Copyright (c) 2007-2009: Joachim Faulhaber

	Copyright (c) 2007-2009: Joachim Faulhaber
+------------------------------------------------------------------------------+

	Copyright (C) 2007-2010 Steven Watanabe

	Copyright (c) 2007-2010: Joachim Faulhaber

	Copyright (c) 2007-2010: Joachim Faulhaber
+------------------------------------------------------------------------------+

	Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2007-2011 Hartmut Kaiser

	Copyright (c) 2007-2011: Joachim Faulhaber

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2013, 2014, 2015, 2017, 2018, 2019.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2013, 2014, 2015, 2017, 2018.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2013, 2014, 2015, 2017.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2013, 2014, 2017, 2018.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2013, 2014, 2018.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2013.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014, 2016, 2017.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014, 2017, 2019.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014-2017.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015-2017.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2016-2020.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2016.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2018, 2019.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2018.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2019, 2020.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2019.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2018-2020.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2018.

	Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2020.

	Copyright (c) 2007-2012: Joachim Faulhaber

	Copyright (c) 2007-2013 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2007-2014 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2007-2014 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014, 2020.

	Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015, 2016.

	Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015, 2017, 2019, 2020.

	Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015.

	Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2007-2016 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2007-2016 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014, 2017.

	Copyright (c) 2007-2016 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014-2018.

	Copyright (c) 2007-2017 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2007-2020 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2020.

	Copyright (C) 2007-8 Anthony Williams

	Copyright (C) 2007-9 Anthony Williams

	Copyright (c) 2008   Gerald I. Evenden

	Copyright (c) 2008 Beman Dawes

	Copyright (C) 2008 Damian Eads
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above
#    copyright notice, this list of conditions and the following
#    disclaimer in the documentation and/or other materials provided
#    with the distribution.
#
# 3. The name of the author may not be used to endorse or promote

	Copyright (C) 2008 Eric Niebler.

	Copyright (c) 2008 Federico J. Fernandez.

	Copyright (c) 2008 Frank Mori Hess

	Copyright (c) 2008 Ilya Sokolov, Boris Schaeling

	Copyright (C) 2008 Ion Gaztanaga

	Copyright (c) 2008 Michael Marcin

	Copyright (c) 2008 Peter Dimov

	Copyright (c) 2008 Rep Invariant Systems, Inc. (info@repinvariant.com)

	Copyright (c) 2008 Roelof Naude (roelof.naude at gmail dot com)

	Copyright (C) 2008 Steven Watanabe

	Copyright (c) 2008, 2009 Peter Dimov

	Copyright (C) 2008, 2009, 2016 Tim Blechmann, based on code by Cory Nelson

	Copyright (c) 2008, 2011 Peter Dimov

	Copyright (C) 2008, 2016 Tim Blechmann

	Copyright (c) 2008, 2018 Peter Dimov

	Copyright (c) 2008-2009 Ben Hanson

	Copyright (c) 2008-2009 Ben Hanson (http://www.benhanson.net/)

	Copyright (c) 2008-2009 Ben Hanson\n";

	Copyright (c) 2008-2009 Emil Dotchevski and Reverge Studios, Inc.

	Copyright (c) 2008-2009 Frank Mori Hess

	Copyright (c) 2008-2009: Joachim Faulhaber

	Copyright (c) 2008-2009: Joachim Faulhaber
+------------------------------------------------------------------------------+

	Copyright (c) 2008-2010 Wolfgang Hoermann and Josef Leydold
 *   Department of Statistics and Mathematics, WU Wien, Austria              *
 *                                                                           *

	Copyright (c) 2008-2010: Joachim Faulhaber

	Copyright (c) 2008-2011 Bruno Lalande, Paris, France.

	Copyright (C) 2008-2011 Daniel James.

	Copyright (c) 2008-2011 Hartmut Kaiser

	Copyright (c) 2008-2011 Hartmut Kaiser\n";

	Copyright (c) 2008-2011: Joachim Faulhaber

	Copyright (c) 2008-2012 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2008-2012 Barend Gehrels, Amsterdam, the Netherlands.


	Copyright (c) 2008-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2018, 2019.

	Copyright (c) 2008-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2018, 2020.

	Copyright (c) 2008-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2018.

	Copyright (c) 2008-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2019.

	Copyright (c) 2008-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2008-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017.

	Copyright (c) 2008-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2018.

	Copyright (c) 2008-2012 Bruno Lalande, Paris, France.

	Copyright (c) 2008-2012 Bruno Lalande, Paris, France.

// This file was modified by Oracle on 2016-2020.

	Copyright (c) 2008-2012 Simonson Lucanus.

	Copyright (c) 2008-2012: Joachim Faulhaber

	Copyright (c) 2008-2013 Bruno Lalande, Paris, France.

	Copyright (C) 2008-2013 Tim Blechmann

	Copyright (c) 2008-2014 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2008-2014 Bruno Lalande, Paris, France.

	Copyright (c) 2008-2015 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2008-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2018, 2019.

	Copyright (c) 2008-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2008-2015 Bruno Lalande, Paris, France.

	Copyright (C) 2008-2016 Daniel James.

	Copyright (c) 2008-2016 Emil Dotchevski and Reverge Studios, Inc.

	Copyright (C) 2008-2016 Tim Blechmann

	Copyright (c) 2008-2017 Bruno Lalande, Paris, France.

	Copyright (c) 2008-2017 Emil Dotchevski and Reverge Studios, Inc.

	Copyright (C) 2008-2018 Lorenzo Caminiti

	Copyright (C) 2008-2019 Lorenzo Caminiti

	Copyright (c) 2009

	Copyright (c) 2009  Hartmut Kaiser

	Copyright (C) 2009 Andrew Sutton

	Copyright (c) 2009 Ben Hanson (http://www.benhanson.net/)

	Copyright (c) 2009 Boris Schaeling

	Copyright (c) 2009 Carl Barron

	Copyright (c) 2009 Chris Hoeppler

	Copyright (c) 2009 Christopher Schmidt

	Copyright (c) 2009 Francois Barel

	Copyright (c) 2009 Frank Mori Hess

	Copyright (C) 2009 Free Software Foundation, Inc. <http://fsf.org/>

	Copyright (c) 2009 Hartmut Kaiser

	Copyright (c) 2009 Helge Bahmann

	Copyright (c) 2009 John Maddock

	Copyright (C) 2009 Pauli Virtanen

	Copyright (c) 2009 Peter Dimov

	Copyright (c) 2009 Phil Endecott

	Copyright (C) 2009 Sebastian Redl

	Copyright (C) 2009 Steven Watanabe

	Copyright (C) 2009 Trustees of Indiana University

	Copyright (c) 2009 Wolfgang Hoermann and Josef Leydold
 *   Department of Statistics and Mathematics, WU Wien, Austria              *
 *                                                                           *

	Copyright (c) 2009, 2011 Helge Bahmann

	Copyright (c) 2009, 2015 Peter Dimov

	Copyright (c) 2009, Gunter Winkler

	Copyright (c) 2009, Marco Guazzone

	Copyright (c) 2009, Motorola, Inc
#
# All Rights Reserved.

	Copyright (C) 2009, Pauli Virtanen <pav@iki.fi>

	Copyright (c) 2009, Spirent Communications, Inc.

	Copyright (c) 2009-2009: Joachim Faulhaber

	Copyright (c) 2009-2010  Wolfgang Hoermann and Josef Leydold
 *   Department of Statistics and Mathematics, WU Wien, Austria              *
 *                                                                           *

	Copyright (c) 2009-2010 Christopher Schmidt

	Copyright (c) 2009-2010 Hartmut Kaiser

	Copyright (c) 2009-2010, Marco Guazzone

	Copyright (c) 2009-2010: Joachim Faulhaber

	Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)

	Copyright (c) 2009-2011 Christopher Schmidt

	Copyright (c) 2009-2011 Mateusz Loskot, London, UK.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2009-2011 Wolfgang Hoermann and Josef Leydold
 *   Department of Statistics and Mathematics, WU Wien, Austria              *
 *                                                                           *

	Copyright (c) 2009-2011: Joachim Faulhaber

	Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2016.

	Copyright (C) 2009-2012 Lorenzo Caminiti

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.


	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2013, 2014, 2017, 2018.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2013, 2014, 2017, 2019.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2013, 2014, 2017.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2013.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014, 2016, 2017, 2018, 2020.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014, 2016, 2017, 2018.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014, 2016, 2018.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2018, 2019.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2018-2020.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2018.

	Copyright (c) 2009-2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2020.

	Copyright (c) 2009-2012 Wolfgang Hoermann and Josef Leydold
 *   Department of Statistics and Mathematics, WU Wien, Austria              *
 *                                                                           *

	Copyright (c) 2009-2012, Marco Guazzone

	Copyright (c) 2009-2013 Mateusz Loskot, London, UK.

	Copyright (c) 2009-2013 Mateusz Loskot, London, UK.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (C) 2009-2013 Tim Blechmann

	Copyright (c) 2009-2014 Mateusz Loskot, London, UK.

	Copyright (c) 2009-2014 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2013-2017.

	Copyright (c) 2009-2014 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014, 2018.

	Copyright (c) 2009-2014 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014, 2019.

	Copyright (c) 2009-2014 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2009-2014 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014.

	Copyright (c) 2009-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2009-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2013, 2015.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014, 2015, 2017.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014, 2015.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2015, 2016, 2017, 2018.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2015, 2016, 2018, 2019.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2015, 2016.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2015, 2017.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2015, 2018.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2015-2018.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2015.

	Copyright (c) 2009-2015 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2018-2020.

	Copyright (c) 2009-2017 Mateusz Loskot, London, UK.

	Copyright (c) 2009-2017 The MathJax Consortium

	Copyright (c) 2009-2020 Vladimir Batov.

	Copyright (c) 2009-2020 Vladimir Batov.
//
// Many thanks to Julian Gonggrijp, Rob Stewart, Andrzej Krzemienski, Matus Chochlik, Jeroen Habraken,
// Hartmut Kaiser, Joel De Guzman, Thijs (M.A.) van den Berg, Roland Bock, Gavin Lambert, Paul Bristow,
// Alex Hagen-Zanker, Christopher Kormanyos for taking part in the Boost.Convert review.

	Copyright (c) 2010      Bryce Lelbach

	Copyright (c) 2010      Eric Niebler

	Copyright (c) 2010 - Jordi Guti


	Copyright (c) 2010 2015 Francisco Jos

	Copyright (c) 2010 Alfredo Correa

	Copyright (c) 2010 Artyom Beilis (Tonkikh)

	Copyright (c) 2010 Athanasios Iliopoulos

	Copyright (c) 2010 Christopher Schmidt

	Copyright (C) 2010 David Fong and Michael Saunders

	Copyright (C) 2010 David Fong and Michael Saunders

LSMR uses an iterative method.

	Copyright (c) 2010 Eric Jourdanneau, Joel Falcou

	Copyright (c) 2010 Eric Niebler

	Copyright (c) 2010 Felipe Tanus, Boris Schaeling

	Copyright (c) 2010 Helge Bahmann

	Copyright (c) 2010 Ilya Murav

	Copyright (c) 2010 Matthias Walter (xammy@xammy.homelinux.net)
 *
 * Authors: Matthias Walter

	Copyright (c) 2010 Neil Groves

	Copyright (c) 2010 Nuovation System Designs, LLC
//    Grant Erickson <gerickson@nuovations.com>
//
//  Reworked somewhat by Marshall Clow; August 2010

	Copyright (C) 2010 Paul A. Bristow added Doxygen comments.

	Copyright (C) 2010 Peder Holt

	Copyright (c) 2010 Thomas Heller

	Copyright (c) 2010 Thomas P. Robitaille

# Many thanks to Craig Markwardt for publishing the Unofficial Format
# Specification for IDL .sav files, without which this Python module would not
# exist (http://cow.physics.wisc.edu/~craigm/idl/savefmt).

	Copyright (C) 2010 Tim Blechmann

	Copyright (c) 2010 Wolfgang Hoermann and Josef Leydold
 *   Department of Statistics and Mathematics, WU Wien, Austria              *
 *                                                                           *

	Copyright (c) 2010-2010: Joachim Faulhaber

	Copyright (c) 2010-2011 Bryce Lelbach

	Copyright (c) 2010-2011 Christopher Schmidt

	Copyright (c) 2010-2011 David Bellot

	Copyright (c) 2010-2011 Thomas Heller

	Copyright (C) 2010-2011 Tim Blechmann

	Copyright (c) 2010-2011: Joachim Faulhaber

	Copyright (c) 2010-2012 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2010-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2018.

	Copyright (c) 2010-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2020.

	Copyright (c) 2010-2017 The MathJax Consortium

	Copyright (c) 2010-2017 The MathJax Consortium
 *
 *  Part of the MathJax library.
 *  See http://www.mathjax.org for details.

	Copyright (C) 2010-2019 Max-Planck-Society
All rights reserved.

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this
  list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this
  list of conditions and the following disclaimer in the documentation and/or
  other materials provided with the distribution.
* Neither the name of the copyright holder nor the names of its contributors may
  be used to endorse or promote products derived from this software without
  specific prior written permission.


	Copyright (C) 2010-2020 Max-Planck-Society

	Copyright (c) 2011

	Copyright (c) 2011      Bryce Lelbach

	Copyright (c) 2011 Aaron Graham

	Copyright (c) 2011 Boris Schaeling (boris@highscore.de)

	Copyright (c) 2011 Brandon Kohn

	Copyright (c) 2011 Bryce Lelbach

	Copyright (c) 2011 Christopher Jefferson

	Copyright (c) 2011 Emil Dotchevski

	Copyright (c) 2011 Eric Niebler

	Copyright (c) 2011 Hartmut Kaiser

	Copyright (c) 2011 Helge Bahmann

	Copyright (C) 2011 J

	Copyright (c) 2011 Jamboree

	Copyright (c) 2011 Jan Frederick Eick

	Copyright (c) 2011 Jeff Flinn, Boris Schaeling

	Copyright (c) 2011 John Maddock

	Copyright (c) 2011 Paul A. Bristow - filename changes for boost-trunk.

	Copyright (c) 2011 Paul A. Bristow comments

	Copyright (c) 2011 Paul A. Bristow incorporated Boost.Math

	Copyright (c) 2011 Paul A. Bristow To incorporate into Boost.Math

	Copyright (c) 2011 Steven Watanabe

	Copyright (c) 2011 Thomas Bernard

	Copyright (c) 2011 Thomas Heller

	Copyright (C) 2011 Tim Blechmann

	Copyright (C) 2011 Vicente J. Botet Escriba

	Copyright (c) 2011, 2012  Martin Lambers <marlam@marlam.de>

	Copyright (c) 2011, 2012 Jeff Flinn, Boris Schaeling

	Copyright (C) 2011, 2016 Tim Blechmann

	Copyright (c) 2011-2011: Joachim Faulhaber

	Copyright (c) 2011-2012

	Copyright (c) 2011-2012 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2011-2012 Barend Gehrels, Amsterdam, the Netherlands.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2011-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2014, 2017.

	Copyright (c) 2011-2012 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2016-2020.

	Copyright (c) 2011-2012 Bruno Lalande, Paris, France.

	Copyright (c) 2011-2012 Mateusz Loskot, London, UK.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2011-2012 Thomas Bernard

	Copyright (C) 2011-2012 Vicente J. Botet Escriba

	Copyright (c) 2011-2012 Wolfgang Hoermann and Josef Leydold
 *   Institute for Statistics and Mathematics, WU Wien, Austria              *
 *                                                                           *

	Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019-2020.

	Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019.

	Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2020.

	Copyright (c) 2011-2013 Andrew Hundt.

	Copyright (C) 2011-2013 Vicente J. Botet Escriba

	Copyright (C) 2011-2013, 2016 Tim Blechmann

	Copyright (c) 2011-2014 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2011-2014 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019-2020.

	Copyright (c) 2011-2014 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019.

	Copyright (c) 2011-2014 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2020.

	Copyright (c) 2011-2014, The OpenBLAS Project
  All rights reserved.
  
  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions are
  met:
  
     1. Redistributions of source code must retain the above copyright
        notice, this list of conditions and the following disclaimer.
  
     2. Redistributions in binary form must reproduce the above copyright
        notice, this list of conditions and the following disclaimer in
        the documentation and/or other materials provided with the
        distribution.
     3. Neither the name of the OpenBLAS project nor the names of 
        its contributors may be used to endorse or promote products 

	Copyright (c) 2011-2015 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2011-2015 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019-2020.

	Copyright (c) 2011-2015 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019.

	Copyright (c) 2011-2015 Akira Takahashi

	Copyright (c) 2011-2015 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2011-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2011-2015 The MathJax Consortium

	Copyright (c) 2011-2016 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019.

	Copyright (c) 2011-2017 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2011-2017 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019-2020.

	Copyright (c) 2011-2017 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019.

	Copyright (c) 2011-2017 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2020.

	Copyright (c) 2011-2017 The MathJax Consortium

	Copyright (c) 2011-2018 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2011-2018 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019-2020.

	Copyright (c) 2011-2018 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019.

	Copyright (c) 2011-2019 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2011-2019 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019.

	Copyright (c) 2011-2019 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2020.

	Copyright (c) 2011-2020 Antony Polukhin

	Copyright (c) 2012   Martin Raspaud

// See also (section 4.4.3.2):

	Copyright (c) 2012 - 2014 Andrey Semashev
 */

	Copyright (c) 2012 - 2014, 2017 Andrey Semashev

	Copyright (C) 2012 Anthony Williams

	Copyright (c) 2012 Artyom Beilis (Tonkikh)

	Copyright (c) 2012 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2012 Boris Schaeling

	Copyright (c) 2012 Bruno Lalande, Paris, France.

	Copyright (C) 2012 David Stone

	Copyright (C) 2012 Flavio De Lorenzi (fdlorenzi@gmail.com)

	Copyright (c) 2012 Google Inc.

	Copyright (c) 2012 Hartmut Kaiser

	Copyright (c) 2012 Kohei Takahashi

	Copyright (C) 2012 Lorenzo Caminiti

	Copyright (c) 2012 Massachusetts Institute of Technology

	Copyright (c) 2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2012 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2018-2020.

	Copyright (c) 2012 Nathan Ridge

	Copyright (c) 2012 Oswin Krause

	Copyright (c) 2012 Paul A. Bristow

	Copyright (c) 2012 Paul Fultz II

	Copyright (C) 2012 Pieter Bastiaan Ober (Integricom).

	Copyright (c) 2012 Robert Ramey

	Copyright (c) 2012 Tim Blechmann

	Copyright (C) 2012 Vicente J. Botet Escriba

	Copyright (C) 2012, Michele Caini.

	Copyright (c) 2012-2012 Andrii Sydorchuk.

	Copyright (c) 2012-2013 Adam Wulkiewicz, Lodz, Poland.

	Copyright (C) 2012-2013 Vicente J. Botet Escriba

	Copyright (c) 2012-2014 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2012-2014 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2012-2014 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2018.

	Copyright (c) 2012-2014 Bruno Lalande, Paris, France.

	Copyright (c) 2012-2014 Kohei Takahashi

	Copyright (c) 2012-2014 Mateusz Loskot, London, UK.

// This file was modified by Oracle on 2014.

	Copyright (c) 2012-2015 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2020.

	Copyright (c) 2012-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015, 2018.

	Copyright (c) 2012-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015.

	Copyright (c) 2012-2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2020.

	Copyright (c) 2012-2020 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2020.

	Copyright (c) 2012-2020 Antony Polukhin

	Copyright (c) 2012-2020 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2012-2020 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2013  Antony Polukhin // Move semantics implementation.

	Copyright (c) 2013  Paul A. Bristow // Doxygen comments changed for new version of documentation.

	Copyright (C) 2013  Pauli Virtanen
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * a. Redistributions of source code must retain the above copyright notice,
 *    this list of conditions and the following disclaimer.
 * b. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * c. Neither the name of Enthought nor the names of the SciPy Developers
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *

	Copyright (c) 2013 - 2014 Andrey Semashev
 */

	Copyright (c) 2013 - 2018, 2020 Andrey Semashev
 */

	Copyright (c) 2013 - 2020 Andrey Semashev
 */

	Copyright (c) 2013 Adam Wulkiewicz, Lodz, Poland

// This file was modified by Oracle on 2020.

	Copyright (c) 2013 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2013 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013, 2014.

	Copyright (c) 2013 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2013 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2020.

	Copyright (c) 2013 Agustin Berge

	Copyright (c) 2013 Anton Bikineev

	Copyright (c) 2013 Antony Polukhin  // Move semantics implementation.


	Copyright (c) 2013 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2013 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2016-2020.

	Copyright (c) 2013 Bruno Lalande, Paris, France.

	Copyright (c) 2013 Carl Barron

	Copyright (c) 2013 Christopher Kormanyos

	Copyright (C) 2013 Eurodecision

	Copyright (C) 2013 Jakob Lykke Andersen, University of Southern Denmark
// (jlandersen@imada.sdu.dk)
//
// The algorithm implemented here is derived from original ideas by
// Pasquale Foggia and colaborators. For further information see
// e.g. Cordella et al. 2001, 2004.

	Copyright (c) 2013 Jamboree

	Copyright (c) 2013 Joaquim Duran

	Copyright (c) 2013 John Maddock, Antony Polukhin
// 

	Copyright (C) 2013 Kenneth L. Ho
#
#   Redistribution and use in source and binary forms, with or without
#   modification, are permitted provided that the following conditions are met:
#
#   Redistributions of source code must retain the above copyright notice, this
#   list of conditions and the following disclaimer. Redistributions in binary
#   form must reproduce the above copyright notice, this list of conditions and
#   the following disclaimer in the documentation and/or other materials
#   provided with the distribution.
#
#   None of the names of the copyright holders may be used to endorse or
#   promote products derived from this software without specific prior written
#   permission.
#

	Copyright (C) 2013 Kenneth L. Ho
#   Redistribution and use in source and binary forms, with or without
#   modification, are permitted provided that the following conditions are met:
#
#   Redistributions of source code must retain the above copyright notice, this
#   list of conditions and the following disclaimer. Redistributions in binary
#   form must reproduce the above copyright notice, this list of conditions and
#   the following disclaimer in the documentation and/or other materials
#   provided with the distribution.
#
#   None of the names of the copyright holders may be used to endorse or
#   promote products derived from this software without specific prior written
#   permission.
#

	Copyright (c) 2013 Kyle Lutz <kyle.r.lutz@gmail.com>

	Copyright (c) 2013 Mateusz Loskot

	Copyright (c) 2013 Mateusz Loskot, London, UK.

	Copyright (c) 2013 Mateusz Loskot, London, UK.
//
// This file was modified by Oracle on 2019-2020.

	Copyright (c) 2013 Paul A. Bristow  // Doxygen comments changed.

	Copyright (c) 2013 Peter Dimov

	Copyright (C) 2013 Sebastian Redl

	Copyright (c) 2013 Tim Blechmann

	Copyright (c) 2013 Tim Blechmann
 * ARM Code by Phil Endecott, based on other architectures.

	Copyright (c) 2013 Tim Blechmann
 * Linux-specific code by Phil Endecott

	Copyright (C) 2013 Vicente J. Botet Escriba

	copyright (c) 2013, 2014 Oracle and/or its affiliates.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	copyright (c) 2013, Oracle and/or its affiliates.

	copyright (c) 2013, Oracle and/or its affiliates.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (C) 2013,2014 Vicente J. Botet Escriba

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland

// This file was modified by Oracle on 2013-2018.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2014.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2017.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2018.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2019.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014, 2018.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014, 2020.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014.

	Copyright (c) 2013-2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2013-2014 Agustin Berge

	Copyright (c) 2013-2014 Damien Buhl

	Copyright (c) 2013-2014 Ion Gaztanaga

	Copyright (c) 2013-2014 Kyle Lutz <kyle.r.lutz@gmail.com>

	Copyright (C) 2013-2014 Vicente J. Botet Escriba

	Copyright (c) 2013-2014, 2020 Andrey Semashev
 */

	copyright (c) 2013-2014, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland

// This file was modified by Oracle on 2013, 2014, 2015, 2017, 2018, 2019.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland

// This file was modified by Oracle on 2013, 2014, 2015, 2017, 2018.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland

// This file was modified by Oracle on 2013-2018.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013, 2014, 2015, 2017.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013, 2014, 2015.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2018.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2015, 2016, 2017, 2019.

	Copyright (c) 2013-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2015, 2017, 2019.

	Copyright (c) 2013-2015 Kyle Lutz <kyle.r.lutz@gmail.com>

	copyright (c) 2013-2015, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2013-2015, Oracle and/or its affiliates.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2013-2017 Adam Wulkiewicz, Lodz, Poland

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2013-2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2013-2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2013-2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2017-2020.

	copyright (c) 2013-2017 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2013-2017 The MathJax Consortium

	copyright (c) 2013-2017, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2013-2017, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2013-2017, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2013-2018 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2013-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2013-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2013-2019 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2013-2019, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2013-2019, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2013-2020 Antony Polukhin

	Copyright (c) 2013-2020 Antony Polukhin.

	copyright (c) 2013-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2013-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2013-2020 Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	copyright (c) 2013-2020, Oracle and/or its affiliates.

	copyright (c) 2013-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2013-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2013-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2013-2020, Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2014      John Fletcher

	Copyright (c) 2014      Tomoki Imai

	Copyright (c) 2014  Joel de Guzman

	Copyright (C) 2014 - 2018 Andrzej Krzemienski.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.


	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2016-2020.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2016.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2018-2020.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2018.

	Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2020.

	Copyright (C) 2014 Agustin Berge

	Copyright (c) 2014 Agustin Berge

	Copyright (c) 2014 Ahmed Charles
//

	Copyright (C) 2014 Andrey Semashev

	Copyright (c) 2014 Andrey Semashev

	Copyright (c) 2014 Andrey Semashev
 */

	Copyright (c) 2014 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2014 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2016, 2018.

	Copyright (c) 2014 Bruno Lalande, Paris, France.

	Copyright (c) 2014 Christoph Weiss

	Copyright (c) 2014 Eric Niebler

	Copyright (C) 2014 Erik Erlandson

	Copyright (c) 2014 Glen Fernandes

	Copyright (c) 2014 Glen Joseph Fernandes
//       (glenjofe@gmail.com)

	Copyright (C) 2014 Glen Joseph Fernandes
//  (glenjofe@gmail.com)
//

	Copyright (c) 2014 Glen Joseph Fernandes
// (glenjofe@gmail.com)
//

	Copyright (C) 2014 Ian Forbed

	Copyright (c) 2014 Jamboree

	Copyright (c) 2014 Joel de Guzman

	Copyright (c) 2014 John Fletcher

	Copyright (c) 2014 Kohei Takahashi

	Copyright (c) 2014 Lee Clagett

	Copyright (c) 2014 Mageswaran.D <mageswaran1989@gmail.com>

	Copyright (c) 2014 Mateusz Loskot, London, UK.

	Copyright (c) 2014 Mathjax Consortium

	Copyright (c) 2014 Oliver Kowalke (oliver dot kowalke at gmail dot com)

	copyright (c) 2014 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014 Paul Fultz II

	Copyright (c) 2014 Peter Dimov

	Copyright (C) 2014 Pieter Bastiaan Ober (Integricom).

	Copyright (c) 2014 Riccardo Marcangelo

	Copyright (c) 2014 Roshan <thisisroshansmail@gmail.com>

	Copyright (c) 2014 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2014, 2017.

	Copyright (c) 2014 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2014 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2020.

	Copyright (c) 2014 Thomas Bernard

	Copyright (C) 2014 Vicente J. Botet Escriba

	Copyright (C) 2014, 2015 Andrzej Krzemienski.

	Copyright (c) 2014, 2015, 2016, 2017 Jarryd Beck

	Copyright (c) 2014, 2018, 2019, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014, 2018, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014, 2018, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014, 2019 Andrey Semashev
 */

	Copyright (c) 2014, 2019, 2020 Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014, 2019, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014, 2019, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014, 2020 Andrey Semashev
 */

	Copyright (C) 2014, Andrzej Krzemienski.

	Copyright (c) 2014, Athanasios Iliopoulos

	Copyright (c) 2014, Oracle and/or its affiliates.

	copyright (c) 2014, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (c) 2014, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2014, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014,2015,2018 Kohei Takahashi

	Copyright (c) 2014,2018 Kohei Takahashi

	Copyright (c) 2014-2015 Adam Wulkiewicz, Lodz, Poland

// This file was modified by Oracle on 2015.

	Copyright (c) 2014-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2014-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014, 2015, 2016, 2017, 2019.

	Copyright (c) 2014-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014, 2015, 2016, 2017.

	Copyright (c) 2014-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2014-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2015, 2018.

	Copyright (c) 2014-2015 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2014-2015 Adam Wulkiewicz, Lodz, Poland.
//
// This file was modified by Oracle on 2019-2020.

	Copyright (c) 2014-2015 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2014-2015 Bruno Lalande, Paris, France.

	Copyright (c) 2014-2015 John Fletcher

	Copyright (c) 2014-2015 Kohei Takahashi

	Copyright (c) 2014-2015 Mateusz Loskot, London, UK.

	copyright (c) 2014-2015 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2015, 2016, 2017, 2018, 2019.

	Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2015, 2016, 2017, 2018.

	Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2015, 2016, 2017.

	Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2015, 2017, 2018.

	Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2015-2018.

	Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France.

// This file was modified by Oracle on 2015.

	Copyright (C) 2014-2015 Vicente J. Botet Escriba

	Copyright (c) 2014-2015, Oracle and/or its affiliates.

	Copyright (c) 2014-2015, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (C) 2014-2016 Andrzej Krzemienski.

	Copyright (c) 2014-2016 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014-2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2014-2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2014-2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2017, 2019.

	Copyright (c) 2014-2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2017-2020.

	copyright (c) 2014-2017 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2017 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (c) 2014-2017 The MathJax Consortium

	Copyright (C) 2014-2017 Vicente J. Botet Escriba

	Copyright (c) 2014-2017, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2017, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014-2018 Adam Wulkiewicz, Lodz, Poland.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2014-2018 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2018 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2018 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014-2018, 2020 Andrey Semashev
 */

	Copyright (c) 2014-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2014-2019 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2014-2019, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014-2019, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014-2020 Andrey Semashev
 */

	Copyright (c) 2014-2020 Antony Polukhin

	copyright (c) 2014-2020 Oracle and/or its affiliates.

	copyright (c) 2014-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2014-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (c) 2014-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2020 Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	copyright (c) 2014-2020 Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2014-2020, Oracle and/or its affiliates.

	copyright (c) 2014-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2014-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2014-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Adeel Ahmad, as part of Google Summer of Code 2018 program

	copyright (c) 2014-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2014-2020, Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	copyright (c) 2014-2020, Oracle and/or its affiliates.
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (C) 2015 - 2017 Andrzej Krzemienski.

	Copyright (c) 2015 Agustin K-ballo Berge

	Copyright (c) 2015 Andrey Semashev
 */

	Copyright (C) 2015 Andrzej Krzemienski.

	Copyright (c) 2015 Artyom Beilis (Tonkikh)

	Copyright (c) 2015 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015, 2017, 2018.

	Copyright (c) 2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2017, 2018.

	Copyright (c) 2015 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2018.

	Copyright (c) 2015 Francisco Jos

	Copyright (c) 2015 Ion Gaztanaga

	Copyright (c) 2015 Jakub Pola <jakub.pola@gmail.com>

	Copyright (c) 2015 Jakub Szuppe <j.szuppe@gmail.com>

	Copyright (c) 2015 John Fletcher

	Copyright (c) 2015 John Maddock

	Copyright (c) 2015 Kohei Takahashi

	Copyright (c) 2015 Mario Lang

	Copyright (c) 2015 Muhammad Junaid Muzammil <mjunaidmuzammil@gmail.com>

	copyright (c) 2015 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015 Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (c) 2015 Orson Peters
//  This software is provided 'as-is', without any express or implied warranty. In no event will the
//  authors be held liable for any damages arising from the use of this software.
//  Permission is granted to anyone to use this software for any purpose, including commercial
//  applications, and to alter it and redistribute it freely, subject to the following restrictions:

	Copyright (c) 2015 Orson Peters <orsonpeters@gmail.com>
    
    This software is provided 'as-is', without any express or implied warranty. In no event will the
    authors be held liable for any damages arising from the use of this software.

	Copyright (c) 2015 Paul Fultz II

	Copyright (c) 2015 Robert Ramey

	Copyright (C) 2015 Sebastian Redl

	Copyright (c) 2015 Seth Heeren

	Copyright (C) 2015 Vicente J. Botet Escriba

	copyright (c) 2015, 2018, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (c) 2015, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (c) 2015, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015, Oracle and/or its affiliates.
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// 

	Copyright (C) 2015, Pauli Virtanen <pav@iki.fi>

	Copyright (c) 2015-2016 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2018-2020.

	copyright (c) 2015-2016 Oracle and/or its affiliates.

	Copyright (c) 2015-2016 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2016, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	Copyright (c) 2015-2017 Martin Hensel

	copyright (c) 2015-2017 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015-2017 The MathJax Consortium

	Copyright (c) 2015-2017, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2017, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2017, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (C) 2015-2018 Andrzej Krzemienski.

	Copyright (c) 2015-2018 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2019 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2019 Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015-2019 Vinnie Falco (vinnie dot falco at gmail dot com)

	copyright (c) 2015-2019, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015-2020 Antony Polukhin

	Copyright (c) 2015-2020 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2015-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

	copyright (c) 2015-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2020, Oracle and/or its affiliates.

	Copyright (c) 2015-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2015-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Contributed and/or modified by Adeel Ahmad, as part of Google Summer of Code 2018 program

	Copyright (c) 2015-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2015-2020, Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	copyright (c) 2015-2020, Oracle and/or its affiliates.
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2016      Kohei Takahashi

	Copyright (C) 2016 Andrzej Krzemienski

	Copyright (C) 2016 Andrzej Krzemienski.

	Copyright (c) 2016 Barrett Adair

	Copyright (c) 2016 Francisco Jos

	Copyright (c) 2016 Francisco Jose Tapia (fjtapia@gmail.com )\n

	Copyright (c) 2016 Frank Hein, maxence business consulting gmbh

	Copyright (c) 2016 Jakub Szuppe <j.szuppe@gmail.com>

	Copyright (C) 2016 K. Noel Belcourt <kbelco -at- sandia.gov>.

	Copyright (c) 2016 Klemens D. Morgenstern

	Copyright (c) 2016 Kohei Takahashi

	Copyright (c) 2016 Lee Clagett

	Copyright (c) 2016 Modified Work Barrett Adair

	Copyright (c) 2016 Norbert Wenzel

// This file was modified by Oracle on 2020.

	copyright (c) 2016 Oracle and/or its affiliates.

	Copyright (c) 2016 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2016 Paul Fultz II

	Copyright (c) 2016 Peter Dimov

	Copyright (c) 2016 Wenzel Jakob <wenzel.jakob@epfl.ch>, All rights reserved.

  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this
     list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice,
     this list of conditions and the following disclaimer in the documentation
     and/or other materials provided with the distribution.

  3. Neither the name of the copyright holder nor the names of its contributors
     may be used to endorse or promote products derived from this software
     without specific prior written permission.


	Copyright (c) 2016, 2018 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2016, Oracle and/or its affiliates.

	copyright (c) 2016, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2016--2017 Felix Lenders

	Copyright (c) 2016-2017 The MathJax Consortium

	Copyright (c) 2016-2017, Oracle and/or its affiliates.

	Copyright (C) 2016-2018  ERGO-Code
 *

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Build initial triangular factors

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Build rowwise and columnwise form of L and U

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Computes the 1-norm and infinity-norm of the matrix that was freshly
 * factorized. Unit cols inserted by the factorization are handled implicitly.

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Data file implementation

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Depth first search in a graph

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Forrest-Tomlin update with reordering

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Functions to load/save/reset struct lu objects

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Implementation of doubly linked lists (see [1] section 5.5)

	Copyright (C) 2016-2018  ERGO-Code
 *
 * LINPACK condition number estimate

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Stability test of fresh LU factorization based on relative residual.

	Copyright (C) 2016-2018  ERGO-Code
 *
 * Symbolic solve with triangular matrix

	copyright (c) 2016-2018 Oracle and/or its affiliates.

	Copyright (c) 2016-2018 Oracle and/or its affiliates.

	Copyright (C) 2016-2018 T. Zachary Laine

	Copyright (C) 2016-2019  ERGO-Code
 *
 * Bump factorization driver routine

	Copyright (C) 2016-2019  ERGO-Code
 *
 * Pivot elimination from active submatrix

	Copyright (C) 2016-2019  ERGO-Code
 *
 * Search for pivot element with small Markowitz cost. An eligible pivot
 * must be nonzero and satisfy

	Copyright (C) 2016-2019  ERGO-Code
 *
 * Setup data structures for bump factorization

	Copyright (c) 2016-2019 Damian Jarek (damian dot jarek93 at gmail dot com)

	Copyright (c) 2016-2019 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2016-2019 Viktor Kirilov

	Copyright (c) 2016-2019 Vinnie Falco (vinnie dot falco at gmail dot com)

	copyright (c) 2016-2019, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2016-2020 Antony Polukhin

	Copyright (c) 2016-2020 Antony Polukhin
//

	Copyright (c) 2016-2020 Oracle and/or its affiliates.

	copyright (c) 2016-2020 Oracle and/or its affiliates.

	Copyright (c) 2016-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2016-2020, Oracle and/or its affiliates.

	Copyright (c) 2016-2020, Oracle and/or its affiliates.

	copyright (c) 2016-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2016-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (C) 2017

	Copyright (c) 2017 - 2018 Andrey Semashev
 */

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.


	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013, 2014, 2015, 2017, 2018.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2013-2020.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014-2020.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2015, 2017, 2018, 2019.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2015-2020.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2015.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2016, 2018.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2016-2020.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2017, 2019.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2017-2020.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2018.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2019-2020.

	Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2020.

	Copyright (c) 2017 Andrey Semashev
 */

	Copyright (C) 2017 Andrzej Krzemienski.

	Copyright (c) 2017 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2017 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2020.

	Copyright (C) 2017 Daniela Engert

	Copyright (c) 2017 Denis Demidov <dennis.demidov@gmail.com>

	Copyright (c) 2017 Dynatrace

	Copyright (c) 2017 Francisco Jos

	Copyright (c) 2017 Francisco Jose Tapia (fjtapia@gmail.com )\n

	Copyright (C) 2017 Glen Joseph Fernandes (glenjofe@gmail.com)

	Copyright (c) 2017 James E. King III

	Copyright (C) 2017 James E. King III

	Copyright (c) 2017 John Maddock

	Copyright (c) 2017 Klemens D. Morgenstern

	Copyright (c) 2017 Kohei Takahashi

	Copyright (c) 2017 Kristian Popov <kristian.popov@outlook.com>

	Copyright (C) 2017 Michel Morin.

	copyright (c) 2017 Oracle and/or its affiliates.

	Copyright (c) 2017 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2017 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2017 Robert Ramey

	Copyright (c) 2017 Vinnie Falco (vinnie dot falco at gmail dot com)

	Copyright (c) 2017, 2018 James E. King III

	Copyright (c) 2017, 2019 Oracle and/or its affiliates.

	copyright (c) 2017, 2019 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2017, 2019, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2017, Oracle and/or its affiliates.

	Copyright (c) 2017, Oracle and/or its affiliates.

	Copyright (c) 2017-2017 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2017-2017 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2020.

	Copyright (c) 2017-2018 Alexandr Poltavsky, Antony Polukhin.

	Copyright (c) 2017-2018 Chris Beck

	Copyright (c) 2017-2018 Oracle and/or its affiliates.

	copyright (c) 2017-2018 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2017-2018 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle

	Copyright (c) 2017-2018 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2017-2018, Oracle and/or its affiliates.

	copyright (c) 2017-2018, Oracle and/or its affiliates.

	Copyright (c) 2017-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2017-2018, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2017-2019 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2017-2019, Oracle and/or its affiliates.

	Copyright (c) 2017-2019, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2017-2020 Oracle and/or its affiliates.

	copyright (c) 2017-2020 Oracle and/or its affiliates.

	Copyright (c) 2017-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2017-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2017-2020 Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2017-2020, Oracle and/or its affiliates.

	copyright (c) 2017-2020, Oracle and/or its affiliates.

	copyright (c) 2017-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2017-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2017-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2017-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle.

	copyright (c) 2017-2020, Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2018 Adam Butcher, Antony Polukhin

	Copyright (c) 2018 Adam Wulkiewicz, Lodz, Poland.


	Copyright (c) 2018 Adam Wulkiewicz, Lodz, Poland.

// This file was modified by Oracle on 2014, 2016, 2017.

	Copyright (c) 2018 Adeel Ahmad, Islamabad, Pakistan.

// Contributed and/or modified by Adeel Ahmad,
//   as part of Google Summer of Code 2018 program.

	Copyright (c) 2018 Adeel Ahmad, Islamabad, Pakistan.

// Contributed and/or modified by Adeel Ahmad, as part of Google Summer of Code 2018 program.

	Copyright (c) 2018 agate-pris

	Copyright (C) 2018 Alain Miniussi <alain.miniussi -at- oca.eu>.

	Copyright (C) 2018 Alain Miniussi <alain.miniussi@oca.eu>.

	Copyright (c) 2018 Andrey Semashev

	Copyright (c) 2018 Andrey Semashev
 */

	Copyright (c) 2018 Artyom Beilis (Tonkikh)

	Copyright (c) 2018 ERGO-Code. See license.txt for license.
//
// Example for using IPX from its C++ interface. The program solves the Netlib
// problem afiro.

	Copyright (c) 2018 Evgeny Shulgin

	Copyright (c) 2018 Fady Essam

	Copyright (c) 2018 Jakub Szuppe <j.szuppe@gmail.com>

	Copyright (c) 2018 James E. King III

	Copyright (c) 2018 Klemens D. Morgenstern

	Copyright (c) 2018 Kohei Takahashi

	copyright (c) 2018 Oracle and/or its affiliates.

	copyright (c) 2018 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2018 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle

	Copyright (c) 2018 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2018 Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (C) 2018 Peter Dimov

	Copyright (c) 2018 Sergei Fedorov

	Copyright (c) 2018 Stefan Seefeld

	Copyright (c) 2018 Sylvain Gubian <sylvain.gubian@pmi.com>,
# Yang Xiang <yang.xiang@pmi.com>
# Author: Sylvain Gubian, PMP S.A.
"""
Unit tests for the dual annealing global optimizer

	Copyright (c) 2018 Sylvain Gubian <sylvain.gubian@pmi.com>,
# Yang Xiang <yang.xiang@pmi.com>
# Author: Sylvain Gubian, Yang Xiang, PMP S.A.


	Copyright (c) 2018 Yaghyavardhan Singh Khangarot, Hyderabad, India.
// Contributed and/or modified by Yaghyavardhan Singh Khangarot,
//   as part of Google Summer of Code 2018 program.

// This file was modified by Oracle on 2018.

	Copyright (c) 2018 Yi Ji

	copyright (c) 2018, 2019, Oracle and/or its affiliates.

	copyright (c) 2018, 2019, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2018, Cem Bassoy, cem.bassoy@gmail.com

	Copyright (c) 2018, Oracle and/or its affiliates.

	copyright (c) 2018, Oracle and/or its affiliates.

	copyright (c) 2018, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2018, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle

	Copyright (c) 2018, Quansight-Labs
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this
  list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice,
  this list of conditions and the following disclaimer in the documentation
  and/or other materials provided with the distribution.

* Neither the name of the copyright holder nor the names of its
  contributors may be used to endorse or promote products derived from
  this software without specific prior written permission.


	Copyright (c) 2018-2019

	Copyright (c) 2018-2019 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2018-2019 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2020.

	Copyright (c) 2018-2019 ERGO-Code. See license.txt for license.

#ifndef IPX_DIAGONAL_PRECOND_H_
#define IPX_DIAGONAL_PRECOND_H_

	Copyright (c) 2018-2019 ERGO-Code. See license.txt for license.

#ifndef IPX_KKT_SOLVER_DIAG_H_
#define IPX_KKT_SOLVER_DIAG_H_

	Copyright (c) 2018-2019 ERGO-Code. See license.txt for license.

#include "diagonal_precond.h"
#include <cassert>
#include <cmath>
#include <vector>
#include "timer.h"

	Copyright (c) 2018-2019 ERGO-Code. See license.txt for license.

#include "kkt_solver_diag.h"
#include <cassert>
#include <cmath>
#include "conjugate_residuals.h"

	Copyright (c) 2018-2019 Oracle and/or its affiliates.

	Copyright (c) 2018-2019, Cem Bassoy, cem.bassoy@gmail.com

	copyright (c) 2018-2019, Oracle and/or its affiliates.

	Copyright (c) 2018-2019, Oracle and/or its affiliates.

	Copyright (c) 2018-2020 Antony Polukhin

	Copyright (c) 2018-2020 Emil Dotchevski and Reverge Studios, Inc.

	copyright (c) 2018-2020 Oracle and/or its affiliates.

	Copyright (c) 2018-2020 Oracle and/or its affiliates.

	copyright (c) 2018-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2018-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2018-2020 Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	copyright (c) 2018-2020, Oracle and/or its affiliates.

	Copyright (c) 2018-2020, Oracle and/or its affiliates.

	copyright (c) 2018-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2018-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2018-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2018-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2018-2020, Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2018-2021  ERGO-Code

	Copyright (c) 2019 - 2020 Alexander Grund

	Copyright (c) 2019 agate-pris

	Copyright (c) 2019 Andrey Semashev

	Copyright (c) 2019 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2019 Barend Gehrels, Amsterdam, the Netherlands.


	Copyright (c) 2019 Damian Jarek(damian.jarek93@gmail.com)

	Copyright (c) 2019 Dario Menendez, Banco Santander

	Copyright (c) 2019 Joel de Guzman

	Copyright (c) 2019 Klemens D. Morgenstern

	Copyright (C) 2019 Max-Planck-Society

	Copyright (c) 2019 Mika Fischer (mika.fischer@zoopnet.de)

	copyright (c) 2019 Oracle and/or its affiliates.

	copyright (c) 2019 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2019 Oracle and/or its affiliates.

// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (C) 2019 Peter Bell
 *  \author Martin Reinecke
 *  \author Peter Bell
 */

	Copyright (c) 2019 Peter Dimov (pdimov at gmail dot com),
//                    Vinnie Falco (vinnie.falco@gmail.com)

	Copyright (C) 2019 T. Zachary Laine

	Copyright (c) 2019 Vinnie Falco (vinnie.falco@gmail.com)

	Copyright (c) 2019, Oracle and/or its affiliates.

	Copyright (c) 2019, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2019-2019 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2019-2020 Alexander Grund

	Copyright (c) 2019-2020 Antony Polukhin

	Copyright (c) 2019-2020 Antony Polukhin.

	Copyright (c) 2019-2020 Krystian Stasiowski (sdkrystian at gmail dot com)

	copyright (c) 2019-2020 Oracle and/or its affiliates.

	copyright (c) 2019-2020 Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (C) 2019-2020 Peter Bell

For the odd-sized DCT-IV transforms:

	Copyright (c) 2019-2020, Oracle and/or its affiliates.

	Copyright (c) 2019-2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	Copyright (c) 2020

	Copyright (c) 2020      Jeff Trull

	Copyright (c) 2020 Alexander Grund

	Copyright (c) 2020 Andrey Semashev

	Copyright (c) 2020 Andrey Semashev
 */

	Copyright (c) 2020 Barend Gehrels, Amsterdam, the Netherlands.

	Copyright (c) 2020 Barend Gehrels, Amsterdam, the Netherlands.

// This file was modified by Oracle on 2020.

	Copyright (c) 2020 Caian Benedicto, Campinas, Brazil.
//
// This file was modified by Oracle on 2019-2020.

	Copyright (c) 2020 Caian Benedicto, Campinas, Brazil.
//
// This file was modified by Oracle on 2019.

	Copyright (c) 2020 Digvijay Janartha, Hamirpur, India.

// This file was modified by Oracle on 2020.

	Copyright (c) 2020 John Maddock

	Copyright (c) 2020 Krystian Stasiowski (sdkrystian at gmail dot com)

	Copyright (c) 2020 Krystian Stasiowski (sdkrystian@gmail.com)

	Copyright (c) 2020 Michael Feldmeier

	Copyright (c) 2020 Nikita Kniazev

	copyright (c) 2020 Oracle and/or its affiliates.

	Copyright (c) 2020 Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	copyright (c) 2020 Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2020 Richard Hodges (hodges.r@gmail.com)

	Copyright (c) 2020 Vinnie Falco (vinnie.falco@gmail.com)

	Copyright (c) 2020, Debabrata Mandal <mandaldebabrata123@gmail.com>

	copyright (c) 2020, Oracle and/or its affiliates.

	Copyright (c) 2020, Oracle and/or its affiliates.

	Copyright (c) 2020, Oracle and/or its affiliates.

// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

	copyright (c) 2020, Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2020, Oracle and/or its affiliates.
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle

// Parts of Boost.Geometry are redesigned from Geodan's Geographic Library

	Copyright (c) 2021 ERGO-Code


	Copyright (c) 2021 Orson Peters

    This software is provided 'as-is', without any express or implied warranty. In no event will the
    authors be held liable for any damages arising from the use of this software.

	Copyright (c) 2021 Orson Peters <orsonpeters@gmail.com>

This software is provided 'as-is', without any express or implied warranty. In no event will the
authors be held liable for any damages arising from the use of this software.

	Copyright (c) 2021-04-21 St

	Copyright (c) 2022 ERGO-Code under MIT licence terms\n");
}

	Copyright (c) 2022 Two Blue Cubes Ltd. All rights reserved.

	Copyright (c) 2106 Klemens D. Morgenstern

	Copyright (c) Aaron Windsor 2007

	Copyright (c) Alexander Zaitsev <zamazan4ik@gmail.by>, 2017.

	Copyright (c) Alexander Zaitsev <zamazan4ik@gmail.com>, 2016

	Copyright (c) Alexander Zaitsev <zamazan4ik@gmail.com>, 2017

	Copyright (c) Andrey Semashev 2017

	Copyright (c) Beman Dawes 2011

	Copyright (c) Beman Dawes 2015

	Copyright (C) Benjamin Sobotta 2012

	Copyright (c) Charles Karney (2008-2017) <charles@karney.com> and licensed

	Copyright (c) Chris Glover, 2016.
//

	Copyright (C) Christof Meerwald 2003

	Copyright (c) Christopher Diggins 2005

	Copyright (C) Damian Eads, 2007-2008. New BSD License.

# hierarchy.py (derived from cluster.py, http://scipy-cluster.googlecode.com)

	Copyright (C) Damian Eads, 2007-2008. New BSD License.

__all__ = [
    'braycurtis',
    'canberra',
    'cdist',
    'chebyshev',
    'cityblock',
    'correlation',
    'cosine',
    'dice',
    'directed_hausdorff',
    'euclidean',
    'hamming',
    'is_valid_dm',
    'is_valid_y',
    'jaccard',
    'jensenshannon',
    'kulsinski',
    'kulczynski1',
    'mahalanobis',
    'minkowski',
    'num_obs_dm',
    'num_obs_y',
    'pdist',
    'rogerstanimoto',
    'russellrao',
    'seuclidean',
    'sokalmichener',
    'sokalsneath',
    'sqeuclidean',
    'squareform',
    'yule'

	Copyright (C) Dan Watkins 2003

	Copyright (c) David Abrahams 2001.

	Copyright (c) Donald Stufft and individual contributors.
# All rights reserved.

# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:

#     1. Redistributions of source code must retain the above copyright notice,
#        this list of conditions and the following disclaimer.

#     2. Redistributions in binary form must reproduce the above copyright
#        notice, this list of conditions and the following disclaimer in the
#        documentation and/or other materials provided with the distribution.


	Copyright (c) Douglas Gregor 2004

	Copyright (C) Douglas Gregor 2008

	Copyright (c) Glen Joseph Fernandes 2019 (glenjofe@gmail.com)

	Copyright (c) Intel Corporation 2008.

	Copyright (c) Jeremy Siek 2001

	Copyright (c) Jeremy Siek 2001, Marc Wintermantel 2002

	Copyright (c) Jeremy Siek 2001-2003.

	Copyright (c) Kevlin Henney 2001

	Copyright (c) Marshall Clow 2008-2012.

	Copyright (c) Marshall Clow 2010-2012.

	Copyright (c) Marshall Clow 2011-2012.

	Copyright (c) Marshall Clow 2012-2012.

	Copyright (c) Marshall Clow 2012-2015.

	Copyright (c) Marshall Clow 2014.

	Copyright (c) Marshall Clow 2017.

	Copyright (c) Microsoft Corporation 2014

	Copyright (c) Pablo Aguilar 2005

	Copyright (C) Piers Lawrence.
  All rights reserved.

  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this
  list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice,
  this list of conditions and the following disclaimer in the documentation
  and/or other materials provided with the distribution.

  3. Neither the name of the copyright holder nor the names of its contributors
  may be used to endorse or promote products derived from this software without
  specific prior written permission.


	Copyright (c) T. Zachary Laine 2018.

	Copyright (c) Thomas Witt 2002.

	Copyright (c) Tobias Schwinger

	Copyright (C) Vladimir Prus 2003

	Copyright (C) Vladimir Prus 2003.

	Copyright 1984 - 1994 by Stephen L. Moshier
 *                                                                           *
 *   Alternatively, we also can use the functions from the Rmath library     *
 *   from the R project for statistical computing, http://www.R-project.org/ *

	Copyright 1984, 1987 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */

	Copyright 1984, 1987, 1988 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */

	Copyright 1984, 1987, 1988 by Stephen L. Moshier
Direct inquiries to 30 Frost Street, Cambridge, MA 02140
*/

	Copyright 1984, 1987, 1988, 1992 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */

	Copyright 1984, 1987, 1988, 1992, 2000 by Stephen L. Moshier
*/

	Copyright 1984, 1987, 1988, 2000 by Stephen L. Moshier
 *
 * And other parts:
 *

	Copyright 1984, 1987, 1988, 2000 by Stephen L. Moshier
 */

	Copyright 1984, 1987, 1989 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 *
 * Feb, 2002:  altered by Travis Oliphant
 * so that it is called with argument m
 * (which gets immediately converted to m1 = 1-m)

	Copyright 1984, 1987, 1989 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */

	Copyright 1984, 1987, 1989 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */
#include <Python.h>
#include <numpy/npy_math.h>

	Copyright 1984, 1987, 1989, 1992 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */

	Copyright 1984, 1987, 1989, 1992, 2000 by Stephen L. Moshier
 */

	Copyright 1984, 1987, 1989, 1992, 2000 by Stephen L. Moshier
*/

	Copyright 1984, 1987, 1989, 1995 by Stephen L. Moshier
 */

	Copyright 1984, 1987, 1989, 1995 by Stephen L. Moshier
*/

	Copyright 1984, 1987, 1989, 2000 by Stephen L. Moshier
 */

	Copyright 1984, 1987, 1989, 2000 by Stephen L. Moshier
*/

	Copyright 1984, 1987, 1992, 2000 by Stephen L. Moshier
 */

	Copyright 1984, 1987, 1993 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */

	Copyright 1984, 1987, 1995 by Stephen L. Moshier
 */

	Copyright 1984, 1987, 2000 by Stephen L. Moshier
 */

	Copyright 1984, 1991 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */

	Copyright 1984, 1995 by Stephen L. Moshier
 */

	Copyright 1984, 1995, 2000 by Stephen L. Moshier

  This software is derived from the Cephes Math Library and is
  incorporated herein by permission of the author.

	Copyright 1984, 1995, 2000 by Stephen L. Moshier
*/

	Copyright 1984, 1996 by Stephen L. Moshier
 */

	Copyright 1985 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140 */

/* Sources
 * [1] NIST, "The Digital Library of Mathematical Functions", dlmf.nist.gov

	Copyright 1985, 1987 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */

	Copyright 1985, 1987 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140 */

#include "mconf.h"

	Copyright 1985, 1987, 1989 by Stephen L. Moshier
 * Direct inquiries to 30 Frost Street, Cambridge, MA 02140
 */

	Copyright 1985, 1987, 2000 by Stephen L. Moshier
 */

	Copyright 1985, 1987, 2000 by Stephen L. Moshier
*/

	Copyright 1987-, A. Volgenant/Amsterdam School of Economics,

	Copyright 1991: Dieter Kraft, FHM
C*                                                                     *
C***********************************************************************

      INTEGER          il, im, ir, is, iter, iu, iv, iw, ix, l_w, l_jw,
     *                 jw(l_jw), la, m, meq, mineq, mode, n

	Copyright 1997, 1998, 1999, 2000 University of Notre Dame.

	Copyright 1997, 1998, 1999, 2000 University of Notre Dame.
// Authors: Andrew Lumsdaine, Lie-Quan Lee, Jeremy G. Siek
//

	Copyright 1997-2001 University of Notre Dame.

	Copyright 1997-2008 by Agner Fog.

	Copyright 1999 Travis Oliphant

	Copyright 1999, 2000 Jaakko Jarvi (jaakko.jarvi@cs.utu.fi)

	Copyright 1999-2003 Aleksey Gurtovoy.  Use, modification, and distribution are

	Copyright 2000 by Alan Genz.

	Copyright 2000 Jens Maurer

	Copyright 2000 Jeremy Siek (jsiek@lsc.nd.edu)

	Copyright 2000 John Maddock (john@johnmaddock.co.uk)

	Copyright 2000 University of Notre Dame.

	Copyright 2001 Indiana University

	Copyright 2001 John Maddock.

	Copyright 2001 Universite Joseph Fourier, Grenoble.

	Copyright 2001 University of Notre Dame.

	Copyright 2001, 2003, 2004, 2012 Daryle Walker.  Use, modification, and

	Copyright 2001, 2004, 2011 Daryle Walker.

	Copyright 2002 Aleksey Gurtovoy (agurtovoy@meta-comm.com)

	Copyright 2002 Brad King and Douglas Gregor

	Copyright 2002 Daryle Walker

	Copyright 2002 Gary Strangman.  All rights reserved

	Copyright 2002 H Lohninger, TU Wein

	Copyright 2002 Herv

	Copyright 2002 Indiana University.

	Copyright 2002 Marc Wintermantel (wintermantel@even-ag.ch)

	Copyright 2002 Pearu Peterson all rights reserved,

	Copyright 2002 Rensselaer Polytechnic Institute

	Copyright 2002 The Trustees of Indiana University.

	Copyright 2002 The Trustees of Indiana University.


	Copyright 2002, 2005 Daryle Walker

	Copyright 2002, 2005 Daryle Walker.  Use, modification, and distribution

	Copyright 2002, 2009 Peter Dimov

	Copyright 2002, 2009, 2014 Peter Dimov

	Copyright 2002, 2020 Peter Dimov

	Copyright 2002-2003 Guillaume Melquiond

	Copyright 2002-2003 Herv

	Copyright 2002-2006 Andreas Huber Doenni

	Copyright 2002-2007 Andreas Huber Doenni

	Copyright 2002-2008 Andreas Huber Doenni

	Copyright 2002-2008 by Agner Fog.

	Copyright 2002-2010 Andreas Huber Doenni

	Copyright 2002-2014 by Agner Fog.

	Copyright 2002-2016 The SciPy Developers
#
# The original code from Gary Strangman was heavily adapted for
# use in SciPy by Travis Oliphant.  The original code came with the
# following disclaimer:
#

	Copyright 2002-2018 Peter Dimov

	Copyright 2003 (c) The Trustees of Indiana University.

	Copyright 2003 - 2011  LASMEA UMR 6602 CNRS/Univ. Clermont II

	Copyright 2003 Bruce Barr

	Copyright 2003 Guillaume Melquiond

	Copyright 2003 Guillaume Melquiond, Sylvain Pion

	Copyright 2003 Jeremy Siek

	Copyright 2003 The Trustees of Indiana University

Authors: Jaakko Jarvi (jajarvi at osl.iu.edu)
         Jeremiah Willcock (jewillco at osl.iu.edu)
         Andrew Lumsdaine (lums at osl.iu.edu)

	Copyright 2003-2005 Peter Dimov

	Copyright 2003-2008 Joaquin M Lopez Munoz.

	Copyright 2003-2013 Joaquin M Lopez Munoz.

	Copyright 2003-2014 Joaquin M Lopez Munoz.

	Copyright 2003-2015 Joaquin M Lopez Munoz.

	Copyright 2003-2016 Joaquin M Lopez Munoz.

	Copyright 2003-2017 Joaquin M Lopez Munoz.

	Copyright 2003-2018 Joaquin M Lopez Munoz.

	Copyright 2003-2019 Joaquin M Lopez Munoz.

	Copyright 2003-2020 Joaquin M Lopez Munoz.

	copyright 2004 Brian Ravnsgaard Riis

	Copyright 2004 Eric Niebler

#ifndef BOOST_PHOENIX_ALGORITHM_DETAIL_BEGIN_HPP
#define BOOST_PHOENIX_ALGORITHM_DETAIL_BEGIN_HPP

	Copyright 2004 Eric Niebler

#ifndef BOOST_PHOENIX_ALGORITHM_DETAIL_DECAY_ARRAY_HPP
#define BOOST_PHOENIX_ALGORITHM_DETAIL_DECAY_ARRAY_HPP

	Copyright 2004 Eric Niebler

#ifndef BOOST_PHOENIX_ALGORITHM_DETAIL_END_HPP
#define BOOST_PHOENIX_ALGORITHM_DETAIL_END_HPP

	Copyright 2004 Eric Niebler

#ifndef BOOST_PHOENIX_ALGORITHM_ITERATION_HPP
#define BOOST_PHOENIX_ALGORITHM_ITERATION_HPP

	Copyright 2004 Eric Niebler

#ifndef BOOST_PHOENIX_ALGORITHM_QUERYING_HPP
#define BOOST_PHOENIX_ALGORITHM_QUERYING_HPP

	Copyright 2004 Eric Niebler

#ifndef BOOST_PHOENIX_ALGORITHM_TRANSFORMATION_HPP
#define BOOST_PHOENIX_ALGORITHM_TRANSFORMATION_HPP

	Copyright 2004 Eric Niebler
///////////////////////////////////////////////////////////////////////////////

	Copyright 2004 Eric Niebler.

	Copyright 2004 The Trustees of Indiana University

	Copyright 2004 The Trustees of Indiana University.

	Copyright 2004, 2005 The Trustees of Indiana University.

	Copyright 2004, 2005 Trustees of Indiana University

	Copyright 2004-2005 by Enthought, Inc.

	Copyright 2004-2005 by Enthought, Inc.
#

	Copyright 2004-2005 Peter Dimov

	Copyright 2004-2006 Peter Dimov

	Copyright 2004-2006 The Trustees of Indiana University.

	Copyright 2004-2008 by Agner Fog.

	Copyright 2004-2008 Peter Dimov

	Copyright 2004-2013 by Agner Fog.

	Copyright 2004-5 The Trustees of Indiana University.

	Copyright 2004-9 Trustees of Indiana University

	Copyright 2005 Alexander Nasonov.

	Copyright 2005 Ben Hutchings

	Copyright 2005 Dan Marsden.

	Copyright 2005 Daniel Egloff, Eric Niebler. Distributed under the Boost

	Copyright 2005 Daniel Egloff, Olivier Gygi. Distributed under the Boost

	Copyright 2005 Daniel Egloff. Distributed under the Boost

	Copyright 2005 Daniel Wallin.

	Copyright 2005 David Abrahams and Aleksey Gurtovoy. Distributed

	Copyright 2005 Douglas Gregor.

	Copyright 2005 Eric Niebler, Daniel Egloff. Distributed under the Boost

	Copyright 2005 Eric Niebler, Michael Gauckler. Distributed under the Boost

	Copyright 2005 Eric Niebler.

	Copyright 2005 Eric Niebler. Distributed under the Boost

	Copyright 2005 Felix H

	Copyright 2005 Guillaume Melquiond

	Copyright 2005 Jeremy G. Siek

	Copyright 2005 Joel de Guzman.

	Copyright 2005 Matthias Troyer.

	Copyright 2005 Peter Dimov

	Copyright 2005 The Trustees of Indiana University.

	Copyright 2005 Travis Oliphant

	Copyright 2005 Trustees of Indiana University

	Copyright 2005, 2014 Peter Dimov

	Copyright 2005-2006 Andreas Huber Doenni

	Copyright 2005-2007 Adobe Systems Incorporated

	Copyright 2005-2008 Andreas Huber Doenni

	Copyright 2005-2009 Daniel James.

	Copyright 2005-2009 The Trustees of Indiana University.

	Copyright 2005-2011 Daniel James.

	Copyright 2005-2012 Daniel James.

	Copyright 2005-2013 Peter Dimov

	Copyright 2005-2014 Daniel James.

	Copyright 2006      Ion Gaztanaga

	Copyright 2006 Andy Tompkins.

	Copyright 2006 Daniel Egloff, Olivier Gygi. Distributed under the Boost

	Copyright 2006 Douglas Gregor <doug.gregor -at- gmail.com>.

	Copyright 2006 Eric Niebler, Olivier Gygi. Distributed under the Boost

	Copyright 2006 Eric Niebler. Distributed under the Boost

	Copyright 2006 Johan Rade

	Copyright 2006 John Maddock

	Copyright 2006 Michael van der Westhuizen

	Copyright 2006 Olivier Gygi, Daniel Egloff. Distributed under the Boost

	Copyright 2006 Roland Schwarz.

	Copyright 2006 The Trustees of Indiana University.

	Copyright 2006 Thorsten Ottosen.

	Copyright 2006 Trustees of Indiana University

	Copyright 2006, 2020 Peter Dimov

	Copyright 2006, Eric Niebler, Olivier Gygi. Distributed under the Boost

	Copyright 2006-2007 Boris Gubenko

	Copyright 2006-2008 Joaquin M Lopez Munoz.

	Copyright 2006-2009 Joaquin M Lopez Munoz.

	Copyright 2006-2011 Joaquin M Lopez Munoz.

	Copyright 2006-2013 Joaquin M Lopez Munoz.

	Copyright 2006-2014 Joaquin M Lopez Munoz.

	Copyright 2006-2015 Joaquin M Lopez Munoz.

	Copyright 2006-2018 Joaquin M Lopez Munoz.

	Copyright 2006-2019 Joaquin M Lopez Munoz.

	Copyright 2006-2020 Joaquin M Lopez Munoz.

	Copyright 2007 Aaron Windsor

	Copyright 2007 Alexandre Courpron
//
// Permission to use, copy, modify, redistribute and sell this software,
// provided that this copyright notice appears on all copies of the software.

	Copyright 2007 Andy Tompkins.

	Copyright 2007 Baruch Zilber

	Copyright 2007 Boris Gubenko

	Copyright 2007 Christian Henning

	Copyright 2007 David Jenkins.

	Copyright 2007 Eric Niebler.

	Copyright 2007 Peter Dimov

	Copyright 2007 Stanford University

	Copyright 2007 Tobias Schwinger


	Copyright 2007 University of Karlsruhe

	Copyright 2007, 2014 Peter Dimov

	Copyright 2007, 2019 Peter Dimov

	Copyright 2007, 2020 Peter Dimov

	Copyright 2007-2008 Andreas Pokorny, Christian Henning

	Copyright 2007-2008 Christian Henning

	Copyright 2007-2008 Christian Henning, Andreas Pokorny

	Copyright 2007-2008 Christian Henning, Andreas Pokorny, Lubomir Bourdev

	Copyright 2007-2012 Christian Henning, Andreas Pokorny

	Copyright 2007-2012 Christian Henning, Andreas Pokorny, Lubomir Bourdev

	Copyright 2007-2012 Christian Henning, Lubomir Bourdev

	Copyright 2007-2012 Ion Gaztanaga

	Copyright 2008

	Copyright 2008 Adobe Systems Incorporated

	Copyright 2008 Andreas Huber Doenni

	Copyright 2008 Beman Dawes

	Copyright 2008 Christian Henning

	Copyright 2008 Christian Henning, Lubomir Bourdev

	Copyright 2008 Christophe Henry

	Copyright 2008 Christophe Henry
// henry UNDERSCORE christophe AT hotmail DOT com
// This is taken from Boost.Proto's documentation

	Copyright 2008 David Jenkins.

	Copyright 2008 Eric Niebler.

	Copyright 2008 Eric Niebler. Distributed

	Copyright 2008 Eric Niebler. Distributed under the Boost

	Copyright 2008 Gautam Sewani

	Copyright 2008 Hartmut Kaiser.

	Copyright 2008 Howard Hinnant

	Copyright 2008 Intel Corporation

	Copyright 2008 Joaquin M Lopez Munoz.

	Copyright 2008 John Maddock

	Copyright 2008 Peter Dimov

	Copyright 2008, 2020 Peter Dimov

	Copyright 2008, 2020 Peter Dimov
//
// inline void boost::detail::yield( unsigned k );

	Copyright 2008,2012 Peter Dimov

	Copyright 2008-2009 Frank Mori Hess

	Copyright 2008-2010 Gordon Woodhull

	Copyright 2009 (C) Dean Michael Berris <me@deanberris.com>

	Copyright 2009 - 2011  LRI    UMR 8623 CNRS/Univ Paris Sud XI

	Copyright 2009 Andy Tompkins.

	Copyright 2009 Christian Henning

	Copyright 2009 Eric Niebler. Distributed under the Boost

	Copyright 2009 Neil Groves.

	Copyright 2009 Steven Watanabe

	Copyright 2009 The Trustees of Indiana University.

	Copyright 2009 Trustees of Indiana University

	Copyright 2009 Trustees of Indiana University.

	Copyright 2009 Vicente J. Botet Escriba

	Copyright 2009, Andrew Sutton

	Copyright 2009-2010 Vicente J. Botet Escriba

	Copyright 2009-2010 Vicente J. Botet Escriba
//
//  Simplified and modified to be able to support exceptionless (-fno-exceptions).
//  Boost.Timer depends on Boost.Chorno wich uses boost::throw_exception.
//  And Boost.Chrono DLLs don't build in Win32 as there is no 
//  boost::throw_exception(std::exception const&) implementation
//  in Boost.Chrono:
//

	Copyright 2009-2011 Karsten Ahnert

	Copyright 2009-2011 Mario Mulansky

	Copyright 2009-2011 Vicente J. Botet Escriba

	Copyright 2009-2012 Karsten Ahnert

	Copyright 2009-2012 Mario Mulansky

	Copyright 2009-2012 Vicente J. Botet Escriba

	Copyright 2009-2013 Karsten Ahnert

	Copyright 2009-2013 Mario Mulansky

	Copyright 2009-2014 Neil Groves.

	Copyright 2009-2015 Mario Mulansky

	Copyright 2010 Andy Tompkins.

	Copyright 2010 Beman Dawes


	Copyright 2010 Christian Henning

	Copyright 2010 Daniel Wallin, Eric Niebler. Distributed under the Boost

	Copyright 2010 Eric Niebler.

	Copyright 2010 Eric Niebler. Distributed under the Boost

	Copyright 2010 Fabien Castan, Christian Henning

	Copyright 2010 Gaetano Mendola, 2011 Simon West. Distributed under the Boost

	Copyright 2010 John Maddock

	Copyright 2010 Kenneth Riddile

	Copyright 2010 Mario Mulansky

	Copyright 2010 Paul A. Bristow

	Copyright 2010 The Trustees of Indiana University.

	Copyright 2010 Thomas Claveirole

	Copyright 2010 Vicente J. Botet Escriba

	Copyright 2010-2011 Karsten Ahnert

	Copyright 2010-2011 Mario Mulansky

	Copyright 2010-2012 Karsten Ahnert

	Copyright 2010-2012 Kenneth Riddile, Christian Henning

	Copyright 2010-2012 Mario Mulansky

	Copyright 2010-2012, D. E. Shaw Research.
        // All rights reserved.

        // Redistribution and use in source and binary forms, with or without
        // modification, are permitted provided that the following conditions are
        // met:

        // * Redistributions of source code must retain the above copyright
        //   notice, this list of conditions, and the following disclaimer.

        // * Redistributions in binary form must reproduce the above copyright
        //   notice, this list of conditions, and the following disclaimer in the
        //   documentation and/or other materials provided with the distribution.

        // * Neither the name of D. E. Shaw Research nor the names of its
        //   contributors may be used to endorse or promote products derived from
        //   this software without specific prior written permission.


	Copyright 2010-2013 Karsten Ahnert

	Copyright 2010-2013 Mario Mulansky

	Copyright 2010-2014 Mario Mulansky

	Copyright 2010-2015 Mario Mulansky

	Copyright 2011         Eric Niebler

	Copyright 2011 - 2013 John Maddock. Distributed under the Boost

	Copyright 2011 -2013 John Maddock. Distributed under the Boost

	Copyright 2011 Christophe Henry

	Copyright 2011 Eric Niebler. Distributed under the Boost

	Copyright 2011 Garmin Ltd. or its subsidiaries

	Copyright 2011 John Maddock

	Copyright 2011 John Maddock. Distributed under the Boost

	Copyright 2011 Karsten Ahnert

	Copyright 2011 Mario Mulansky

	Copyright 2011 Paul A. Bristow

	Copyright 2011 Paul A. Bristow  To incorporate into Boost.Math

	Copyright 2011 Simon West. Distributed under the Boost

	Copyright 2011 Steven Watanabe

	Copyright 2011 Vicente J. Botet Escriba

	Copyright 2011, 2012 Paul A. Bristow

	Copyright 2011-2012 Karsten Ahnert

	Copyright 2011-2012 Mario Mulansky

	Copyright 2011-2012 Steven Watanabe

	Copyright 2011-2013 Karsten Ahnert

	Copyright 2011-2013 Mario Mulansky

	Copyright 2011-2013 Thorsten Ottosen


	Copyright 2011-2015 Mario Mulansky

	Copyright 2012 (C) Google, Inc.

	Copyright 2012 (C) Jeffrey Lee Hellrung, Jr.

	Copyright 2012 Andreas Pokorny

	Copyright 2012 Christian Henning

	Copyright 2012 Christian Henning, Andreas Pokorny, Lubomir Bourdev

	Copyright 2012 Christoph Koke

	Copyright 2012 Chung-Lin Wen

	Copyright 2012 Chung-Lin Wen, Davide Anastasia

	Copyright 2012 Denis Demidov

	Copyright 2012 Eric Niebler. Distributed under the Boost

	Copyright 2012 Fernando Vilas

	Copyright 2012 IBM Corp.

	Copyright 2012 John Maddock.

	Copyright 2012 John Maddock. Distributed under the Boost

	Copyright 2012 K R Walker

	Copyright 2012 Karsten Ahnert

	Copyright 2012 Kenneth Riddile, Christian Henning

	Copyright 2012 Lucanus Simonson

	Copyright 2012 Mario Mulansky

	Copyright 2012 Olivier Tournaire

	Copyright 2012 Olivier Tournaire, Christian Henning

	Copyright 2012 Paul A. Bristow with new tests.

	Copyright 2012 Steven Watanabe

	Copyright 2012 The Trustees of Indiana University.

	Copyright 2012 Vicente J. Botet Escriba

	Copyright 2012, Philipp Moeller

	Copyright 2012-20 John Maddock.

	Copyright 2012-2013 Andreas Angelopoulos

	Copyright 2012-2013 Karsten Ahnert

	Copyright 2012-2013 Mario Mulansky

	Copyright 2012-2013 Steven Watanabe

	Copyright 2012-2015 Mario Mulansky

	Copyright 2012-2019 Glen Joseph Fernandes

	Copyright 2012-2020 Antony Polukhin.

	Copyright 2012-2020 Antony Polukhin.
//

	Copyright 2012-2020 John Maddock.

	Copyright 2013 Andrea Gavana
Author: <andrea.gavana@gmail.com>

Modifications 2014 Andrew Nelson
<andyfaff@gmail.com>

	Copyright 2013 Andrey Semashev

	Copyright 2013 Ankur Sinha

	Copyright 2013 Christian Henning

	Copyright 2013 Christian Henning and Juan V. Puertos

	Copyright 2013 Christian Shelton

	Copyright 2013 Christopher Kormanyos

	Copyright 2013 Cromwell D. Enage

	Copyright 2013 John Maddock

	Copyright 2013 John Maddock. Distributed under the Boost

	Copyright 2013 Juan V. Puertos G-Cluster, Christian Henning

	Copyright 2013 Karsten Ahnert

	Copyright 2013 Kyle Lutz

	Copyright 2013 Maciej Piechotka

	Copyright 2013 Mario Mulansky

	Copyright 2013 Nikhar Agrawal

	Copyright 2013 Pascal Germroth

	Copyright 2013 Paul Bristow

	Copyright 2013 Peter Dimov

	Copyright 2013 University of Warsaw.

	Copyright 2013, 2017 Andrey Semashev

	Copyright 2013, 2017-2018 Cray, Inc.

	Copyright 2013-2014 Karsten Ahnert

	Copyright 2013-2014 Mario Mulansky

	Copyright 2013-2020 Antony Polukhin.
//

	Copyright 2014          LASMEA UMR 6602 CNRS/Univ. Clermont II

	Copyright 2014          LRI    UMR 8623 CNRS/Univ Paris Sud XI

	Copyright 2014          MetaScale SAS

	Copyright 2014          NumScale SAS

	Copyright 2014 Andrey Semashev

	Copyright 2014 Anton Bikineev

	Copyright 2014 Antony Polukhin

	Copyright 2014 Bill Gallafent

	Copyright 2014 Christopher Kormanyos

	Copyright 2014 Glen Joseph Fernandes

	Copyright 2014 John Maddock

	Copyright 2014 Marco Guazzone (marco.guazzone@gmail.com)

	Copyright 2014 Neil Groves
//

	Copyright 2014 Paul Bristow

	Copyright 2014 Peter Dimov

	Copyright 2014 Peter Dimov
//

	Copyright 2014 Renato Tegon Forti, Antony Polukhin

	Copyright 2014 Renato Tegon Forti, Antony Polukhin.

	Copyright 2014, Eric W. Moore

/*     Incomplete elliptic integral of first kind      */

	Copyright 2014, Eric W. Moore

/*     Incomplete elliptic integral of second kind     */

	Copyright 2014,2018 Glen Joseph Fernandes

	Copyright 2014-2015 Glen Joseph Fernandes

	Copyright 2014-2015 Renato Tegon Forti, Antony Polukhin.

	Copyright 2014-2016 Glen Joseph Fernandes

	Copyright 2014-2020 Glen Joseph Fernandes

	Copyright 2015 Andrey Semashev

	Copyright 2015 Antony Polukhin

	Copyright 2015 Glen Joseph Fernandes

	Copyright 2015 John Fletcher

	Copyright 2015 John Fletcher.

	Copyright 2015 John Maddock. Distributed under the Boost

	Copyright 2015 Klemens Morgenstern

	Copyright 2015 Klemens Morgenstern
//
// This file provides a demangling for function names, i.e. entry points of a dll.

	Copyright 2015 LRI UMR 8623 CNRS/University Paris Sud XI


	Copyright 2015 Mario Mulansky

	Copyright 2015 NumScale SAS

	Copyright 2015 Ontario Institute for Cancer Research
// Written by Matei David (matei@cs.toronto.edu)
//---------------------------------------------------------

	Copyright 2015 Peter Dimov

	Copyright 2015 Peter Dimov.

	Copyright 2015 Steven Watanabe

	Copyright 2015, 2016 Peter Dimov.

	Copyright 2015, 2017 Andrey Semashev

	Copyright 2015, 2017, 2019 Peter Dimov.

	Copyright 2015, 2019 Peter Dimov.

	Copyright 2015, 2020 Andrey Semashev

	Copyright 2015-2016 Hans Dembinski

	Copyright 2015-2017 Hans Dembinski

	Copyright 2015-2017 Peter Dimov.

	Copyright 2015-2018 Andrey Semashev

	Copyright 2015-2018 Hans Dembinski

	Copyright 2015-2018 Klemens D. Morgenstern

	Copyright 2015-2019 Antony Polukhin.

	Copyright 2015-2019 Hans Dembinski

	Copyright 2015-2019 Peter Dimov

	Copyright 2015-2019 Peter Dimov.

	Copyright 2015-2020 Antony Polukhin.

	Copyright 2015-2020 Peter Dimov.

	Copyright 2016 Andrey Semashev

	Copyright 2016 Joaquin M Lopez Munoz.

	Copyright 2016 John Maddock. Distributed under the Boost

	Copyright 2016 Jorge Lodos

	Copyright 2016 Klemens D. Morgenstern

	Copyright 2016 Klemens Morgenstern

	Copyright 2016 Klemens Morgenstern, Antony Polukhin

	Copyright 2016, 2017 Andrey Semashev

	Copyright 2016, 2017 Peter Dimov

	Copyright 2016, 2018, 2019 Peter Dimov.

	Copyright 2016-2017 Joaquin M Lopez Munoz.

	Copyright 2016-2018 Andrey Semashev

	Copyright 2016-2018 Joaquin M Lopez Munoz.

	Copyright 2016-2019 Antony Polukhin.

	Copyright 2016-2019 Joaquin M Lopez Munoz.

	Copyright 2016-2020 Joaquin M Lopez Munoz.

	Copyright 2017 Andrey Semashev

	Copyright 2017 Daniel James.

	Copyright 2017 Glen Joseph Fernandes

	Copyright 2017 James E. King III

	Copyright 2017 James E. King, III

	Copyright 2017 Joaquin M Lopez Munoz.

	Copyright 2017 John Maddock

	Copyright 2017 Peter Dimov

	Copyright 2017 Peter Dimov.

	Copyright 2017 Two Blue Cubes Ltd. All rights reserved.

	Copyright 2017 Valentin Noah Hartmann

	Copyright 2017 Vinnie Falco

	Copyright 2017, 2018 Peter Dimov.

	Copyright 2017, 2019 Peter Dimov.

	Copyright 2017, NVIDIA CORPORATION.

	Copyright 2017-2018 Glen Joseph Fernandes

	Copyright 2017-2018 Joaquin M Lopez Munoz.

	Copyright 2017-2019 Glen Joseph Fernandes

	Copyright 2017-2019 Peter Dimov.

	Copyright 2018 Glen Joseph Fernandes

	Copyright 2018 Hans Dembinski

	Copyright 2018 Joaquin M Lopez Munoz.

	Copyright 2018 John Maddock

	Copyright 2018 John Maddock. Distributed under the Boost

	Copyright 2018 Mateusz Loskot <mateusz@loskot.net>

	Copyright 2018 Nico Weber

	Copyright 2018 Peter Dimov

	Copyright 2018 Stefan Seefeld

	Copyright 2018 Steven Watanabe

	Copyright 2018 Ulf Adams

	Copyright 2018, 2019 Andrey Semashev

	Copyright 2018, 2020 Peter Dimov

	Copyright 2018-2019 Antony Polukhin.

	Copyright 2018-2019 Hans Dembinski

	Copyright 2019 Emil Dotchevski.

	Copyright 2019 Glen Joseph Fernandes

	Copyright 2019 Glen Joseph Fernandes (glenjofe@gmail.com)

	Copyright 2019 Glen Joseph Fernandes (glenjofe@gmail.com)
//
// For more information, see http://www.boost.org/libs/range/

	Copyright 2019 Hans Dembinski

	Copyright 2019 Henry Schreiner

	Copyright 2019 John Maddock

	Copyright 2019 John Maddock. Distributed under the Boost

	Copyright 2019 Mateusz Loskot <mateusz at loskot dot net>

	Copyright 2019 Miral Shah <miralshah2211@gmail.com>

	Copyright 2019 Olzhas Zhumabek <anonymous.from.applecity@gmail.com>

	Copyright 2019 Peter Dimov

	Copyright 2019 Pranam Lashkari <plashkari628@gmail.com>

	Copyright 2019 Przemyslaw Bartosik

	Copyright 2019, 2020 Peter Dimov

	Copyright 2019-20 Christopher Kormanyos.

	Copyright 2019-20 Madhur Chauhan.

	Copyright 2019-2020 Antony Polukhin

	Copyright 2019-2020 Glen Joseph Fernandes

	Copyright 2020 Andrey Semashev

	Copyright 2020 Glen Joseph Fernandes

	Copyright 2020 Hans Dembinski

	Copyright 2020 Ion Gaztanaga

	Copyright 2020 John Maddock.

	Copyright 2020 John Maddock. Distributed under the Boost

	Copyright 2020 Madhur Chauhan.

	Copyright 2020 Peter Dimov

	Copyright 2020 Samuel Debionne

	copyright : tiff_property_base< std::string, TIFFTAG_COPYRIGHT >

/// non-baseline tags

	copyright = '2008-

# The default replacements for |version| and |release|, also used in various
# other places throughout the built documents.
import scipy
version = re.sub(r'\.dev-.*$', r'.dev', scipy.__version__)
release = scipy.__version__

	Copyright \copyright\ 2014 by P.-G. Martinsson, V. Rokhlin,
Y. Shkolnisky, and M. Tygert.

\bigskip

	Copyright Abel Sinkovics (abel@sinkovics.hu)   2011.

	Copyright Abel Sinkovics (abel@sinkovics.hu)   2013.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2009 - 2010.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2009 - 2011.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2009 - 2012.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2010 - 2011.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2010.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2011.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2012.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2013.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2014.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2015.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2016.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2017.

	Copyright Abel Sinkovics (abel@sinkovics.hu)  2018.

	Copyright Abel Sinkovics (abel@sinkovics.hu) 2011 - 2012.

	Copyright Abel Sinkovics (abel@sinkovics.hu) 2011.

	Copyright Abel Sinkovics (abel@sinkovics.hu) 2013.

	Copyright Abel Sinkovics (abel@sinkovics.hu) 2014.

	Copyright Abel Sinkovics (abel@sinkovics.hu) 2015.

	Copyright Adam D. Walling 2012. Use, modification and

	Copyright Alain Miniussi 2014.

	Copyright Aleksey Gurtovoy 2000-2002

	Copyright Aleksey Gurtovoy 2000-2003

	Copyright Aleksey Gurtovoy 2000-2004

	Copyright Aleksey Gurtovoy 2000-2006

	Copyright Aleksey Gurtovoy 2000-2008

	Copyright Aleksey Gurtovoy 2000-2009

	Copyright Aleksey Gurtovoy 2000-2010

	Copyright Aleksey Gurtovoy 2001-2004

	Copyright Aleksey Gurtovoy 2001-2006

	Copyright Aleksey Gurtovoy 2001-2007

	Copyright Aleksey Gurtovoy 2001-2008

	Copyright Aleksey Gurtovoy 2002-2004

	Copyright Aleksey Gurtovoy 2002-2006

	Copyright Aleksey Gurtovoy 2003-2004

	Copyright Aleksey Gurtovoy 2003-2007

	Copyright Aleksey Gurtovoy 2004

	Copyright Aleksey Gurtovoy 2006

	Copyright Aleksey Gurtovoy 2008

	Copyright Alexander Grund 2018. Corrections to singleton lifetime

	Copyright Alexander Nasonov

	Copyright Alexander Nasonov 2004

	Copyright Alexander Nasonov, 2006-2010.

	Copyright Anne M. Archibald 2008

	Copyright Antony Polukhin, 2011-2020.

	Copyright Antony Polukhin, 2013-2014.

	Copyright Antony Polukhin, 2013-2020.

	Copyright Antony Polukhin, 2016-2019.

	Copyright Antony Polukhin, 2016-2020.

	Copyright Arno Schoedl

	Copyright Barrett Adair 2015-2017

	Copyright Barrett Adair 2015-2018

	Copyright Barrett Adair 2016-2017

	copyright below:
/*

	Copyright Beman Dawes 1994, 2006, 2008

	Copyright Beman Dawes 1994-2007, 2011

	Copyright Beman Dawes 1994-2007, 2011
//
//  Boost.Chrono:

	Copyright Beman Dawes 1994-99.

	Copyright Beman Dawes 1994-99.  Distributed under the Boost

	Copyright Beman Dawes 1995-2001.  Distributed under the Boost

	Copyright Beman Dawes 2001.  Distributed under the Boost

	Copyright Beman Dawes 2002

	Copyright Beman Dawes 2002, 2006

	Copyright Beman Dawes 2002-2005, 2009

	Copyright Beman Dawes 2002-2009

	Copyright Beman Dawes 2003

	Copyright Beman Dawes 2003, 2006

	Copyright Beman Dawes 2003, 2006, 2008

	Copyright Beman Dawes 2003, 2006, 2010

	Copyright Beman Dawes 2003, 2006, 2011

	Copyright Beman Dawes 2005.

	Copyright Beman Dawes 2006

	Copyright Beman Dawes 2006, 2007

	Copyright Beman Dawes 2007

	Copyright Beman Dawes 2008

	Copyright Beman Dawes 2009

	Copyright Beman Dawes 2010

	Copyright Beman Dawes 2010, 2011, 2014

	Copyright Beman Dawes 2011

	Copyright Beman Dawes 2013

	Copyright Beman Dawes 2014

	Copyright Beman Dawes 2015

	Copyright Beman Dawes and Daryle Walker 1999.  Distributed under the Boost

	Copyright Beman Dawes, 2002-2005

	Copyright Beman Dawes, 2009

	Copyright Benjamin Sobotta 2012

	Copyright Benjamin Sobotta 2012.

	Copyright Benjamin Worpitz 2018

	Copyright Bertolt Mildner 2004.

	Copyright Bruno Dutra 2015

	Copyright Bryce Lelbach 2010

	copyright by Renee Touzin)
under the BSD licence. The following files have been removed from the original library:


	Copyright Catch2 Authors

	Copyright Charly Chevalier 2015

	Copyright Christoper Kohlhoff 2007

	Copyright Christopher Brown 2013

	Copyright Christopher Kormanyos 2002 - 2011.

	Copyright Christopher Kormanyos 2002 - 2013.

	Copyright Christopher Kormanyos 2013-14

	Copyright Christopher Kormanyos 2013.

	Copyright Christopher Kormanyos 2013. Distributed under the Boost

	Copyright Christopher Kormanyos 2014.

	Copyright Cromwell D. Enage 2013.

	Copyright Cromwell D. Enage 2017.

	Copyright Cromwell D. Enage 2018.

	Copyright Cromwell D. Enage 2019.

	Copyright Daniel Trebbien 2010.

	Copyright Daniel Walker 2006. Use, modification and distribution

	Copyright Daniel Walker 2007

	Copyright Daniel Walker, Eric Niebler, Michel Morin 2008-2012.

	Copyright Daniel Wallin 2005.

	Copyright Daniel Wallin 2005. Use, modification and distribution is

	Copyright Daniel Wallin 2006.

	Copyright Daniel Wallin 2006. Use, modification and distribution is

	Copyright Daniel Wallin 2007. Use, modification and distribution is

	Copyright Daniel Wallin, David Abrahams 2005.

	Copyright Daniel Wallin, David Abrahams 2010.

	Copyright Daryle Walker, Hubert Holin, John Maddock 2006 - 2007

	Copyright Dave Abrahams 2001-2002

	Copyright David Abrahams 2000-2002

	Copyright David Abrahams 2001

	Copyright David Abrahams 2001-2002

	Copyright David Abrahams 2001.

	Copyright David Abrahams 2002

	Copyright David Abrahams 2002,  Nikolay Mladenov 2007.

	Copyright David Abrahams 2002, Joel de Guzman, 2002.

	Copyright David Abrahams 2002-2003

	Copyright David Abrahams 2002.

	Copyright David Abrahams 2003

	Copyright David Abrahams 2003-2004

	Copyright David Abrahams 2003.

	Copyright David Abrahams 2003. Use, modification and distribution is

	Copyright David Abrahams 2004

	Copyright David Abrahams 2004.

	Copyright David Abrahams 2004. Distributed under the Boost

	Copyright David Abrahams 2004. Use, modification and distribution is

	Copyright David Abrahams 2005.

	Copyright David Abrahams 2005. Distributed under the Boost

	Copyright David Abrahams 2006.

	Copyright David Abrahams 2006. Distributed under the Boost

	Copyright David Abrahams 2006. Original version
//

	Copyright David Abrahams 2009. Distributed under the Boost

	Copyright David Abrahams and Jeremy Siek 2003.

	Copyright David Abrahams and Nikolay Mladenov 2003.

	Copyright David Abrahams and Thomas Becker 2000-2006.

	Copyright David Abrahams, Daniel Wallin 2003.

	Copyright David Abrahams, Daniel Wallin 2005.

	Copyright Dietmar Kuehl 2001

	Copyright Douglas Gregor 2001-2003.

	Copyright Douglas Gregor 2001-2003. Use, modification and

	Copyright Douglas Gregor 2001-2004.

	Copyright Douglas Gregor 2001-2004. Use, modification and

	Copyright Douglas Gregor 2001-2006

	Copyright Douglas Gregor 2002-2003. Use, modification and

	Copyright Douglas Gregor 2002-2004. Use, modification and

	Copyright Douglas Gregor 2003. Use, modification and

	Copyright Douglas Gregor 2004.

	Copyright Douglas Gregor 2004. Use, modification and

	Copyright Emil Dotchevski 2007

	Copyright Eric Friedman 2002

	Copyright Eric Friedman 2002-2003

	Copyright Eric Friedman 2003

	Copyright Eric Niebler 2005.

	Copyright Eric Niebler 2008

	Copyright Eric Niebler 2009

	Copyright Eric Niebler 2014

	Copyright Eric Niebler 2014. Use, modification and

	Copyright Evan Miller 2020

	copyright follows:
//

	copyright for code they wrote and submit for

	Copyright for the original TNBC Fortran routines:

  TRUNCATED-NEWTON METHOD:  SUBROUTINES
    WRITTEN BY:  STEPHEN G. NASH
          SCHOOL OF INFORMATION TECHNOLOGY & ENGINEERING
          GEORGE MASON UNIVERSITY
          FAIRFAX, VA 22030

	Copyright for the original TNBC fortran routines:
 *
 *   TRUNCATED-NEWTON METHOD:  SUBROUTINES
 *     WRITTEN BY:  STEPHEN G. NASH
 *           SCHOOL OF INFORMATION TECHNOLOGY & ENGINEERING
 *           GEORGE MASON UNIVERSITY
 *           FAIRFAX, VA 22030

	Copyright for the original version:

	Copyright Frank Mori Hess 2007,2009.

	Copyright Frank Mori Hess 2007-2008

	Copyright Frank Mori Hess 2007-2008.

	Copyright Frank Mori Hess 2007-2009

	Copyright Frank Mori Hess 2007-2009.

	Copyright Frank Mori Hess 2007-2010.

	Copyright Frank Mori Hess 2007.

	Copyright Frank Mori Hess 2007. Use, modification and

	Copyright Frank Mori Hess 2008.

	Copyright Frank Mori Hess 2009

	Copyright Frank Mori Hess 2009.

	Copyright Franz Detro 2014

	Copyright Gautam Sewani

	Copyright Gautam Sewani 2008

	copyright Gonzalo Brito Gadeschi 2015

	Copyright Gottfried Gan

	Copyright Hans Dembinski 2020

	copyright header
#
	print(outfile "$CopyrightHeaderLine0\n");
	print(outfile "$CopyrightHeaderLine1\n");
	print(outfile "$CopyrightHeaderLine2\n");
	print(outfile "$CopyrightHeaderLine1\n");
	print(outfile "$CopyrightHeaderLine3\n");
	print(outfile "$CopyrightHeaderLine1\n");
	print(outfile "$CopyrightHeaderLine4\n");
	print(outfile "$CopyrightHeaderLine1\n");
	print(outfile "$CopyrightHeaderLine5\n");
	print(outfile "$CopyrightHeaderLine6\n");
	print(outfile "$CopyrightHeaderLine1\n");
	print(outfile "$CopyrightHeaderLine0\n");

	copyright header
# Look to see if we've reached the end
#
	    $fpos=index($_,$CopyrightHeaderLine0);
	    if ($fpos>=0) {

	copyright header in
	    print (outfile);
	} else {
	    $RemoveCopyrightHeader = 1;

	copyright header in
	}
#	print "Line0: Rm=$RemoveCopyrightHeader|$_";
    } else {
#	print "Line+: Rm=$RemoveCopyrightHeader|$_";

	Copyright header line 0 is at
	if ($fpos<0) {
	    $RemoveCopyrightHeader = 0;

	copyright header should be ignored
#
	$fpos=index($_,$CopyrightHeaderLine0);

	copyright header so stop ignoring lines
#
		$RemoveCopyrightHeader = 0;

	copyright header so write out the line
#
	    print (outfile);

	Copyright Howard Hinnant 2007-2010.

	copyright information
- HISTORY : Release history
- README : This file
- example.c : A simple example
- Makefile : Make file used to build the examples
- moduleTNC.c : the source of the python module
- tnc.py : the python module wrapper
- example.py : an example for the python module
- setup.py : the python installer

Use is described in tnc.h. For more information, see the example.
The example can be built and executed by doing :

	copyright information.

   If you recompile and load this file, then userprintf_rbox_r.o will not be loaded
   from qhull.a or qhull.lib

	copyright information.

   see libqhull_r.h for data structures, macros, and user-callable functions.

	copyright information.

   See user_r.c for sample code.

	copyright information.

  If you recompile and load this file, then userprintf_r.o will not be loaded
  from qhull_r.a or qhull_r.lib

	copyright information.
# $Jeannot: README,v 1.32 2005/01/28 15:12:09 js Exp $

This software is a C implementation of TNBC, a truncated newton minimization
package originally developed by Stephen G. Nash in Fortran.

	copyright is
 * claimed, and the software is hereby placed in the public domain.
 * In case this attempt to disclaim copyright and place the software in the
 * public domain is deemed null and void, then the software is

	copyright is acknowledged.
/*                                                                           */
/* C Contact Information                                                     */
/* C Email: j-jin1@uiuc.edu                                                  */
/* C Phone: (217) 244-0756                                                   */
/* C Fax: (217) 333-5962                                                     */
/* C Professor Jianming Jin                                                  */
/* C Department of Electrical and Computer Engineering                       */
/* C University of Illinois at Urbana-Champaign                              */
/* C 461 William L Everitt Laboratory                                        */
/* C 1406 West Green Street                                                  */
/* C Urbana, IL 61801-2991                                                   */

	Copyright J.S. Roy (js@jeannot.org), 2002-2005

	Copyright Jaap Suter 2003

	Copyright James E. King III, 2017

	Copyright Jan Langer 2002

	Copyright Jason Rhinelander 2016

	copyright Jason Rice 2016

	copyright Jason Rice 2017

	Copyright Jens Maurer 2000

	Copyright Jens Maurer 2000-2001

	Copyright Jens Maurer 2002

	Copyright Jens Maurer 2006

	Copyright Jens Maurer 2006-1011

	Copyright Jessica Hamilton 2014

	Copyright Jim Bosch 2010-2012.

	Copyright Joel Falcou 2015

	Copyright John Maddock 2005-2006, 2011.

	Copyright John Maddock 2005-2006.

	Copyright John Maddock 2005-2008.

	Copyright John Maddock 2005.

	Copyright John Maddock 2006

	Copyright John Maddock 2006, 2007

	Copyright John Maddock 2006, 2007, 2012, 2014.

	Copyright John Maddock 2006, 2007.

	Copyright John Maddock 2006, 2010.

	Copyright John Maddock 2006, 2011.

	Copyright John Maddock 2006, 2012.

	Copyright John Maddock 2006-7, 2013-14.

	Copyright John Maddock 2006-7.

	Copyright John Maddock 2006.

	Copyright John Maddock 2007, 2014.

	Copyright John Maddock 2007-8.

	Copyright John Maddock 2007.

	Copyright John Maddock 2008

	Copyright John Maddock 2008, 2012.

	Copyright John Maddock 2008.

	Copyright John Maddock 2009

	Copyright John Maddock 2009.

	Copyright John Maddock 2010

	Copyright John Maddock 2010, 2012.

	Copyright John Maddock 2010.

	Copyright John Maddock 2011.

	Copyright John Maddock 2012

	Copyright John Maddock 2012.

	Copyright John Maddock 2013

	Copyright John Maddock 2013.

	Copyright John Maddock 2014.

	Copyright John Maddock 2015

	Copyright John Maddock 2015.

	Copyright John Maddock 2016.

	Copyright John Maddock 2017.

	Copyright John Maddock 2018.

	Copyright John Maddock, 2020

	Copyright John R. Bandela 2000-2002

	Copyright John R. Bandela 2001

	Copyright John R. Bandela 2001.

	Copyright Justinas Vygintas Daugmaudis 2010-2018

	Copyright Kevlin Henney, 2000, 2001, 2002. All rights reserved.

	Copyright Kevlin Henney, 2000-2005.

	Copyright Kohei Takahashi 2012-2014.

	Copyright Lingxi Li 2015.

	Copyright Louis Dionne 2013

	copyright Louis Dionne 2013-2016

	Copyright Louis Dionne 2013-2017

	copyright Louis Dionne 2013-2017

	copyright Louis Dionne 2016

	Copyright Marco Guazzone 2014

	Copyright Matthew Pulver 2018 - 2019.

	Copyright Michael Drexl 2005, 2006.

	Copyright Nat Goodspeed

	Copyright Nat Goodspeed 2014.

	Copyright Neil Groves

	Copyright Neil Groves 2003-2004.

	Copyright Neil Groves 2007.

	Copyright Neil Groves 2007. Use, modification and

	Copyright Neil Groves 2009.

	Copyright Neil Groves 2009. Use, modification and

	Copyright Neil Groves 2009. Use, modification and distribution

	Copyright Neil Groves 2010. Use, modification and

	Copyright Neil Groves 2014

	Copyright Neil Groves 2014.

	Copyright Neil Groves 2014. Use, modification and

	Copyright Nicholas Thompson 2018

	Copyright Nick Thompson 2017.

	Copyright Nick Thompson 2019.

	Copyright Nick Thompson, 2017

	Copyright Nick Thompson, 2018

	Copyright Nick Thompson, 2019

	Copyright Nick Thompson, 2020

	Copyright Nick Thompson, John Maddock 2020

	Copyright Nikhar Agrawal 2013-14

	Copyright Nikolay Mladenov 2007.

	Copyright Nuxi, https://nuxi.nl/ 2015.

	Copyright ohn Maddock 2012

	Copyright Oliver Kowalke 2009.

	Copyright Oliver Kowalke 2013.

	Copyright Oliver Kowalke 2014.

	Copyright Oliver Kowalke 2015.

	Copyright Oliver Kowalke 2016.

	Copyright Oliver Kowalke 2017.

	Copyright Oliver Kowalke 2018.

	Copyright Orson Peters 2017.

	Copyright Paul A. Bristow

	Copyright Paul A. Bristow 2006, 2007, 2009, 2010.

	Copyright Paul A. Bristow 2006, 2007, 2012

	Copyright Paul A. Bristow 2006, 2007, 2012.

	Copyright Paul A. Bristow 2006, 2007.

	Copyright Paul A. Bristow 2006, 2012, 2017.

	Copyright Paul A. Bristow 2006-2011.

	Copyright Paul A. Bristow 2006-7.

	Copyright Paul A. Bristow 2006.

	Copyright Paul A. Bristow 2007

	Copyright Paul A. Bristow 2007, 2009

	Copyright Paul A. Bristow 2007, 2009.

	Copyright Paul A. Bristow 2007, 2010, 2012, 2014.

	Copyright Paul A. Bristow 2007, 2010.

	Copyright Paul A. Bristow 2007, 2012.

	Copyright Paul A. Bristow 2007, 2013-14.

	Copyright Paul A. Bristow 2007.

	Copyright Paul A. Bristow 2008, 2009.

	Copyright Paul A. Bristow 2008, 2010.

	Copyright Paul A. Bristow 2008, 2014.

	Copyright Paul A. Bristow 2009, 2011

	Copyright Paul A. Bristow 2010

	Copyright Paul A. Bristow 2010.

	Copyright Paul A. Bristow 2011, 2012.

	Copyright Paul A. Bristow 2012.

	Copyright Paul A. Bristow 2013.

	Copyright Paul A. Bristow 2014.

	Copyright Paul A. Bristow 2016, 2017, 2018.

	Copyright Paul A. Bristow 2017.

	Copyright Paul Bristow 2006, 2007.

	Copyright Paul Bristow 2007, 2011.

	Copyright Paul Bristow 2007.

	Copyright Paul Bristow 2014.

	Copyright Paul Mensonides 2003

	Copyright Pavol Droba 2002-2003.

	Copyright Pavol Droba 2002-2003. Use, modification and

	Copyright Pavol Droba 2002-2004.

	Copyright Pavol Droba 2002-2006.

	Copyright Peter Dimov 2000-2002

	Copyright Peter Dimov 2000-2003

	Copyright Peter Dimov 2001

	Copyright Peter Dimov 2001-2002

	Copyright Peter Dimov 2001-2003

	Copyright Peter Dimov 2017, 2018

	Copyright Peter Dimov 2017, 2018, 2020

	Copyright Peter Dimov 2019.

	Copyright Peter Dimov and David Abrahams 2002.

	Copyright Peter Dimov and Multi Media Ltd 2001, 2002

	copyright property.

	Copyright Ralf W. Grosse-Kunstleve

	Copyright Ralf W. Grosse-Kunstleve 2006.

	Copyright Rene Rivera 2005-2016

	Copyright Rene Rivera 2008-2013

	Copyright Rene Rivera 2008-2015

	Copyright Rene Rivera 2008-2017

	Copyright Rene Rivera 2008-2019

	Copyright Rene Rivera 2011-2012

	Copyright Rene Rivera 2011-2015

	Copyright Rene Rivera 2012-2015

	Copyright Rene Rivera 2013

	Copyright Rene Rivera 2013-2015

	Copyright Rene Rivera 2014

	Copyright Rene Rivera 2014-2015

	Copyright Rene Rivera 2015

	Copyright Rene Rivera 2015-2016

	Copyright Rene Rivera 2015-2019

	Copyright Rene Rivera 2017

	Copyright Robert Ramey 2007.  Changes made to permit
// application throughout the serialization library.
//

	Copyright Robin Eckert 2015.

	Copyright Ruslan Baratov 2017

	Copyright Samuel Krempp 2003.

	Copyright Samuel Krempp 2003. Use, modification, and distribution are

	Copyright Sebastian Ramacher, 2007.

	Copyright Sergey Krivonos 2017

	Copyright Shreyans Doshi 2017.

	Copyright Shunsuke Sogame 2005-2006.

	copyright sign","short":"copyright"
	copyright sign",short:"copyright"
	Copyright Stefan Seefeld 2005.

	Copyright Stefan Seefeld 2016.

	Copyright Steven J. Ross 2001 - 2009.

	Copyright Steven J. Ross 2001 - 2014

	Copyright Steven J. Ross 2001 - 2014.

	Copyright Steven J. Ross 2014

	Copyright Steven Watanabe 2009

	Copyright Steven Watanabe 2009-2011

	Copyright Steven Watanabe 2010

	Copyright Steven Watanabe 2010-2011

	Copyright Steven Watanabe 2011

	Copyright Steven Watanabe 2014

	Copyright Thijs van den Berg 2014

	Copyright Thijs van den Berg, 2008.

	Copyright Thomas Mang 2012.

	Copyright Thorsten Ottosen 2003-2004. Use, modification and

	Copyright Thorsten Ottosen 2003-2005. Use, modification and

	Copyright Thorsten Ottosen 2003-2006. Use, modification and

	Copyright Thorsten Ottosen 2003-2007. Use, modification and

	Copyright Thorsten Ottosen 2003-2008. Use, modification and

	Copyright Thorsten Ottosen 2006.

	Copyright Thorsten Ottosen 2006. Use, modification and

	Copyright Thorsten Ottosen 2008. Use, modification and

	Copyright Thorsten Ottosen, 2009.

	Copyright Thorsten Ottosen, Neil Groves 2006 - 2008. Use, modification and

	Copyright Thorsten Ottosen, Neil Groves 2006. Use, modification and

	Copyright Timmo Stange 2007.

	copyright to this source code.

#if !defined(BOOST_FUNCTIONAL_HASH_HASH_HPP)
#define BOOST_FUNCTIONAL_HASH_HASH_HPP

	Copyright uses reporting
  // settings defined in any options file.
  highs.passOptions(loaded_options);

  // Load the model from model_file
  HighsStatus read_status = highs.readModel(model_file);
  reportModelStatsOrError(log_options, read_status, highs.getModel());
  if (read_status == HighsStatus::kError) return (int)read_status;

	Copyright Vicente J. Botet Escriba 2009

	Copyright Vicente J. Botet Escriba 2009-2011

	Copyright Vicente J. Botet Escriba 2010

	Copyright Vicente J. Botet Escriba 2012.

	Copyright Vladimir Prus 2002

	Copyright Vladimir Prus 2002-2004.

	Copyright Vladimir Prus 2002.

	Copyright Vladimir Prus 2004.

	Copyright Vladimir Prus, 2002

	Copyright Xiaogang Zhang 2006

	copyright Xiaogang Zhang.
//
#ifndef BOOST_MATH_BESSEL_HPP
#define BOOST_MATH_BESSEL_HPP

	COPYRIGHT$
  
  Additional copyrights may follow
  
  $HEADER$

	Copyright(c) 2016 Francisco Jos

	Copyright(c) 2016 Francisco Jose Tapia (fjtapia@gmail.com )\n

	copyright-sign"
	copyright:

    Copyright Eric Niebler 2013-present

	copyright:
 *
 *     Cephes Math Library Release 2.8:  June, 2000

	Copyright:   2007-2008 CodeRage, LLC

	Copyright:   2007-2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com

 * Defines several function objects and object generators for use with 
 * execute_all()

	Copyright:   2007-2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com

 * Defines the overloaded function template 
 * boost::iostreams::detail::execute_all() and the function template 
 * boost::iostreams::detail::execute_foreach().

	Copyright:   2007-2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 *
 * Defines the function boost::iostreams::detail::absolute_path, used for 
 * debug output for mapped files.

	Copyright:   2007-2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 *
 * Defines the function boost::iostreams::detail::current_directory, used by 
 * boost::iostreams::detail::absolute_path.

	Copyright:   2007-2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 *
 * Defines the preprocessor symbol BOOST_IOSTREAMS_HAS_DINKUMWARE_FPOS for
 * platforms that use the implementation of std::fpos from the Dinkumware
 * Standard Library.

	Copyright:   2007-2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 *
 * If included with the macro BOOST_IOSTREAMS_RESTRICT undefined, defines the 
 * class template boost::iostreams::restriction. If included with the macro
 * BOOST_IOSTREAMS_RESTRICT defined as an identifier, defines the overloaded
 * function template boost::iostreams::BOOST_IOSTREAMS_RESTRICT, and object 
 * generator for boost::iostreams::restriction.

	Copyright:   2007-2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 */

	Copyright:   2008 CodeRage, LLC
                2004-2007 Jonathan Turkanis
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 *
 * Defines the class template boost::iostreams::restriction and the 
 * overloaded function template boost::iostreams::restrict

	Copyright:   2008 CodeRage, LLC
                2004-2007 Jonathan Turkanis
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 *
 * Defines the class template boost::iostreams::restriction and the 
 * overloaded function template boost::iostreams::slice.

	Copyright:   2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 *
 * Defines the class boost::iostreams::detail::path, for storing a 
 * a std::string or std::wstring.

	Copyright:   2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 *
 * Defines the class template basic_grep_filter and its specializations
 * grep_filter and wgrep_filter.

	Copyright:   2008 CodeRage, LLC
 * Author:      Jonathan Turkanis
 * Contact:     turkanis at coderage dot com
 *
 * Defines the type boost::iostreams::detail::file_handle, representing an
 * operating system file handle.

	copyright: Copyright 2015  Jon Lund Steffensen. Based on extlinks by

smmap 5.0.2 pypi:smmap/5.0.2: https://github.com/gitpython-developers/smmap
	(c)

            assert man_optimal.num_file_handles() == 1

            # PERFORMANCE
            # blast away with random access and a full mapping - we don't want to
            # exaggerate the manager's overhead, but measure the buffer overhead
            # We do it once with an optimal setting, and with a worse manager which
            # will produce small mappings only !
            max_num_accesses = 100
            fd = os.open(fc.path, os.O_RDONLY)
            for item in (fc.path, fd):

	Copyright (C) 2010, 2011 Sebastian Thiel and contributors
All rights reserved.

Redistribution and use in source and binary forms, with or without 
modification, are permitted provided that the following conditions 
are met:

* Redistributions of source code must retain the above copyright 
notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright 
notice, this list of conditions and the following disclaimer in the 
documentation and/or other materials provided with the distribution.

* Neither the name of the async project nor the names of 
its contributors may be used to endorse or promote products derived 
from this software without specific prior written permission.


tomli 2.3.0 pypi:tomli/2.3.0: https://github.com/hukkin/tomli
	Copyright (c) 2021 Taneli Hukkinen

	Copyright (c) 2021 Taneli Hukkinen

urllib3 2.5.0 pypi:urllib3/2.5.0: https://urllib3.readthedocs.io/en/stable
	Copyright (c) 2008-2020 Andrey Petrov and contributors.

	copyright = f"

# The short X.Y version.
version = urllib3.__version__
# The full version, including alpha/beta/rc tags.
release = version

voluptuous 0.15.2 pypi:voluptuous/0.15.2: http://pypi.python.org/pypi/voluptuous
	Copyright (c) 2010, Alec Thomas
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

 - Redistributions of source code must retain the above copyright notice, this
   list of conditions and the following disclaimer.
 - Redistributions in binary form must reproduce the above copyright notice,
   this list of conditions and the following disclaimer in the documentation
   and/or other materials provided with the distribution.
 - Neither the name of SwapOff.org nor the names of its contributors may
   be used to endorse or promote products derived from this software without
   specific prior written permission.



Licenses: 

Apache License 2.0
(Packaging 25.0, pbr 7.0.1, powertrain-build 1.11.2, psf-requests 2.32.3)

Apache License
Version 2.0, January 2004
=========================


http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction, and
distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by the copyright
owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all other entities
that control, are controlled by, or are under common control with that entity.
For the purposes of this definition, "control" means (i) the power, direct or
indirect, to cause the direction or management of such entity, whether by
contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity exercising permissions
granted by this License.

"Source" form shall mean the preferred form for making modifications, including
but not limited to software source code, documentation source, and configuration
files.

"Object" form shall mean any form resulting from mechanical transformation or
translation of a Source form, including but not limited to compiled object code,
generated documentation, and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or Object form, made
available under the License, as indicated by a copyright notice that is included
in or attached to the work (an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object form, that is
based on (or derived from) the Work and for which the editorial revisions,
annotations, elaborations, or other modifications represent, as a whole, an
original work of authorship. For the purposes of this License, Derivative Works
shall not include works that remain separable from, or merely link (or bind by
name) to the interfaces of, the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including the original version
of the Work and any modifications or additions to that Work or Derivative Works
thereof, that is intentionally submitted to Licensor for inclusion in the Work by
the copyright owner or by an individual or Legal Entity authorized to submit on
behalf of the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent to the
Licensor or its representatives, including but not limited to communication on
electronic mailing lists, source code control systems, and issue tracking systems
that are managed by, or on behalf of, the Licensor for the purpose of discussing
and improving the Work, but excluding communication that is conspicuously marked
or otherwise designated in writing by the copyright owner as "Not a
Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of
whom a Contribution has been received by Licensor and subsequently incorporated
within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of this
License, each Contributor hereby grants to You a perpetual, worldwide,
non-exclusive, no-charge, royalty-free, irrevocable copyright license to
reproduce, prepare Derivative Works of, publicly display, publicly perform,
sublicense, and distribute the Work and such Derivative Works in Source or Object
form.

3. Grant of Patent License. Subject to the terms and conditions of this License,
each Contributor hereby grants to You a perpetual, worldwide, non-exclusive,
no-charge, royalty-free, irrevocable (except as stated in this section) patent
license to make, have made, use, offer to sell, sell, import, and otherwise
transfer the Work, where such license applies only to those patent claims
licensable by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s) with the Work to
which such Contribution(s) was submitted. If You institute patent litigation
against any entity (including a cross-claim or counterclaim in a lawsuit)
alleging that the Work or a Contribution incorporated within the Work constitutes
direct or contributory patent infringement, then any patent licenses granted to
You under this License for that Work shall terminate as of the date such
litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the Work or
Derivative Works thereof in any medium, with or without modifications, and in
Source or Object form, provided that You meet the following conditions:

  a. You must give any other recipients of the Work or Derivative Works a copy of
    this License; and

  b. You must cause any modified files to carry prominent notices stating that
    You changed the files; and

  c. You must retain, in the Source form of any Derivative Works that You
    distribute, all copyright, patent, trademark, and attribution notices from
    the Source form of the Work, excluding those notices that do not pertain to
    any part of the Derivative Works; and

  d. If the Work includes a "NOTICE" text file as part of its distribution, then
    any Derivative Works that You distribute must include a readable copy of the
    attribution notices contained within such NOTICE file, excluding those
    notices that do not pertain to any part of the Derivative Works, in at least
    one of the following places: within a NOTICE text file distributed as part of
    the Derivative Works; within the Source form or documentation, if provided
    along with the Derivative Works; or, within a display generated by the
    Derivative Works, if and wherever such third-party notices normally appear.
    The contents of the NOTICE file are for informational purposes only and do
    not modify the License. You may add Your own attribution notices within
    Derivative Works that You distribute, alongside or as an addendum to the
    NOTICE text from the Work, provided that such additional attribution notices
    cannot be construed as modifying the License.

You may add Your own copyright statement to Your modifications and may provide
additional or different license terms and conditions for use, reproduction, or
distribution of Your modifications, or for any such Derivative Works as a whole,
provided Your use, reproduction, and distribution of the Work otherwise complies
with the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise, any
Contribution intentionally submitted for inclusion in the Work by You to the
Licensor shall be under the terms and conditions of this License, without any
additional terms or conditions. Notwithstanding the above, nothing herein shall
supersede or modify the terms of any separate license agreement you may have
executed with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade names,
trademarks, service marks, or product names of the Licensor, except as required
for reasonable and customary use in describing the origin of the Work and
reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or agreed to in
writing, Licensor provides the Work (and each Contributor provides its
Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
either express or implied, including, without limitation, any warranties or
conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any risks
associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory, whether in
tort (including negligence), contract, or otherwise, unless required by
applicable law (such as deliberate and grossly negligent acts) or agreed to in
writing, shall any Contributor be liable to You for damages, including any
direct, indirect, special, incidental, or consequential damages of any character
arising as a result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill, work stoppage,
computer failure or malfunction, or any and all other commercial damages or
losses), even if such Contributor has been advised of the possibility of such
damages.

9. Accepting Warranty or Additional Liability. While redistributing the Work or
Derivative Works thereof, You may choose to offer, and charge a fee for,
acceptance of support, warranty, indemnity, or other liability obligations and/or
rights consistent with this License. However, in accepting such obligations, You
may act only on Your own behalf and on Your sole responsibility, not on behalf of
any other Contributor, and only if You agree to indemnify, defend, and hold each
Contributor harmless for any liability incurred by, or claims asserted against,
such Contributor by reason of your accepting any such warranty or additional
liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work

To apply the Apache License to your work, attach the following boilerplate
notice, with the fields enclosed by brackets "[]" replaced with your own
identifying information. (Don't include the brackets!) The text should be
enclosed in the appropriate comment syntax for the file format. We also recommend
that a file or class name and description of purpose be included on the same
"printed page" as the copyright notice for easier identification within
third-party archives.

  Copyright [yyyy] [name of copyright owner] Licensed under the Apache License,
  Version 2.0 (the "License"); you may not use this file except in compliance
  with the License. You may obtain a copy of the License at
  http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law
  or agreed to in writing, software distributed under the License is
  distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied. See the License for the specific language
  governing permissions and limitations under the License.

---

BSD 2-clause "Simplified" License
(Pygments - Python syntax highlighter 2.19.2)

BSD Two Clause License
======================

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this
    list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice,
    this list of conditions and the following disclaimer in the documentation
    and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.

---

BSD 3-clause "New" or "Revised" License
(gitdb 4.0.12, GitPython 3.1.45, idna 3.11, NumPy 1.24.4, Packaging 25.0, SciPy 1.9.1, smmap 5.0.2, voluptuous 0.15.2)

Copyright (c) <YEAR>, <OWNER>
All rights reserved.

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

  * Redistributions of source code must retain the above copyright notice, this
    list of conditions and the following disclaimer.

  * Redistributions in binary form must reproduce the above copyright notice,
    this list of conditions and the following disclaimer in the documentation
    and/or other materials provided with the distribution.

  * Neither the name of the <ORGANIZATION> nor the names of its contributors may
    be used to endorse or promote products derived from this software without
    specific prior written permission.


THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

---

Expat License
(mccabe 0.7.0)

Expat License
=============

Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd
                               and Clark Cooper
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers.

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in the
Software without restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

---

MIT License
(pypi/setuptools 59.6.0)

Copyright Jason R. Coombs

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE

---

MIT License
(exceptiongroup 1.3.0, flake8 7.3.0, pycodestyle 2.14.0, Pyflakes 3.4.0, pytest 8.4.2, python-pluggy 1.6.0, python3-charset-normalizer 3.4.4, ruamel-yaml 0.18.6, ruamel.yaml.clib 0.2.14, tomli 2.3.0, urllib3 2.5.0)

The MIT License
===============

Copyright (c) <year> <copyright holders>

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in the
Software without restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

---

Mozilla Public License 2.0
(python-certifi 2024.7.4)

Mozilla Public License
Version 2.0
======================


1. Definitions
--------------

  1.1. "Contributor"

  means each individual or legal entity that creates, contributes to the creation
  of, or owns Covered Software.

  1.2. "Contributor Version"

  means the combination of the Contributions of others (if any) used by a
  Contributor and that particular Contributor's Contribution.

  1.3. "Contribution"

  means Covered Software of a particular Contributor.

  1.4. "Covered Software"

  means Source Code Form to which the initial Contributor has attached the notice
  in Exhibit A, the Executable Form of such Source Code Form, and Modifications
  of such Source Code Form, in each case including portions thereof.

  1.5. "Incompatible With Secondary Licenses"

  means

    a. 

      that the initial Contributor has attached the notice described in Exhibit B
      to the Covered Software; or

    b. 

      that the Covered Software was made available under the terms of version 1.1
      or earlier of the License, but not also under the terms of a Secondary
      License.

  1.6. "Executable Form"

  means any form of the work other than Source Code Form.

  1.7. "Larger Work"

  means a work that combines Covered Software with other material, in a separate
  file or files, that is not Covered Software.

  1.8. "License"

  means this document.

  1.9. "Licensable"

  means having the right to grant, to the maximum extent possible, whether at the
  time of the initial grant or subsequently, any and all of the rights conveyed
  by this License.

  1.10. "Modifications"

  means any of the following:

    a. 

      any file in Source Code Form that results from an addition to, deletion
      from, or modification of the contents of Covered Software; or

    b. 

      any new file in Source Code Form that contains any Covered Software.

  1.11. "Patent Claims" of a Contributor

  means any patent claim(s), including without limitation, method, process, and
  apparatus claims, in any patent Licensable by such Contributor that would be
  infringed, but for the grant of the License, by the making, using, selling,
  offering for sale, having made, import, or transfer of either its Contributions
  or its Contributor Version.

  1.12. "Secondary License"

  means either the GNU General Public License, Version 2.0, the GNU Lesser
  General Public License, Version 2.1, the GNU Affero General Public License,
  Version 3.0, or any later versions of those licenses.

  1.13. "Source Code Form"

  means the form of the work preferred for making modifications.

  1.14. "You" (or "Your")

  means an individual or a legal entity exercising rights under this License. For
  legal entities, "You" includes any entity that controls, is controlled by, or
  is under common control with You. For purposes of this definition, "control"
  means (a) the power, direct or indirect, to cause the direction or management
  of such entity, whether by contract or otherwise, or (b) ownership of more than
  fifty percent (50%) of the outstanding shares or beneficial ownership of such
  entity.


2. License Grants and Conditions
--------------------------------


  2.1. Grants

  Each Contributor hereby grants You a world-wide, royalty-free, non-exclusive
  license:

    a. 

      under intellectual property rights (other than patent or trademark)
      Licensable by such Contributor to use, reproduce, make available, modify,
      display, perform, distribute, and otherwise exploit its Contributions,
      either on an unmodified basis, with Modifications, or as part of a Larger
      Work; and

    b. 

      under Patent Claims of such Contributor to make, use, sell, offer for sale,
      have made, import, and otherwise transfer either its Contributions or its
      Contributor Version.


  2.2. Effective Date

  The licenses granted in Section 2.1 with respect to any Contribution become
  effective for each Contribution on the date the Contributor first distributes
  such Contribution.


  2.3. Limitations on Grant Scope

  The licenses granted in this Section 2 are the only rights granted under this
  License. No additional rights or licenses will be implied from the distribution
  or licensing of Covered Software under this License. Notwithstanding
  Section 2.1(b) above, no patent license is granted by a Contributor:

    a. 

      for any code that a Contributor has removed from Covered Software; or

    b. 

      for infringements caused by: (i) Your and any other third party's
      modifications of Covered Software, or (ii) the combination of its
      Contributions with other software (except as part of its Contributor
      Version); or

    c. 

      under Patent Claims infringed by Covered Software in the absence of its
      Contributions.

  This License does not grant any rights in the trademarks, service marks, or
  logos of any Contributor (except as may be necessary to comply with the notice
  requirements in Section 3.4).


  2.4. Subsequent Licenses

  No Contributor makes additional grants as a result of Your choice to distribute
  the Covered Software under a subsequent version of this License (see
  Section 10.2) or under the terms of a Secondary License (if permitted under the
  terms of Section 3.3).


  2.5. Representation

  Each Contributor represents that the Contributor believes its Contributions are
  its original creation(s) or it has sufficient rights to grant the rights to its
  Contributions conveyed by this License.


  2.6. Fair Use

  This License is not intended to limit any rights You have under applicable
  copyright doctrines of fair use, fair dealing, or other equivalents.


  2.7. Conditions

  Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted in
  Section 2.1.


3. Responsibilities
-------------------


  3.1. Distribution of Source Form

  All distribution of Covered Software in Source Code Form, including any
  Modifications that You create or to which You contribute, must be under the
  terms of this License. You must inform recipients that the Source Code Form of
  the Covered Software is governed by the terms of this License, and how they can
  obtain a copy of this License. You may not attempt to alter or restrict the
  recipients' rights in the Source Code Form.


  3.2. Distribution of Executable Form

  If You distribute Covered Software in Executable Form then:

    a. 

      such Covered Software must also be made available in Source Code Form, as
      described in Section 3.1, and You must inform recipients of the Executable
      Form how they can obtain a copy of such Source Code Form by reasonable
      means in a timely manner, at a charge no more than the cost of distribution
      to the recipient; and

    b. 

      You may distribute such Executable Form under the terms of this License, or
      sublicense it under different terms, provided that the license for the
      Executable Form does not attempt to limit or alter the recipients' rights
      in the Source Code Form under this License.


  3.3. Distribution of a Larger Work

  You may create and distribute a Larger Work under terms of Your choice,
  provided that You also comply with the requirements of this License for the
  Covered Software. If the Larger Work is a combination of Covered Software with
  a work governed by one or more Secondary Licenses, and the Covered Software is
  not Incompatible With Secondary Licenses, this License permits You to
  additionally distribute such Covered Software under the terms of such Secondary
  License(s), so that the recipient of the Larger Work may, at their option,
  further distribute the Covered Software under the terms of either this License
  or such Secondary License(s).


  3.4. Notices

  You may not remove or alter the substance of any license notices (including
  copyright notices, patent notices, disclaimers of warranty, or limitations of
  liability) contained within the Source Code Form of the Covered Software,
  except that You may alter any license notices to the extent required to remedy
  known factual inaccuracies.


  3.5. Application of Additional Terms

  You may choose to offer, and to charge a fee for, warranty, support, indemnity
  or liability obligations to one or more recipients of Covered Software.
  However, You may do so only on Your own behalf, and not on behalf of any
  Contributor. You must make it absolutely clear that any such warranty, support,
  indemnity, or liability obligation is offered by You alone, and You hereby
  agree to indemnify every Contributor for any liability incurred by such
  Contributor as a result of warranty, support, indemnity or liability terms You
  offer. You may include additional disclaimers of warranty and limitations of
  liability specific to any jurisdiction.


4. Inability to Comply Due to Statute or Regulation
---------------------------------------------------

If it is impossible for You to comply with any of the terms of this License with
respect to some or all of the Covered Software due to statute, judicial order, or
regulation then You must: (a) comply with the terms of this License to the
maximum extent possible; and (b) describe the limitations and the code they
affect. Such description must be placed in a text file included with all
distributions of the Covered Software under this License. Except to the extent
prohibited by statute or regulation, such description must be sufficiently
detailed for a recipient of ordinary skill to be able to understand it.


5. Termination
--------------

  5.1. The rights granted under this License will terminate automatically if You
  fail to comply with any of its terms. However, if You become compliant, then
  the rights granted under this License from a particular Contributor are
  reinstated (a) provisionally, unless and until such Contributor explicitly and
  finally terminates Your grants, and (b) on an ongoing basis, if such
  Contributor fails to notify You of the non-compliance by some reasonable means
  prior to 60 days after You have come back into compliance. Moreover, Your
  grants from a particular Contributor are reinstated on an ongoing basis if such
  Contributor notifies You of the non-compliance by some reasonable means, this
  is the first time You have received notice of non-compliance with this License
  from such Contributor, and You become compliant prior to 30 days after Your
  receipt of the notice.

  5.2. If You initiate litigation against any entity by asserting a patent
  infringement claim (excluding declaratory judgment actions, counter-claims, and
  cross-claims) alleging that a Contributor Version directly or indirectly
  infringes any patent, then the rights granted to You by any and all
  Contributors for the Covered Software under Section 2.1 of this License shall
  terminate.

  5.3. In the event of termination under Sections 5.1 or 5.2 above, all end user
  license agreements (excluding distributors and resellers) which have been
  validly granted by You or Your distributors under this License prior to
  termination shall survive termination.


6. Disclaimer of Warranty
-------------------------

Covered Software is provided under this License on an "as is" basis, without
warranty of any kind, either expressed, implied, or statutory, including, without
limitation, warranties that the Covered Software is free of defects,
merchantable, fit for a particular purpose or non-infringing. The entire risk as
to the quality and performance of the Covered Software is with You. Should any
Covered Software prove defective in any respect, You (not any Contributor) assume
the cost of any necessary servicing, repair, or correction. This disclaimer of
warranty constitutes an essential part of this License. No use of any Covered
Software is authorized under this License except under this disclaimer.


7. Limitation of Liability
--------------------------

Under no circumstances and under no legal theory, whether tort (including
negligence), contract, or otherwise, shall any Contributor, or anyone who
distributes Covered Software as permitted above, be liable to You for any direct,
indirect, special, incidental, or consequential damages of any character
including, without limitation, damages for lost profits, loss of goodwill, work
stoppage, computer failure or malfunction, or any and all other commercial
damages or losses, even if such party shall have been informed of the possibility
of such damages. This limitation of liability shall not apply to liability for
death or personal injury resulting from such party's negligence to the extent
applicable law prohibits such limitation. Some jurisdictions do not allow the
exclusion or limitation of incidental or consequential damages, so this exclusion
and limitation may not apply to You.


8. Litigation
-------------

Any litigation relating to this License may be brought only in the courts of a
jurisdiction where the defendant maintains its principal place of business and
such litigation shall be governed by laws of that jurisdiction, without reference
to its conflict-of-law provisions. Nothing in this Section shall prevent a
party's ability to bring cross-claims or counter-claims.


9. Miscellaneous
----------------

This License represents the complete agreement concerning the subject matter
hereof. If any provision of this License is held to be unenforceable, such
provision shall be reformed only to the extent necessary to make it enforceable.
Any law or regulation which provides that the language of a contract shall be
construed against the drafter shall not be used to construe this License against
a Contributor.


10. Versions of the License
---------------------------


  10.1. New Versions

  Mozilla Foundation is the license steward. Except as provided in Section 10.3,
  no one other than the license steward has the right to modify or publish new
  versions of this License. Each version will be given a distinguishing version
  number.


  10.2. Effect of New Versions

  You may distribute the Covered Software under the terms of the version of the
  License under which You originally received the Covered Software, or under the
  terms of any subsequent version published by the license steward.


  10.3. Modified Versions

  If you create software not governed by this License, and you want to create a
  new license for such software, you may create and use a modified version of
  this License if you rename the license and remove any references to the name of
  the license steward (except to note that such modified license differs from
  this License).


  10.4. Distributing Source Code Form that is Incompatible With Secondary
  Licenses

  If You choose to distribute Source Code Form that is Incompatible With
  Secondary Licenses under the terms of this version of the License, the notice
  described in Exhibit B of this License must be attached.


Exhibit A - Source Code Form License Notice
-------------------------------------------

  This Source Code Form is subject to the terms of the Mozilla Public License,
  v. 2.0. If a copy of the MPL was not distributed with this file, You can
  obtain one at http://mozilla.org/MPL/2.0/.

If it is not possible or desirable to put the notice in a particular file, then
You may include the notice in a location (such as a LICENSE file in a relevant
directory) where a recipient would be likely to look for such a notice.

You may add additional accurate notices of copyright ownership.


Exhibit B - "Incompatible With Secondary Licenses" Notice
---------------------------------------------------------

  This Source Code Form is "Incompatible With Secondary Licenses", as defined
  by the Mozilla Public License, v. 2.0.

---

Python Software Foundation License 2.0
(python-typing-extensions 4.15.0)

This license was approved as the official PSF License Version 2 on October 22,
2004. The only differences between this and version 1 of the PSF license consist
of removing Python version numbers (like 2.1.1 or 2.3).



PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
============================================

--------------------------------------------

  1.  This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"),
    and the Individual or Organization ("Licensee") accessing and otherwise using
    this software ("Python") in source or binary form and its associated
    documentation.

  2.  Subject to the terms and conditions of this License Agreement, PSF hereby
    grants Licensee a nonexclusive, royalty-free, world-wide license to
    reproduce, analyze, test, perform and/or display publicly, prepare derivative
    works, distribute, and otherwise use Python alone or in any derivative
    version, provided, however, that PSF's License Agreement and PSF's notice of
    copyright, i.e., "Copyright (c) 2001, 2002, 2003, 2004 Python Software
    Foundation; All Rights Reserved" are retained in Python alone or in any
    derivative version prepared by Licensee.

  3. In the event Licensee prepares a derivative work that is based on or
    incorporates Python or any part thereof, and wants to make the derivative
    work available to others as provided herein, then Licensee hereby agrees to
    include in any such work a brief summary of the changes made to Python.

  4.  PSF is making Python available to Licensee on an "AS IS" basis. PSF MAKES
    NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT
    NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF
    MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF
    PYTHON WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.

  5.  PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON FOR ANY
    INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF
    MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE
    THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.

  6.  This License Agreement will automatically terminate upon a material breach
    of its terms and conditions.

  7.  Nothing in this License Agreement shall be deemed to create any
    relationship of agency, partnership, or joint venture between PSF and
    Licensee. This License Agreement does not grant permission to use PSF
    trademarks or trade name in a trademark sense to endorse or promote products
    or services of Licensee, or any third party.

  8.  By copying, installing or otherwise using Python, Licensee agrees to be
    bound by the terms and conditions of this License Agreement.

---

