sequenzo 0.1.20__cp312-cp312-win_amd64.whl → 0.1.22__cp312-cp312-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of sequenzo might be problematic. Click here for more details.

Files changed (41) hide show
  1. sequenzo/big_data/clara/utils/get_weighted_diss.c +193 -193
  2. sequenzo/big_data/clara/utils/get_weighted_diss.cp312-win_amd64.pyd +0 -0
  3. sequenzo/clustering/clustering_c_code.cp312-win_amd64.pyd +0 -0
  4. sequenzo/clustering/hierarchical_clustering.py +1 -1
  5. sequenzo/define_sequence_data.py +4 -4
  6. sequenzo/dissimilarity_measures/c_code.cp312-win_amd64.pyd +0 -0
  7. sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.c +170 -171
  8. sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.cp312-win_amd64.pyd +0 -0
  9. sequenzo/dissimilarity_measures/utils/seqconc.c +232 -232
  10. sequenzo/dissimilarity_measures/utils/seqconc.cp312-win_amd64.pyd +0 -0
  11. sequenzo/dissimilarity_measures/utils/seqdss.c +325 -325
  12. sequenzo/dissimilarity_measures/utils/seqdss.cp312-win_amd64.pyd +0 -0
  13. sequenzo/dissimilarity_measures/utils/seqdur.c +325 -325
  14. sequenzo/dissimilarity_measures/utils/seqdur.cp312-win_amd64.pyd +0 -0
  15. sequenzo/dissimilarity_measures/utils/seqlength.c +225 -224
  16. sequenzo/dissimilarity_measures/utils/seqlength.cp312-win_amd64.pyd +0 -0
  17. sequenzo/multidomain/association_between_domains.py +1 -1
  18. sequenzo/multidomain/combt.py +4 -4
  19. sequenzo/multidomain/linked_polyad.py +3 -3
  20. sequenzo/prefix_tree/__init__.py +1 -1
  21. sequenzo/prefix_tree/individual_level_indicators.py +2 -2
  22. sequenzo/sequence_characteristics/overall_cross_sectional_entropy.py +2 -2
  23. sequenzo/sequence_characteristics/plot_characteristics.py +2 -2
  24. sequenzo/sequence_characteristics/simple_characteristics.py +2 -2
  25. sequenzo/suffix_tree/__init__.py +1 -1
  26. sequenzo/suffix_tree/individual_level_indicators.py +3 -3
  27. sequenzo/visualization/plot_single_medoid.py +2 -2
  28. sequenzo/visualization/plot_transition_matrix.py +3 -2
  29. sequenzo/visualization/utils/utils.py +2 -2
  30. sequenzo/with_event_history_analysis/sequence_analysis_multi_state_model.py +1 -1
  31. {sequenzo-0.1.20.dist-info → sequenzo-0.1.22.dist-info}/METADATA +17 -43
  32. {sequenzo-0.1.20.dist-info → sequenzo-0.1.22.dist-info}/RECORD +35 -41
  33. sequenzo/big_data/clara/utils/get_weighted_diss.pyx +0 -16
  34. sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.pyx +0 -95
  35. sequenzo/dissimilarity_measures/utils/seqconc.pyx +0 -26
  36. sequenzo/dissimilarity_measures/utils/seqdss.pyx +0 -33
  37. sequenzo/dissimilarity_measures/utils/seqdur.pyx +0 -34
  38. sequenzo/dissimilarity_measures/utils/seqlength.pyx +0 -19
  39. {sequenzo-0.1.20.dist-info → sequenzo-0.1.22.dist-info}/WHEEL +0 -0
  40. {sequenzo-0.1.20.dist-info → sequenzo-0.1.22.dist-info}/licenses/LICENSE +0 -0
  41. {sequenzo-0.1.20.dist-info → sequenzo-0.1.22.dist-info}/top_level.txt +0 -0
@@ -6,15 +6,15 @@
6
6
  "define_macros": [
7
7
  [
8
8
  "NPY_NO_DEPRECATED_API",
9
- "NPY_1_23_API_VERSION"
9
+ "NPY_1_7_API_VERSION"
10
10
  ]
11
11
  ],
12
12
  "depends": [
13
- "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-abt1xj3a\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\arrayobject.h",
14
- "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-abt1xj3a\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\arrayscalars.h",
15
- "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-abt1xj3a\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\ndarrayobject.h",
16
- "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-abt1xj3a\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\ndarraytypes.h",
17
- "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-abt1xj3a\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\ufuncobject.h"
13
+ "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-_m0bcxx9\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\arrayobject.h",
14
+ "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-_m0bcxx9\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\arrayscalars.h",
15
+ "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-_m0bcxx9\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\ndarrayobject.h",
16
+ "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-_m0bcxx9\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\ndarraytypes.h",
17
+ "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-_m0bcxx9\\overlay\\Lib\\site-packages\\numpy\\_core\\include\\numpy\\ufuncobject.h"
18
18
  ],
19
19
  "extra_compile_args": [
20
20
  "/W1",
@@ -23,12 +23,11 @@
23
23
  "/O2"
24
24
  ],
25
25
  "include_dirs": [
26
- "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-abt1xj3a\\overlay\\Lib\\site-packages\\pybind11\\include",
27
- "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-abt1xj3a\\overlay\\Lib\\site-packages\\pybind11\\include",
28
- "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-abt1xj3a\\overlay\\Lib\\site-packages\\numpy\\_core\\include",
26
+ "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-_m0bcxx9\\overlay\\Lib\\site-packages\\pybind11\\include",
27
+ "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-_m0bcxx9\\overlay\\Lib\\site-packages\\pybind11\\include",
28
+ "C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-build-env-_m0bcxx9\\overlay\\Lib\\site-packages\\numpy\\_core\\include",
29
29
  "sequenzo/dissimilarity_measures/src/",
30
- "D:\\a\\Sequenzo\\Sequenzo\\sequenzo\\dissimilarity_measures\\src\\xsimd\\include",
31
- "sequenzo/clustering/src/"
30
+ "D:\\a\\Sequenzo\\Sequenzo\\sequenzo\\dissimilarity_measures\\src\\xsimd\\include"
32
31
  ],
33
32
  "name": "sequenzo.dissimilarity_measures.utils.seqdur",
34
33
  "sources": [
@@ -1398,7 +1397,7 @@ static const char *__pyx_filename;
1398
1397
 
1399
1398
  static const char* const __pyx_f[] = {
1400
1399
  "sequenzo/dissimilarity_measures/utils/seqdur.pyx",
1401
- "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd",
1400
+ "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd",
1402
1401
  "cpython/type.pxd",
1403
1402
  };
1404
1403
  /* #### Code section: utility_code_proto_before_types ### */
@@ -1598,7 +1597,7 @@ typedef struct {
1598
1597
 
1599
1598
  /* #### Code section: numeric_typedefs ### */
1600
1599
 
1601
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":743
1600
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":743
1602
1601
  * # in Cython to enable them only on the right systems.
1603
1602
  *
1604
1603
  * ctypedef npy_int8 int8_t # <<<<<<<<<<<<<<
@@ -1607,7 +1606,7 @@ typedef struct {
1607
1606
  */
1608
1607
  typedef npy_int8 __pyx_t_5numpy_int8_t;
1609
1608
 
1610
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":744
1609
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":744
1611
1610
  *
1612
1611
  * ctypedef npy_int8 int8_t
1613
1612
  * ctypedef npy_int16 int16_t # <<<<<<<<<<<<<<
@@ -1616,7 +1615,7 @@ typedef npy_int8 __pyx_t_5numpy_int8_t;
1616
1615
  */
1617
1616
  typedef npy_int16 __pyx_t_5numpy_int16_t;
1618
1617
 
1619
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":745
1618
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":745
1620
1619
  * ctypedef npy_int8 int8_t
1621
1620
  * ctypedef npy_int16 int16_t
1622
1621
  * ctypedef npy_int32 int32_t # <<<<<<<<<<<<<<
@@ -1625,7 +1624,7 @@ typedef npy_int16 __pyx_t_5numpy_int16_t;
1625
1624
  */
1626
1625
  typedef npy_int32 __pyx_t_5numpy_int32_t;
1627
1626
 
1628
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":746
1627
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":746
1629
1628
  * ctypedef npy_int16 int16_t
1630
1629
  * ctypedef npy_int32 int32_t
1631
1630
  * ctypedef npy_int64 int64_t # <<<<<<<<<<<<<<
@@ -1634,7 +1633,7 @@ typedef npy_int32 __pyx_t_5numpy_int32_t;
1634
1633
  */
1635
1634
  typedef npy_int64 __pyx_t_5numpy_int64_t;
1636
1635
 
1637
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":748
1636
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":748
1638
1637
  * ctypedef npy_int64 int64_t
1639
1638
  *
1640
1639
  * ctypedef npy_uint8 uint8_t # <<<<<<<<<<<<<<
@@ -1643,7 +1642,7 @@ typedef npy_int64 __pyx_t_5numpy_int64_t;
1643
1642
  */
1644
1643
  typedef npy_uint8 __pyx_t_5numpy_uint8_t;
1645
1644
 
1646
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":749
1645
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":749
1647
1646
  *
1648
1647
  * ctypedef npy_uint8 uint8_t
1649
1648
  * ctypedef npy_uint16 uint16_t # <<<<<<<<<<<<<<
@@ -1652,7 +1651,7 @@ typedef npy_uint8 __pyx_t_5numpy_uint8_t;
1652
1651
  */
1653
1652
  typedef npy_uint16 __pyx_t_5numpy_uint16_t;
1654
1653
 
1655
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":750
1654
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":750
1656
1655
  * ctypedef npy_uint8 uint8_t
1657
1656
  * ctypedef npy_uint16 uint16_t
1658
1657
  * ctypedef npy_uint32 uint32_t # <<<<<<<<<<<<<<
@@ -1661,7 +1660,7 @@ typedef npy_uint16 __pyx_t_5numpy_uint16_t;
1661
1660
  */
1662
1661
  typedef npy_uint32 __pyx_t_5numpy_uint32_t;
1663
1662
 
1664
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":751
1663
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":751
1665
1664
  * ctypedef npy_uint16 uint16_t
1666
1665
  * ctypedef npy_uint32 uint32_t
1667
1666
  * ctypedef npy_uint64 uint64_t # <<<<<<<<<<<<<<
@@ -1670,7 +1669,7 @@ typedef npy_uint32 __pyx_t_5numpy_uint32_t;
1670
1669
  */
1671
1670
  typedef npy_uint64 __pyx_t_5numpy_uint64_t;
1672
1671
 
1673
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":753
1672
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":753
1674
1673
  * ctypedef npy_uint64 uint64_t
1675
1674
  *
1676
1675
  * ctypedef npy_float32 float32_t # <<<<<<<<<<<<<<
@@ -1679,7 +1678,7 @@ typedef npy_uint64 __pyx_t_5numpy_uint64_t;
1679
1678
  */
1680
1679
  typedef npy_float32 __pyx_t_5numpy_float32_t;
1681
1680
 
1682
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":754
1681
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":754
1683
1682
  *
1684
1683
  * ctypedef npy_float32 float32_t
1685
1684
  * ctypedef npy_float64 float64_t # <<<<<<<<<<<<<<
@@ -1688,7 +1687,7 @@ typedef npy_float32 __pyx_t_5numpy_float32_t;
1688
1687
  */
1689
1688
  typedef npy_float64 __pyx_t_5numpy_float64_t;
1690
1689
 
1691
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":761
1690
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":761
1692
1691
  * ctypedef double complex complex128_t
1693
1692
  *
1694
1693
  * ctypedef npy_longlong longlong_t # <<<<<<<<<<<<<<
@@ -1697,7 +1696,7 @@ typedef npy_float64 __pyx_t_5numpy_float64_t;
1697
1696
  */
1698
1697
  typedef npy_longlong __pyx_t_5numpy_longlong_t;
1699
1698
 
1700
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":762
1699
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":762
1701
1700
  *
1702
1701
  * ctypedef npy_longlong longlong_t
1703
1702
  * ctypedef npy_ulonglong ulonglong_t # <<<<<<<<<<<<<<
@@ -1706,7 +1705,7 @@ typedef npy_longlong __pyx_t_5numpy_longlong_t;
1706
1705
  */
1707
1706
  typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t;
1708
1707
 
1709
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":764
1708
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":764
1710
1709
  * ctypedef npy_ulonglong ulonglong_t
1711
1710
  *
1712
1711
  * ctypedef npy_intp intp_t # <<<<<<<<<<<<<<
@@ -1715,7 +1714,7 @@ typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t;
1715
1714
  */
1716
1715
  typedef npy_intp __pyx_t_5numpy_intp_t;
1717
1716
 
1718
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":765
1717
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":765
1719
1718
  *
1720
1719
  * ctypedef npy_intp intp_t
1721
1720
  * ctypedef npy_uintp uintp_t # <<<<<<<<<<<<<<
@@ -1724,7 +1723,7 @@ typedef npy_intp __pyx_t_5numpy_intp_t;
1724
1723
  */
1725
1724
  typedef npy_uintp __pyx_t_5numpy_uintp_t;
1726
1725
 
1727
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":767
1726
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":767
1728
1727
  * ctypedef npy_uintp uintp_t
1729
1728
  *
1730
1729
  * ctypedef npy_double float_t # <<<<<<<<<<<<<<
@@ -1733,7 +1732,7 @@ typedef npy_uintp __pyx_t_5numpy_uintp_t;
1733
1732
  */
1734
1733
  typedef npy_double __pyx_t_5numpy_float_t;
1735
1734
 
1736
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":768
1735
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":768
1737
1736
  *
1738
1737
  * ctypedef npy_double float_t
1739
1738
  * ctypedef npy_double double_t # <<<<<<<<<<<<<<
@@ -1742,7 +1741,7 @@ typedef npy_double __pyx_t_5numpy_float_t;
1742
1741
  */
1743
1742
  typedef npy_double __pyx_t_5numpy_double_t;
1744
1743
 
1745
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":769
1744
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":769
1746
1745
  * ctypedef npy_double float_t
1747
1746
  * ctypedef npy_double double_t
1748
1747
  * ctypedef npy_longdouble longdouble_t # <<<<<<<<<<<<<<
@@ -3084,7 +3083,7 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void
3084
3083
  #endif
3085
3084
  /* #### Code section: module_code ### */
3086
3085
 
3087
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":242
3086
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":242
3088
3087
  * cdef int type_num
3089
3088
  *
3090
3089
  * @property # <<<<<<<<<<<<<<
@@ -3095,7 +3094,7 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void
3095
3094
  static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_8itemsize_itemsize(PyArray_Descr *__pyx_v_self) {
3096
3095
  npy_intp __pyx_r;
3097
3096
 
3098
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":244
3097
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":244
3099
3098
  * @property
3100
3099
  * cdef inline npy_intp itemsize(self) noexcept nogil:
3101
3100
  * return PyDataType_ELSIZE(self) # <<<<<<<<<<<<<<
@@ -3105,7 +3104,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_8itemsize_itemsize(PyArray_D
3105
3104
  __pyx_r = PyDataType_ELSIZE(__pyx_v_self);
3106
3105
  goto __pyx_L0;
3107
3106
 
3108
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":242
3107
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":242
3109
3108
  * cdef int type_num
3110
3109
  *
3111
3110
  * @property # <<<<<<<<<<<<<<
@@ -3118,7 +3117,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_8itemsize_itemsize(PyArray_D
3118
3117
  return __pyx_r;
3119
3118
  }
3120
3119
 
3121
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":246
3120
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":246
3122
3121
  * return PyDataType_ELSIZE(self)
3123
3122
  *
3124
3123
  * @property # <<<<<<<<<<<<<<
@@ -3129,7 +3128,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_8itemsize_itemsize(PyArray_D
3129
3128
  static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_9alignment_alignment(PyArray_Descr *__pyx_v_self) {
3130
3129
  npy_intp __pyx_r;
3131
3130
 
3132
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":248
3131
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":248
3133
3132
  * @property
3134
3133
  * cdef inline npy_intp alignment(self) noexcept nogil:
3135
3134
  * return PyDataType_ALIGNMENT(self) # <<<<<<<<<<<<<<
@@ -3139,7 +3138,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_9alignment_alignment(PyArray
3139
3138
  __pyx_r = PyDataType_ALIGNMENT(__pyx_v_self);
3140
3139
  goto __pyx_L0;
3141
3140
 
3142
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":246
3141
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":246
3143
3142
  * return PyDataType_ELSIZE(self)
3144
3143
  *
3145
3144
  * @property # <<<<<<<<<<<<<<
@@ -3152,7 +3151,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_9alignment_alignment(PyArray
3152
3151
  return __pyx_r;
3153
3152
  }
3154
3153
 
3155
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":252
3154
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":252
3156
3155
  * # Use fields/names with care as they may be NULL. You must check
3157
3156
  * # for this using PyDataType_HASFIELDS.
3158
3157
  * @property # <<<<<<<<<<<<<<
@@ -3166,7 +3165,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_6fields_fields(PyArray_Desc
3166
3165
  PyObject *__pyx_t_1;
3167
3166
  __Pyx_RefNannySetupContext("fields", 0);
3168
3167
 
3169
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":254
3168
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":254
3170
3169
  * @property
3171
3170
  * cdef inline object fields(self):
3172
3171
  * return <object>PyDataType_FIELDS(self) # <<<<<<<<<<<<<<
@@ -3179,7 +3178,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_6fields_fields(PyArray_Desc
3179
3178
  __pyx_r = ((PyObject *)__pyx_t_1);
3180
3179
  goto __pyx_L0;
3181
3180
 
3182
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":252
3181
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":252
3183
3182
  * # Use fields/names with care as they may be NULL. You must check
3184
3183
  * # for this using PyDataType_HASFIELDS.
3185
3184
  * @property # <<<<<<<<<<<<<<
@@ -3194,7 +3193,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_6fields_fields(PyArray_Desc
3194
3193
  return __pyx_r;
3195
3194
  }
3196
3195
 
3197
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":256
3196
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":256
3198
3197
  * return <object>PyDataType_FIELDS(self)
3199
3198
  *
3200
3199
  * @property # <<<<<<<<<<<<<<
@@ -3208,7 +3207,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_5names_names(PyArray_Descr
3208
3207
  PyObject *__pyx_t_1;
3209
3208
  __Pyx_RefNannySetupContext("names", 0);
3210
3209
 
3211
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":258
3210
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":258
3212
3211
  * @property
3213
3212
  * cdef inline tuple names(self):
3214
3213
  * return <tuple>PyDataType_NAMES(self) # <<<<<<<<<<<<<<
@@ -3221,7 +3220,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_5names_names(PyArray_Descr
3221
3220
  __pyx_r = ((PyObject*)__pyx_t_1);
3222
3221
  goto __pyx_L0;
3223
3222
 
3224
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":256
3223
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":256
3225
3224
  * return <object>PyDataType_FIELDS(self)
3226
3225
  *
3227
3226
  * @property # <<<<<<<<<<<<<<
@@ -3236,7 +3235,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_5names_names(PyArray_Descr
3236
3235
  return __pyx_r;
3237
3236
  }
3238
3237
 
3239
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":263
3238
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":263
3240
3239
  * # valid (the pointer can be NULL). Most users should access
3241
3240
  * # this field via the inline helper method PyDataType_SHAPE.
3242
3241
  * @property # <<<<<<<<<<<<<<
@@ -3247,7 +3246,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_5names_names(PyArray_Descr
3247
3246
  static CYTHON_INLINE PyArray_ArrayDescr *__pyx_f_5numpy_5dtype_8subarray_subarray(PyArray_Descr *__pyx_v_self) {
3248
3247
  PyArray_ArrayDescr *__pyx_r;
3249
3248
 
3250
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":265
3249
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":265
3251
3250
  * @property
3252
3251
  * cdef inline PyArray_ArrayDescr* subarray(self) noexcept nogil:
3253
3252
  * return PyDataType_SUBARRAY(self) # <<<<<<<<<<<<<<
@@ -3257,7 +3256,7 @@ static CYTHON_INLINE PyArray_ArrayDescr *__pyx_f_5numpy_5dtype_8subarray_subarra
3257
3256
  __pyx_r = PyDataType_SUBARRAY(__pyx_v_self);
3258
3257
  goto __pyx_L0;
3259
3258
 
3260
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":263
3259
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":263
3261
3260
  * # valid (the pointer can be NULL). Most users should access
3262
3261
  * # this field via the inline helper method PyDataType_SHAPE.
3263
3262
  * @property # <<<<<<<<<<<<<<
@@ -3270,7 +3269,7 @@ static CYTHON_INLINE PyArray_ArrayDescr *__pyx_f_5numpy_5dtype_8subarray_subarra
3270
3269
  return __pyx_r;
3271
3270
  }
3272
3271
 
3273
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":267
3272
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":267
3274
3273
  * return PyDataType_SUBARRAY(self)
3275
3274
  *
3276
3275
  * @property # <<<<<<<<<<<<<<
@@ -3281,7 +3280,7 @@ static CYTHON_INLINE PyArray_ArrayDescr *__pyx_f_5numpy_5dtype_8subarray_subarra
3281
3280
  static CYTHON_INLINE npy_uint64 __pyx_f_5numpy_5dtype_5flags_flags(PyArray_Descr *__pyx_v_self) {
3282
3281
  npy_uint64 __pyx_r;
3283
3282
 
3284
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":270
3283
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":270
3285
3284
  * cdef inline npy_uint64 flags(self) noexcept nogil:
3286
3285
  * """The data types flags."""
3287
3286
  * return PyDataType_FLAGS(self) # <<<<<<<<<<<<<<
@@ -3291,7 +3290,7 @@ static CYTHON_INLINE npy_uint64 __pyx_f_5numpy_5dtype_5flags_flags(PyArray_Descr
3291
3290
  __pyx_r = PyDataType_FLAGS(__pyx_v_self);
3292
3291
  goto __pyx_L0;
3293
3292
 
3294
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":267
3293
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":267
3295
3294
  * return PyDataType_SUBARRAY(self)
3296
3295
  *
3297
3296
  * @property # <<<<<<<<<<<<<<
@@ -3304,7 +3303,7 @@ static CYTHON_INLINE npy_uint64 __pyx_f_5numpy_5dtype_5flags_flags(PyArray_Descr
3304
3303
  return __pyx_r;
3305
3304
  }
3306
3305
 
3307
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":279
3306
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":279
3308
3307
  * ctypedef class numpy.broadcast [object PyArrayMultiIterObject, check_size ignore]:
3309
3308
  *
3310
3309
  * @property # <<<<<<<<<<<<<<
@@ -3315,7 +3314,7 @@ static CYTHON_INLINE npy_uint64 __pyx_f_5numpy_5dtype_5flags_flags(PyArray_Descr
3315
3314
  static CYTHON_INLINE int __pyx_f_5numpy_9broadcast_7numiter_numiter(PyArrayMultiIterObject *__pyx_v_self) {
3316
3315
  int __pyx_r;
3317
3316
 
3318
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":282
3317
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":282
3319
3318
  * cdef inline int numiter(self) noexcept nogil:
3320
3319
  * """The number of arrays that need to be broadcast to the same shape."""
3321
3320
  * return PyArray_MultiIter_NUMITER(self) # <<<<<<<<<<<<<<
@@ -3325,7 +3324,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_9broadcast_7numiter_numiter(PyArrayMulti
3325
3324
  __pyx_r = PyArray_MultiIter_NUMITER(__pyx_v_self);
3326
3325
  goto __pyx_L0;
3327
3326
 
3328
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":279
3327
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":279
3329
3328
  * ctypedef class numpy.broadcast [object PyArrayMultiIterObject, check_size ignore]:
3330
3329
  *
3331
3330
  * @property # <<<<<<<<<<<<<<
@@ -3338,7 +3337,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_9broadcast_7numiter_numiter(PyArrayMulti
3338
3337
  return __pyx_r;
3339
3338
  }
3340
3339
 
3341
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":284
3340
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":284
3342
3341
  * return PyArray_MultiIter_NUMITER(self)
3343
3342
  *
3344
3343
  * @property # <<<<<<<<<<<<<<
@@ -3349,7 +3348,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_9broadcast_7numiter_numiter(PyArrayMulti
3349
3348
  static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_4size_size(PyArrayMultiIterObject *__pyx_v_self) {
3350
3349
  npy_intp __pyx_r;
3351
3350
 
3352
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":287
3351
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":287
3353
3352
  * cdef inline npy_intp size(self) noexcept nogil:
3354
3353
  * """The total broadcasted size."""
3355
3354
  * return PyArray_MultiIter_SIZE(self) # <<<<<<<<<<<<<<
@@ -3359,7 +3358,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_4size_size(PyArrayMultiI
3359
3358
  __pyx_r = PyArray_MultiIter_SIZE(__pyx_v_self);
3360
3359
  goto __pyx_L0;
3361
3360
 
3362
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":284
3361
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":284
3363
3362
  * return PyArray_MultiIter_NUMITER(self)
3364
3363
  *
3365
3364
  * @property # <<<<<<<<<<<<<<
@@ -3372,7 +3371,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_4size_size(PyArrayMultiI
3372
3371
  return __pyx_r;
3373
3372
  }
3374
3373
 
3375
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":289
3374
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":289
3376
3375
  * return PyArray_MultiIter_SIZE(self)
3377
3376
  *
3378
3377
  * @property # <<<<<<<<<<<<<<
@@ -3383,7 +3382,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_4size_size(PyArrayMultiI
3383
3382
  static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_5index_index(PyArrayMultiIterObject *__pyx_v_self) {
3384
3383
  npy_intp __pyx_r;
3385
3384
 
3386
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":292
3385
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":292
3387
3386
  * cdef inline npy_intp index(self) noexcept nogil:
3388
3387
  * """The current (1-d) index into the broadcasted result."""
3389
3388
  * return PyArray_MultiIter_INDEX(self) # <<<<<<<<<<<<<<
@@ -3393,7 +3392,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_5index_index(PyArrayMult
3393
3392
  __pyx_r = PyArray_MultiIter_INDEX(__pyx_v_self);
3394
3393
  goto __pyx_L0;
3395
3394
 
3396
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":289
3395
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":289
3397
3396
  * return PyArray_MultiIter_SIZE(self)
3398
3397
  *
3399
3398
  * @property # <<<<<<<<<<<<<<
@@ -3406,7 +3405,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_5index_index(PyArrayMult
3406
3405
  return __pyx_r;
3407
3406
  }
3408
3407
 
3409
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":294
3408
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":294
3410
3409
  * return PyArray_MultiIter_INDEX(self)
3411
3410
  *
3412
3411
  * @property # <<<<<<<<<<<<<<
@@ -3417,7 +3416,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_5index_index(PyArrayMult
3417
3416
  static CYTHON_INLINE int __pyx_f_5numpy_9broadcast_2nd_nd(PyArrayMultiIterObject *__pyx_v_self) {
3418
3417
  int __pyx_r;
3419
3418
 
3420
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":297
3419
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":297
3421
3420
  * cdef inline int nd(self) noexcept nogil:
3422
3421
  * """The number of dimensions in the broadcasted result."""
3423
3422
  * return PyArray_MultiIter_NDIM(self) # <<<<<<<<<<<<<<
@@ -3427,7 +3426,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_9broadcast_2nd_nd(PyArrayMultiIterObject
3427
3426
  __pyx_r = PyArray_MultiIter_NDIM(__pyx_v_self);
3428
3427
  goto __pyx_L0;
3429
3428
 
3430
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":294
3429
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":294
3431
3430
  * return PyArray_MultiIter_INDEX(self)
3432
3431
  *
3433
3432
  * @property # <<<<<<<<<<<<<<
@@ -3440,7 +3439,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_9broadcast_2nd_nd(PyArrayMultiIterObject
3440
3439
  return __pyx_r;
3441
3440
  }
3442
3441
 
3443
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":299
3442
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":299
3444
3443
  * return PyArray_MultiIter_NDIM(self)
3445
3444
  *
3446
3445
  * @property # <<<<<<<<<<<<<<
@@ -3451,7 +3450,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_9broadcast_2nd_nd(PyArrayMultiIterObject
3451
3450
  static CYTHON_INLINE npy_intp *__pyx_f_5numpy_9broadcast_10dimensions_dimensions(PyArrayMultiIterObject *__pyx_v_self) {
3452
3451
  npy_intp *__pyx_r;
3453
3452
 
3454
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":302
3453
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":302
3455
3454
  * cdef inline npy_intp* dimensions(self) noexcept nogil:
3456
3455
  * """The shape of the broadcasted result."""
3457
3456
  * return PyArray_MultiIter_DIMS(self) # <<<<<<<<<<<<<<
@@ -3461,7 +3460,7 @@ static CYTHON_INLINE npy_intp *__pyx_f_5numpy_9broadcast_10dimensions_dimensions
3461
3460
  __pyx_r = PyArray_MultiIter_DIMS(__pyx_v_self);
3462
3461
  goto __pyx_L0;
3463
3462
 
3464
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":299
3463
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":299
3465
3464
  * return PyArray_MultiIter_NDIM(self)
3466
3465
  *
3467
3466
  * @property # <<<<<<<<<<<<<<
@@ -3474,7 +3473,7 @@ static CYTHON_INLINE npy_intp *__pyx_f_5numpy_9broadcast_10dimensions_dimensions
3474
3473
  return __pyx_r;
3475
3474
  }
3476
3475
 
3477
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":304
3476
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":304
3478
3477
  * return PyArray_MultiIter_DIMS(self)
3479
3478
  *
3480
3479
  * @property # <<<<<<<<<<<<<<
@@ -3485,7 +3484,7 @@ static CYTHON_INLINE npy_intp *__pyx_f_5numpy_9broadcast_10dimensions_dimensions
3485
3484
  static CYTHON_INLINE void **__pyx_f_5numpy_9broadcast_5iters_iters(PyArrayMultiIterObject *__pyx_v_self) {
3486
3485
  void **__pyx_r;
3487
3486
 
3488
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":308
3487
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":308
3489
3488
  * """An array of iterator objects that holds the iterators for the arrays to be broadcast together.
3490
3489
  * On return, the iterators are adjusted for broadcasting."""
3491
3490
  * return PyArray_MultiIter_ITERS(self) # <<<<<<<<<<<<<<
@@ -3495,7 +3494,7 @@ static CYTHON_INLINE void **__pyx_f_5numpy_9broadcast_5iters_iters(PyArrayMultiI
3495
3494
  __pyx_r = PyArray_MultiIter_ITERS(__pyx_v_self);
3496
3495
  goto __pyx_L0;
3497
3496
 
3498
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":304
3497
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":304
3499
3498
  * return PyArray_MultiIter_DIMS(self)
3500
3499
  *
3501
3500
  * @property # <<<<<<<<<<<<<<
@@ -3508,7 +3507,7 @@ static CYTHON_INLINE void **__pyx_f_5numpy_9broadcast_5iters_iters(PyArrayMultiI
3508
3507
  return __pyx_r;
3509
3508
  }
3510
3509
 
3511
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":322
3510
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":322
3512
3511
  * # Instead, we use properties that map to the corresponding C-API functions.
3513
3512
  *
3514
3513
  * @property # <<<<<<<<<<<<<<
@@ -3519,7 +3518,7 @@ static CYTHON_INLINE void **__pyx_f_5numpy_9broadcast_5iters_iters(PyArrayMultiI
3519
3518
  static CYTHON_INLINE PyObject *__pyx_f_5numpy_7ndarray_4base_base(PyArrayObject *__pyx_v_self) {
3520
3519
  PyObject *__pyx_r;
3521
3520
 
3522
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":326
3521
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":326
3523
3522
  * """Returns a borrowed reference to the object owning the data/memory.
3524
3523
  * """
3525
3524
  * return PyArray_BASE(self) # <<<<<<<<<<<<<<
@@ -3529,7 +3528,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_7ndarray_4base_base(PyArrayObject
3529
3528
  __pyx_r = PyArray_BASE(__pyx_v_self);
3530
3529
  goto __pyx_L0;
3531
3530
 
3532
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":322
3531
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":322
3533
3532
  * # Instead, we use properties that map to the corresponding C-API functions.
3534
3533
  *
3535
3534
  * @property # <<<<<<<<<<<<<<
@@ -3542,7 +3541,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_7ndarray_4base_base(PyArrayObject
3542
3541
  return __pyx_r;
3543
3542
  }
3544
3543
 
3545
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":328
3544
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":328
3546
3545
  * return PyArray_BASE(self)
3547
3546
  *
3548
3547
  * @property # <<<<<<<<<<<<<<
@@ -3556,7 +3555,7 @@ static CYTHON_INLINE PyArray_Descr *__pyx_f_5numpy_7ndarray_5descr_descr(PyArray
3556
3555
  PyArray_Descr *__pyx_t_1;
3557
3556
  __Pyx_RefNannySetupContext("descr", 0);
3558
3557
 
3559
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":332
3558
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":332
3560
3559
  * """Returns an owned reference to the dtype of the array.
3561
3560
  * """
3562
3561
  * return <dtype>PyArray_DESCR(self) # <<<<<<<<<<<<<<
@@ -3569,7 +3568,7 @@ static CYTHON_INLINE PyArray_Descr *__pyx_f_5numpy_7ndarray_5descr_descr(PyArray
3569
3568
  __pyx_r = ((PyArray_Descr *)__pyx_t_1);
3570
3569
  goto __pyx_L0;
3571
3570
 
3572
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":328
3571
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":328
3573
3572
  * return PyArray_BASE(self)
3574
3573
  *
3575
3574
  * @property # <<<<<<<<<<<<<<
@@ -3584,7 +3583,7 @@ static CYTHON_INLINE PyArray_Descr *__pyx_f_5numpy_7ndarray_5descr_descr(PyArray
3584
3583
  return __pyx_r;
3585
3584
  }
3586
3585
 
3587
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":334
3586
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":334
3588
3587
  * return <dtype>PyArray_DESCR(self)
3589
3588
  *
3590
3589
  * @property # <<<<<<<<<<<<<<
@@ -3595,7 +3594,7 @@ static CYTHON_INLINE PyArray_Descr *__pyx_f_5numpy_7ndarray_5descr_descr(PyArray
3595
3594
  static CYTHON_INLINE int __pyx_f_5numpy_7ndarray_4ndim_ndim(PyArrayObject *__pyx_v_self) {
3596
3595
  int __pyx_r;
3597
3596
 
3598
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":338
3597
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":338
3599
3598
  * """Returns the number of dimensions in the array.
3600
3599
  * """
3601
3600
  * return PyArray_NDIM(self) # <<<<<<<<<<<<<<
@@ -3605,7 +3604,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_7ndarray_4ndim_ndim(PyArrayObject *__pyx
3605
3604
  __pyx_r = PyArray_NDIM(__pyx_v_self);
3606
3605
  goto __pyx_L0;
3607
3606
 
3608
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":334
3607
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":334
3609
3608
  * return <dtype>PyArray_DESCR(self)
3610
3609
  *
3611
3610
  * @property # <<<<<<<<<<<<<<
@@ -3618,7 +3617,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_7ndarray_4ndim_ndim(PyArrayObject *__pyx
3618
3617
  return __pyx_r;
3619
3618
  }
3620
3619
 
3621
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":340
3620
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":340
3622
3621
  * return PyArray_NDIM(self)
3623
3622
  *
3624
3623
  * @property # <<<<<<<<<<<<<<
@@ -3629,7 +3628,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_7ndarray_4ndim_ndim(PyArrayObject *__pyx
3629
3628
  static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_5shape_shape(PyArrayObject *__pyx_v_self) {
3630
3629
  npy_intp *__pyx_r;
3631
3630
 
3632
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":346
3631
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":346
3633
3632
  * Can return NULL for 0-dimensional arrays.
3634
3633
  * """
3635
3634
  * return PyArray_DIMS(self) # <<<<<<<<<<<<<<
@@ -3639,7 +3638,7 @@ static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_5shape_shape(PyArrayObjec
3639
3638
  __pyx_r = PyArray_DIMS(__pyx_v_self);
3640
3639
  goto __pyx_L0;
3641
3640
 
3642
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":340
3641
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":340
3643
3642
  * return PyArray_NDIM(self)
3644
3643
  *
3645
3644
  * @property # <<<<<<<<<<<<<<
@@ -3652,7 +3651,7 @@ static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_5shape_shape(PyArrayObjec
3652
3651
  return __pyx_r;
3653
3652
  }
3654
3653
 
3655
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":348
3654
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":348
3656
3655
  * return PyArray_DIMS(self)
3657
3656
  *
3658
3657
  * @property # <<<<<<<<<<<<<<
@@ -3663,7 +3662,7 @@ static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_5shape_shape(PyArrayObjec
3663
3662
  static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_7strides_strides(PyArrayObject *__pyx_v_self) {
3664
3663
  npy_intp *__pyx_r;
3665
3664
 
3666
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":353
3665
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":353
3667
3666
  * The number of elements matches the number of dimensions of the array (ndim).
3668
3667
  * """
3669
3668
  * return PyArray_STRIDES(self) # <<<<<<<<<<<<<<
@@ -3673,7 +3672,7 @@ static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_7strides_strides(PyArrayO
3673
3672
  __pyx_r = PyArray_STRIDES(__pyx_v_self);
3674
3673
  goto __pyx_L0;
3675
3674
 
3676
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":348
3675
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":348
3677
3676
  * return PyArray_DIMS(self)
3678
3677
  *
3679
3678
  * @property # <<<<<<<<<<<<<<
@@ -3686,7 +3685,7 @@ static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_7strides_strides(PyArrayO
3686
3685
  return __pyx_r;
3687
3686
  }
3688
3687
 
3689
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":355
3688
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":355
3690
3689
  * return PyArray_STRIDES(self)
3691
3690
  *
3692
3691
  * @property # <<<<<<<<<<<<<<
@@ -3697,7 +3696,7 @@ static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_7strides_strides(PyArrayO
3697
3696
  static CYTHON_INLINE npy_intp __pyx_f_5numpy_7ndarray_4size_size(PyArrayObject *__pyx_v_self) {
3698
3697
  npy_intp __pyx_r;
3699
3698
 
3700
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":359
3699
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":359
3701
3700
  * """Returns the total size (in number of elements) of the array.
3702
3701
  * """
3703
3702
  * return PyArray_SIZE(self) # <<<<<<<<<<<<<<
@@ -3707,7 +3706,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_7ndarray_4size_size(PyArrayObject *
3707
3706
  __pyx_r = PyArray_SIZE(__pyx_v_self);
3708
3707
  goto __pyx_L0;
3709
3708
 
3710
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":355
3709
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":355
3711
3710
  * return PyArray_STRIDES(self)
3712
3711
  *
3713
3712
  * @property # <<<<<<<<<<<<<<
@@ -3720,7 +3719,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_7ndarray_4size_size(PyArrayObject *
3720
3719
  return __pyx_r;
3721
3720
  }
3722
3721
 
3723
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":361
3722
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":361
3724
3723
  * return PyArray_SIZE(self)
3725
3724
  *
3726
3725
  * @property # <<<<<<<<<<<<<<
@@ -3731,7 +3730,7 @@ static CYTHON_INLINE npy_intp __pyx_f_5numpy_7ndarray_4size_size(PyArrayObject *
3731
3730
  static CYTHON_INLINE char *__pyx_f_5numpy_7ndarray_4data_data(PyArrayObject *__pyx_v_self) {
3732
3731
  char *__pyx_r;
3733
3732
 
3734
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":368
3733
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":368
3735
3734
  * of `PyArray_DATA()` instead, which returns a 'void*'.
3736
3735
  * """
3737
3736
  * return PyArray_BYTES(self) # <<<<<<<<<<<<<<
@@ -3741,7 +3740,7 @@ static CYTHON_INLINE char *__pyx_f_5numpy_7ndarray_4data_data(PyArrayObject *__p
3741
3740
  __pyx_r = PyArray_BYTES(__pyx_v_self);
3742
3741
  goto __pyx_L0;
3743
3742
 
3744
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":361
3743
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":361
3745
3744
  * return PyArray_SIZE(self)
3746
3745
  *
3747
3746
  * @property # <<<<<<<<<<<<<<
@@ -3754,7 +3753,7 @@ static CYTHON_INLINE char *__pyx_f_5numpy_7ndarray_4data_data(PyArrayObject *__p
3754
3753
  return __pyx_r;
3755
3754
  }
3756
3755
 
3757
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":776
3756
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":776
3758
3757
  * ctypedef long double complex clongdouble_t
3759
3758
  *
3760
3759
  * cdef inline object PyArray_MultiIterNew1(a): # <<<<<<<<<<<<<<
@@ -3771,7 +3770,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__
3771
3770
  int __pyx_clineno = 0;
3772
3771
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew1", 0);
3773
3772
 
3774
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":777
3773
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":777
3775
3774
  *
3776
3775
  * cdef inline object PyArray_MultiIterNew1(a):
3777
3776
  * return PyArray_MultiIterNew(1, <void*>a) # <<<<<<<<<<<<<<
@@ -3785,7 +3784,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__
3785
3784
  __pyx_t_1 = 0;
3786
3785
  goto __pyx_L0;
3787
3786
 
3788
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":776
3787
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":776
3789
3788
  * ctypedef long double complex clongdouble_t
3790
3789
  *
3791
3790
  * cdef inline object PyArray_MultiIterNew1(a): # <<<<<<<<<<<<<<
@@ -3804,7 +3803,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__
3804
3803
  return __pyx_r;
3805
3804
  }
3806
3805
 
3807
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":779
3806
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":779
3808
3807
  * return PyArray_MultiIterNew(1, <void*>a)
3809
3808
  *
3810
3809
  * cdef inline object PyArray_MultiIterNew2(a, b): # <<<<<<<<<<<<<<
@@ -3821,7 +3820,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__
3821
3820
  int __pyx_clineno = 0;
3822
3821
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew2", 0);
3823
3822
 
3824
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":780
3823
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":780
3825
3824
  *
3826
3825
  * cdef inline object PyArray_MultiIterNew2(a, b):
3827
3826
  * return PyArray_MultiIterNew(2, <void*>a, <void*>b) # <<<<<<<<<<<<<<
@@ -3835,7 +3834,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__
3835
3834
  __pyx_t_1 = 0;
3836
3835
  goto __pyx_L0;
3837
3836
 
3838
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":779
3837
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":779
3839
3838
  * return PyArray_MultiIterNew(1, <void*>a)
3840
3839
  *
3841
3840
  * cdef inline object PyArray_MultiIterNew2(a, b): # <<<<<<<<<<<<<<
@@ -3854,7 +3853,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__
3854
3853
  return __pyx_r;
3855
3854
  }
3856
3855
 
3857
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":782
3856
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":782
3858
3857
  * return PyArray_MultiIterNew(2, <void*>a, <void*>b)
3859
3858
  *
3860
3859
  * cdef inline object PyArray_MultiIterNew3(a, b, c): # <<<<<<<<<<<<<<
@@ -3871,7 +3870,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__
3871
3870
  int __pyx_clineno = 0;
3872
3871
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew3", 0);
3873
3872
 
3874
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":783
3873
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":783
3875
3874
  *
3876
3875
  * cdef inline object PyArray_MultiIterNew3(a, b, c):
3877
3876
  * return PyArray_MultiIterNew(3, <void*>a, <void*>b, <void*> c) # <<<<<<<<<<<<<<
@@ -3885,7 +3884,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__
3885
3884
  __pyx_t_1 = 0;
3886
3885
  goto __pyx_L0;
3887
3886
 
3888
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":782
3887
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":782
3889
3888
  * return PyArray_MultiIterNew(2, <void*>a, <void*>b)
3890
3889
  *
3891
3890
  * cdef inline object PyArray_MultiIterNew3(a, b, c): # <<<<<<<<<<<<<<
@@ -3904,7 +3903,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__
3904
3903
  return __pyx_r;
3905
3904
  }
3906
3905
 
3907
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":785
3906
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":785
3908
3907
  * return PyArray_MultiIterNew(3, <void*>a, <void*>b, <void*> c)
3909
3908
  *
3910
3909
  * cdef inline object PyArray_MultiIterNew4(a, b, c, d): # <<<<<<<<<<<<<<
@@ -3921,7 +3920,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__
3921
3920
  int __pyx_clineno = 0;
3922
3921
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew4", 0);
3923
3922
 
3924
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":786
3923
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":786
3925
3924
  *
3926
3925
  * cdef inline object PyArray_MultiIterNew4(a, b, c, d):
3927
3926
  * return PyArray_MultiIterNew(4, <void*>a, <void*>b, <void*>c, <void*> d) # <<<<<<<<<<<<<<
@@ -3935,7 +3934,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__
3935
3934
  __pyx_t_1 = 0;
3936
3935
  goto __pyx_L0;
3937
3936
 
3938
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":785
3937
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":785
3939
3938
  * return PyArray_MultiIterNew(3, <void*>a, <void*>b, <void*> c)
3940
3939
  *
3941
3940
  * cdef inline object PyArray_MultiIterNew4(a, b, c, d): # <<<<<<<<<<<<<<
@@ -3954,7 +3953,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__
3954
3953
  return __pyx_r;
3955
3954
  }
3956
3955
 
3957
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":788
3956
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":788
3958
3957
  * return PyArray_MultiIterNew(4, <void*>a, <void*>b, <void*>c, <void*> d)
3959
3958
  *
3960
3959
  * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): # <<<<<<<<<<<<<<
@@ -3971,7 +3970,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__
3971
3970
  int __pyx_clineno = 0;
3972
3971
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew5", 0);
3973
3972
 
3974
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":789
3973
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":789
3975
3974
  *
3976
3975
  * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e):
3977
3976
  * return PyArray_MultiIterNew(5, <void*>a, <void*>b, <void*>c, <void*> d, <void*> e) # <<<<<<<<<<<<<<
@@ -3985,7 +3984,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__
3985
3984
  __pyx_t_1 = 0;
3986
3985
  goto __pyx_L0;
3987
3986
 
3988
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":788
3987
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":788
3989
3988
  * return PyArray_MultiIterNew(4, <void*>a, <void*>b, <void*>c, <void*> d)
3990
3989
  *
3991
3990
  * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): # <<<<<<<<<<<<<<
@@ -4004,7 +4003,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__
4004
4003
  return __pyx_r;
4005
4004
  }
4006
4005
 
4007
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":791
4006
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":791
4008
4007
  * return PyArray_MultiIterNew(5, <void*>a, <void*>b, <void*>c, <void*> d, <void*> e)
4009
4008
  *
4010
4009
  * cdef inline tuple PyDataType_SHAPE(dtype d): # <<<<<<<<<<<<<<
@@ -4019,7 +4018,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__
4019
4018
  PyObject *__pyx_t_2;
4020
4019
  __Pyx_RefNannySetupContext("PyDataType_SHAPE", 0);
4021
4020
 
4022
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":792
4021
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":792
4023
4022
  *
4024
4023
  * cdef inline tuple PyDataType_SHAPE(dtype d):
4025
4024
  * if PyDataType_HASSUBARRAY(d): # <<<<<<<<<<<<<<
@@ -4029,7 +4028,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__
4029
4028
  __pyx_t_1 = PyDataType_HASSUBARRAY(__pyx_v_d);
4030
4029
  if (__pyx_t_1) {
4031
4030
 
4032
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":793
4031
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":793
4033
4032
  * cdef inline tuple PyDataType_SHAPE(dtype d):
4034
4033
  * if PyDataType_HASSUBARRAY(d):
4035
4034
  * return <tuple>d.subarray.shape # <<<<<<<<<<<<<<
@@ -4042,7 +4041,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__
4042
4041
  __pyx_r = ((PyObject*)__pyx_t_2);
4043
4042
  goto __pyx_L0;
4044
4043
 
4045
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":792
4044
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":792
4046
4045
  *
4047
4046
  * cdef inline tuple PyDataType_SHAPE(dtype d):
4048
4047
  * if PyDataType_HASSUBARRAY(d): # <<<<<<<<<<<<<<
@@ -4051,7 +4050,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__
4051
4050
  */
4052
4051
  }
4053
4052
 
4054
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":795
4053
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":795
4055
4054
  * return <tuple>d.subarray.shape
4056
4055
  * else:
4057
4056
  * return () # <<<<<<<<<<<<<<
@@ -4065,7 +4064,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__
4065
4064
  goto __pyx_L0;
4066
4065
  }
4067
4066
 
4068
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":791
4067
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":791
4069
4068
  * return PyArray_MultiIterNew(5, <void*>a, <void*>b, <void*>c, <void*> d, <void*> e)
4070
4069
  *
4071
4070
  * cdef inline tuple PyDataType_SHAPE(dtype d): # <<<<<<<<<<<<<<
@@ -4080,7 +4079,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__
4080
4079
  return __pyx_r;
4081
4080
  }
4082
4081
 
4083
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":994
4082
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":994
4084
4083
  * int _import_umath() except -1
4085
4084
  *
4086
4085
  * cdef inline void set_array_base(ndarray arr, object base) except *: # <<<<<<<<<<<<<<
@@ -4094,7 +4093,7 @@ static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_a
4094
4093
  const char *__pyx_filename = NULL;
4095
4094
  int __pyx_clineno = 0;
4096
4095
 
4097
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":995
4096
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":995
4098
4097
  *
4099
4098
  * cdef inline void set_array_base(ndarray arr, object base) except *:
4100
4099
  * Py_INCREF(base) # important to do this before stealing the reference below! # <<<<<<<<<<<<<<
@@ -4103,7 +4102,7 @@ static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_a
4103
4102
  */
4104
4103
  Py_INCREF(__pyx_v_base);
4105
4104
 
4106
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":996
4105
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":996
4107
4106
  * cdef inline void set_array_base(ndarray arr, object base) except *:
4108
4107
  * Py_INCREF(base) # important to do this before stealing the reference below!
4109
4108
  * PyArray_SetBaseObject(arr, base) # <<<<<<<<<<<<<<
@@ -4112,7 +4111,7 @@ static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_a
4112
4111
  */
4113
4112
  __pyx_t_1 = PyArray_SetBaseObject(__pyx_v_arr, __pyx_v_base); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(1, 996, __pyx_L1_error)
4114
4113
 
4115
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":994
4114
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":994
4116
4115
  * int _import_umath() except -1
4117
4116
  *
4118
4117
  * cdef inline void set_array_base(ndarray arr, object base) except *: # <<<<<<<<<<<<<<
@@ -4127,7 +4126,7 @@ static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_a
4127
4126
  __pyx_L0:;
4128
4127
  }
4129
4128
 
4130
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":998
4129
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":998
4131
4130
  * PyArray_SetBaseObject(arr, base)
4132
4131
  *
4133
4132
  * cdef inline object get_array_base(ndarray arr): # <<<<<<<<<<<<<<
@@ -4142,7 +4141,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__py
4142
4141
  int __pyx_t_1;
4143
4142
  __Pyx_RefNannySetupContext("get_array_base", 0);
4144
4143
 
4145
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":999
4144
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":999
4146
4145
  *
4147
4146
  * cdef inline object get_array_base(ndarray arr):
4148
4147
  * base = PyArray_BASE(arr) # <<<<<<<<<<<<<<
@@ -4151,7 +4150,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__py
4151
4150
  */
4152
4151
  __pyx_v_base = PyArray_BASE(__pyx_v_arr);
4153
4152
 
4154
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1000
4153
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1000
4155
4154
  * cdef inline object get_array_base(ndarray arr):
4156
4155
  * base = PyArray_BASE(arr)
4157
4156
  * if base is NULL: # <<<<<<<<<<<<<<
@@ -4161,7 +4160,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__py
4161
4160
  __pyx_t_1 = (__pyx_v_base == NULL);
4162
4161
  if (__pyx_t_1) {
4163
4162
 
4164
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1001
4163
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1001
4165
4164
  * base = PyArray_BASE(arr)
4166
4165
  * if base is NULL:
4167
4166
  * return None # <<<<<<<<<<<<<<
@@ -4172,7 +4171,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__py
4172
4171
  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
4173
4172
  goto __pyx_L0;
4174
4173
 
4175
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1000
4174
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1000
4176
4175
  * cdef inline object get_array_base(ndarray arr):
4177
4176
  * base = PyArray_BASE(arr)
4178
4177
  * if base is NULL: # <<<<<<<<<<<<<<
@@ -4181,7 +4180,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__py
4181
4180
  */
4182
4181
  }
4183
4182
 
4184
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1002
4183
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1002
4185
4184
  * if base is NULL:
4186
4185
  * return None
4187
4186
  * return <object>base # <<<<<<<<<<<<<<
@@ -4193,7 +4192,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__py
4193
4192
  __pyx_r = ((PyObject *)__pyx_v_base);
4194
4193
  goto __pyx_L0;
4195
4194
 
4196
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":998
4195
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":998
4197
4196
  * PyArray_SetBaseObject(arr, base)
4198
4197
  *
4199
4198
  * cdef inline object get_array_base(ndarray arr): # <<<<<<<<<<<<<<
@@ -4208,7 +4207,7 @@ static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__py
4208
4207
  return __pyx_r;
4209
4208
  }
4210
4209
 
4211
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1006
4210
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1006
4212
4211
  * # Versions of the import_* functions which are more suitable for
4213
4212
  * # Cython code.
4214
4213
  * cdef inline int import_array() except -1: # <<<<<<<<<<<<<<
@@ -4235,7 +4234,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
4235
4234
  int __pyx_clineno = 0;
4236
4235
  __Pyx_RefNannySetupContext("import_array", 0);
4237
4236
 
4238
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1007
4237
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1007
4239
4238
  * # Cython code.
4240
4239
  * cdef inline int import_array() except -1:
4241
4240
  * try: # <<<<<<<<<<<<<<
@@ -4251,7 +4250,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
4251
4250
  __Pyx_XGOTREF(__pyx_t_3);
4252
4251
  /*try:*/ {
4253
4252
 
4254
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1008
4253
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1008
4255
4254
  * cdef inline int import_array() except -1:
4256
4255
  * try:
4257
4256
  * __pyx_import_array() # <<<<<<<<<<<<<<
@@ -4260,7 +4259,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
4260
4259
  */
4261
4260
  __pyx_t_4 = _import_array(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 1008, __pyx_L3_error)
4262
4261
 
4263
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1007
4262
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1007
4264
4263
  * # Cython code.
4265
4264
  * cdef inline int import_array() except -1:
4266
4265
  * try: # <<<<<<<<<<<<<<
@@ -4274,7 +4273,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
4274
4273
  goto __pyx_L8_try_end;
4275
4274
  __pyx_L3_error:;
4276
4275
 
4277
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1009
4276
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1009
4278
4277
  * try:
4279
4278
  * __pyx_import_array()
4280
4279
  * except Exception: # <<<<<<<<<<<<<<
@@ -4289,7 +4288,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
4289
4288
  __Pyx_XGOTREF(__pyx_t_6);
4290
4289
  __Pyx_XGOTREF(__pyx_t_7);
4291
4290
 
4292
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1010
4291
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1010
4293
4292
  * __pyx_import_array()
4294
4293
  * except Exception:
4295
4294
  * raise ImportError("numpy._core.multiarray failed to import") # <<<<<<<<<<<<<<
@@ -4314,7 +4313,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
4314
4313
  }
4315
4314
  goto __pyx_L5_except_error;
4316
4315
 
4317
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1007
4316
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1007
4318
4317
  * # Cython code.
4319
4318
  * cdef inline int import_array() except -1:
4320
4319
  * try: # <<<<<<<<<<<<<<
@@ -4330,7 +4329,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
4330
4329
  __pyx_L8_try_end:;
4331
4330
  }
4332
4331
 
4333
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1006
4332
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1006
4334
4333
  * # Versions of the import_* functions which are more suitable for
4335
4334
  * # Cython code.
4336
4335
  * cdef inline int import_array() except -1: # <<<<<<<<<<<<<<
@@ -4355,7 +4354,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
4355
4354
  return __pyx_r;
4356
4355
  }
4357
4356
 
4358
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1012
4357
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1012
4359
4358
  * raise ImportError("numpy._core.multiarray failed to import")
4360
4359
  *
4361
4360
  * cdef inline int import_umath() except -1: # <<<<<<<<<<<<<<
@@ -4382,7 +4381,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
4382
4381
  int __pyx_clineno = 0;
4383
4382
  __Pyx_RefNannySetupContext("import_umath", 0);
4384
4383
 
4385
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1013
4384
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1013
4386
4385
  *
4387
4386
  * cdef inline int import_umath() except -1:
4388
4387
  * try: # <<<<<<<<<<<<<<
@@ -4398,7 +4397,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
4398
4397
  __Pyx_XGOTREF(__pyx_t_3);
4399
4398
  /*try:*/ {
4400
4399
 
4401
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1014
4400
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1014
4402
4401
  * cdef inline int import_umath() except -1:
4403
4402
  * try:
4404
4403
  * _import_umath() # <<<<<<<<<<<<<<
@@ -4407,7 +4406,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
4407
4406
  */
4408
4407
  __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 1014, __pyx_L3_error)
4409
4408
 
4410
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1013
4409
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1013
4411
4410
  *
4412
4411
  * cdef inline int import_umath() except -1:
4413
4412
  * try: # <<<<<<<<<<<<<<
@@ -4421,7 +4420,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
4421
4420
  goto __pyx_L8_try_end;
4422
4421
  __pyx_L3_error:;
4423
4422
 
4424
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1015
4423
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1015
4425
4424
  * try:
4426
4425
  * _import_umath()
4427
4426
  * except Exception: # <<<<<<<<<<<<<<
@@ -4436,7 +4435,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
4436
4435
  __Pyx_XGOTREF(__pyx_t_6);
4437
4436
  __Pyx_XGOTREF(__pyx_t_7);
4438
4437
 
4439
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1016
4438
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1016
4440
4439
  * _import_umath()
4441
4440
  * except Exception:
4442
4441
  * raise ImportError("numpy._core.umath failed to import") # <<<<<<<<<<<<<<
@@ -4461,7 +4460,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
4461
4460
  }
4462
4461
  goto __pyx_L5_except_error;
4463
4462
 
4464
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1013
4463
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1013
4465
4464
  *
4466
4465
  * cdef inline int import_umath() except -1:
4467
4466
  * try: # <<<<<<<<<<<<<<
@@ -4477,7 +4476,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
4477
4476
  __pyx_L8_try_end:;
4478
4477
  }
4479
4478
 
4480
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1012
4479
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1012
4481
4480
  * raise ImportError("numpy._core.multiarray failed to import")
4482
4481
  *
4483
4482
  * cdef inline int import_umath() except -1: # <<<<<<<<<<<<<<
@@ -4502,7 +4501,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
4502
4501
  return __pyx_r;
4503
4502
  }
4504
4503
 
4505
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1018
4504
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1018
4506
4505
  * raise ImportError("numpy._core.umath failed to import")
4507
4506
  *
4508
4507
  * cdef inline int import_ufunc() except -1: # <<<<<<<<<<<<<<
@@ -4529,7 +4528,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
4529
4528
  int __pyx_clineno = 0;
4530
4529
  __Pyx_RefNannySetupContext("import_ufunc", 0);
4531
4530
 
4532
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1019
4531
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1019
4533
4532
  *
4534
4533
  * cdef inline int import_ufunc() except -1:
4535
4534
  * try: # <<<<<<<<<<<<<<
@@ -4545,7 +4544,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
4545
4544
  __Pyx_XGOTREF(__pyx_t_3);
4546
4545
  /*try:*/ {
4547
4546
 
4548
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1020
4547
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1020
4549
4548
  * cdef inline int import_ufunc() except -1:
4550
4549
  * try:
4551
4550
  * _import_umath() # <<<<<<<<<<<<<<
@@ -4554,7 +4553,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
4554
4553
  */
4555
4554
  __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 1020, __pyx_L3_error)
4556
4555
 
4557
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1019
4556
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1019
4558
4557
  *
4559
4558
  * cdef inline int import_ufunc() except -1:
4560
4559
  * try: # <<<<<<<<<<<<<<
@@ -4568,7 +4567,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
4568
4567
  goto __pyx_L8_try_end;
4569
4568
  __pyx_L3_error:;
4570
4569
 
4571
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1021
4570
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1021
4572
4571
  * try:
4573
4572
  * _import_umath()
4574
4573
  * except Exception: # <<<<<<<<<<<<<<
@@ -4583,7 +4582,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
4583
4582
  __Pyx_XGOTREF(__pyx_t_6);
4584
4583
  __Pyx_XGOTREF(__pyx_t_7);
4585
4584
 
4586
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1022
4585
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1022
4587
4586
  * _import_umath()
4588
4587
  * except Exception:
4589
4588
  * raise ImportError("numpy._core.umath failed to import") # <<<<<<<<<<<<<<
@@ -4608,7 +4607,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
4608
4607
  }
4609
4608
  goto __pyx_L5_except_error;
4610
4609
 
4611
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1019
4610
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1019
4612
4611
  *
4613
4612
  * cdef inline int import_ufunc() except -1:
4614
4613
  * try: # <<<<<<<<<<<<<<
@@ -4624,7 +4623,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
4624
4623
  __pyx_L8_try_end:;
4625
4624
  }
4626
4625
 
4627
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1018
4626
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1018
4628
4627
  * raise ImportError("numpy._core.umath failed to import")
4629
4628
  *
4630
4629
  * cdef inline int import_ufunc() except -1: # <<<<<<<<<<<<<<
@@ -4649,7 +4648,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
4649
4648
  return __pyx_r;
4650
4649
  }
4651
4650
 
4652
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1025
4651
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1025
4653
4652
  *
4654
4653
  *
4655
4654
  * cdef inline bint is_timedelta64_object(object obj) noexcept: # <<<<<<<<<<<<<<
@@ -4660,7 +4659,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
4660
4659
  static CYTHON_INLINE int __pyx_f_5numpy_is_timedelta64_object(PyObject *__pyx_v_obj) {
4661
4660
  int __pyx_r;
4662
4661
 
4663
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1037
4662
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1037
4664
4663
  * bool
4665
4664
  * """
4666
4665
  * return PyObject_TypeCheck(obj, &PyTimedeltaArrType_Type) # <<<<<<<<<<<<<<
@@ -4670,7 +4669,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_is_timedelta64_object(PyObject *__pyx_v_
4670
4669
  __pyx_r = PyObject_TypeCheck(__pyx_v_obj, (&PyTimedeltaArrType_Type));
4671
4670
  goto __pyx_L0;
4672
4671
 
4673
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1025
4672
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1025
4674
4673
  *
4675
4674
  *
4676
4675
  * cdef inline bint is_timedelta64_object(object obj) noexcept: # <<<<<<<<<<<<<<
@@ -4683,7 +4682,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_is_timedelta64_object(PyObject *__pyx_v_
4683
4682
  return __pyx_r;
4684
4683
  }
4685
4684
 
4686
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1040
4685
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1040
4687
4686
  *
4688
4687
  *
4689
4688
  * cdef inline bint is_datetime64_object(object obj) noexcept: # <<<<<<<<<<<<<<
@@ -4694,7 +4693,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_is_timedelta64_object(PyObject *__pyx_v_
4694
4693
  static CYTHON_INLINE int __pyx_f_5numpy_is_datetime64_object(PyObject *__pyx_v_obj) {
4695
4694
  int __pyx_r;
4696
4695
 
4697
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1052
4696
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1052
4698
4697
  * bool
4699
4698
  * """
4700
4699
  * return PyObject_TypeCheck(obj, &PyDatetimeArrType_Type) # <<<<<<<<<<<<<<
@@ -4704,7 +4703,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_is_datetime64_object(PyObject *__pyx_v_o
4704
4703
  __pyx_r = PyObject_TypeCheck(__pyx_v_obj, (&PyDatetimeArrType_Type));
4705
4704
  goto __pyx_L0;
4706
4705
 
4707
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1040
4706
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1040
4708
4707
  *
4709
4708
  *
4710
4709
  * cdef inline bint is_datetime64_object(object obj) noexcept: # <<<<<<<<<<<<<<
@@ -4717,7 +4716,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_is_datetime64_object(PyObject *__pyx_v_o
4717
4716
  return __pyx_r;
4718
4717
  }
4719
4718
 
4720
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1055
4719
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1055
4721
4720
  *
4722
4721
  *
4723
4722
  * cdef inline npy_datetime get_datetime64_value(object obj) noexcept nogil: # <<<<<<<<<<<<<<
@@ -4728,7 +4727,7 @@ static CYTHON_INLINE int __pyx_f_5numpy_is_datetime64_object(PyObject *__pyx_v_o
4728
4727
  static CYTHON_INLINE npy_datetime __pyx_f_5numpy_get_datetime64_value(PyObject *__pyx_v_obj) {
4729
4728
  npy_datetime __pyx_r;
4730
4729
 
4731
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1062
4730
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1062
4732
4731
  * also needed. That can be found using `get_datetime64_unit`.
4733
4732
  * """
4734
4733
  * return (<PyDatetimeScalarObject*>obj).obval # <<<<<<<<<<<<<<
@@ -4738,7 +4737,7 @@ static CYTHON_INLINE npy_datetime __pyx_f_5numpy_get_datetime64_value(PyObject *
4738
4737
  __pyx_r = ((PyDatetimeScalarObject *)__pyx_v_obj)->obval;
4739
4738
  goto __pyx_L0;
4740
4739
 
4741
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1055
4740
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1055
4742
4741
  *
4743
4742
  *
4744
4743
  * cdef inline npy_datetime get_datetime64_value(object obj) noexcept nogil: # <<<<<<<<<<<<<<
@@ -4751,7 +4750,7 @@ static CYTHON_INLINE npy_datetime __pyx_f_5numpy_get_datetime64_value(PyObject *
4751
4750
  return __pyx_r;
4752
4751
  }
4753
4752
 
4754
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1065
4753
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1065
4755
4754
  *
4756
4755
  *
4757
4756
  * cdef inline npy_timedelta get_timedelta64_value(object obj) noexcept nogil: # <<<<<<<<<<<<<<
@@ -4762,7 +4761,7 @@ static CYTHON_INLINE npy_datetime __pyx_f_5numpy_get_datetime64_value(PyObject *
4762
4761
  static CYTHON_INLINE npy_timedelta __pyx_f_5numpy_get_timedelta64_value(PyObject *__pyx_v_obj) {
4763
4762
  npy_timedelta __pyx_r;
4764
4763
 
4765
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1069
4764
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1069
4766
4765
  * returns the int64 value underlying scalar numpy timedelta64 object
4767
4766
  * """
4768
4767
  * return (<PyTimedeltaScalarObject*>obj).obval # <<<<<<<<<<<<<<
@@ -4772,7 +4771,7 @@ static CYTHON_INLINE npy_timedelta __pyx_f_5numpy_get_timedelta64_value(PyObject
4772
4771
  __pyx_r = ((PyTimedeltaScalarObject *)__pyx_v_obj)->obval;
4773
4772
  goto __pyx_L0;
4774
4773
 
4775
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1065
4774
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1065
4776
4775
  *
4777
4776
  *
4778
4777
  * cdef inline npy_timedelta get_timedelta64_value(object obj) noexcept nogil: # <<<<<<<<<<<<<<
@@ -4785,7 +4784,7 @@ static CYTHON_INLINE npy_timedelta __pyx_f_5numpy_get_timedelta64_value(PyObject
4785
4784
  return __pyx_r;
4786
4785
  }
4787
4786
 
4788
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1072
4787
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1072
4789
4788
  *
4790
4789
  *
4791
4790
  * cdef inline NPY_DATETIMEUNIT get_datetime64_unit(object obj) noexcept nogil: # <<<<<<<<<<<<<<
@@ -4796,7 +4795,7 @@ static CYTHON_INLINE npy_timedelta __pyx_f_5numpy_get_timedelta64_value(PyObject
4796
4795
  static CYTHON_INLINE NPY_DATETIMEUNIT __pyx_f_5numpy_get_datetime64_unit(PyObject *__pyx_v_obj) {
4797
4796
  NPY_DATETIMEUNIT __pyx_r;
4798
4797
 
4799
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1076
4798
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1076
4800
4799
  * returns the unit part of the dtype for a numpy datetime64 object.
4801
4800
  * """
4802
4801
  * return <NPY_DATETIMEUNIT>(<PyDatetimeScalarObject*>obj).obmeta.base # <<<<<<<<<<<<<<
@@ -4806,7 +4805,7 @@ static CYTHON_INLINE NPY_DATETIMEUNIT __pyx_f_5numpy_get_datetime64_unit(PyObjec
4806
4805
  __pyx_r = ((NPY_DATETIMEUNIT)((PyDatetimeScalarObject *)__pyx_v_obj)->obmeta.base);
4807
4806
  goto __pyx_L0;
4808
4807
 
4809
- /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-abt1xj3a/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1072
4808
+ /* "C:/Users/runneradmin/AppData/Local/Temp/pip-build-env-_m0bcxx9/overlay/Lib/site-packages/numpy/__init__.cython-30.pxd":1072
4810
4809
  *
4811
4810
  *
4812
4811
  * cdef inline NPY_DATETIMEUNIT get_datetime64_unit(object obj) noexcept nogil: # <<<<<<<<<<<<<<
@@ -4819,7 +4818,7 @@ static CYTHON_INLINE NPY_DATETIMEUNIT __pyx_f_5numpy_get_datetime64_unit(PyObjec
4819
4818
  return __pyx_r;
4820
4819
  }
4821
4820
 
4822
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":6
4821
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":8
4823
4822
  * from libc.stdint cimport int32_t
4824
4823
  *
4825
4824
  * def seqdur(seqdata): # <<<<<<<<<<<<<<
@@ -4866,32 +4865,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
4866
4865
  {
4867
4866
  PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_seqdata,0};
4868
4867
  const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
4869
- if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 6, __pyx_L3_error)
4868
+ if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 8, __pyx_L3_error)
4870
4869
  if (__pyx_kwds_len > 0) {
4871
4870
  switch (__pyx_nargs) {
4872
4871
  case 1:
4873
4872
  values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
4874
- if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6, __pyx_L3_error)
4873
+ if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 8, __pyx_L3_error)
4875
4874
  CYTHON_FALLTHROUGH;
4876
4875
  case 0: break;
4877
4876
  default: goto __pyx_L5_argtuple_error;
4878
4877
  }
4879
4878
  const Py_ssize_t kwd_pos_args = __pyx_nargs;
4880
- if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "seqdur", 0) < 0) __PYX_ERR(0, 6, __pyx_L3_error)
4879
+ if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "seqdur", 0) < 0) __PYX_ERR(0, 8, __pyx_L3_error)
4881
4880
  for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
4882
- if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("seqdur", 1, 1, 1, i); __PYX_ERR(0, 6, __pyx_L3_error) }
4881
+ if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("seqdur", 1, 1, 1, i); __PYX_ERR(0, 8, __pyx_L3_error) }
4883
4882
  }
4884
4883
  } else if (unlikely(__pyx_nargs != 1)) {
4885
4884
  goto __pyx_L5_argtuple_error;
4886
4885
  } else {
4887
4886
  values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
4888
- if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 6, __pyx_L3_error)
4887
+ if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 8, __pyx_L3_error)
4889
4888
  }
4890
4889
  __pyx_v_seqdata = values[0];
4891
4890
  }
4892
4891
  goto __pyx_L6_skip;
4893
4892
  __pyx_L5_argtuple_error:;
4894
- __Pyx_RaiseArgtupleInvalid("seqdur", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 6, __pyx_L3_error)
4893
+ __Pyx_RaiseArgtupleInvalid("seqdur", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 8, __pyx_L3_error)
4895
4894
  __pyx_L6_skip:;
4896
4895
  goto __pyx_L4_argument_unpacking_done;
4897
4896
  __pyx_L3_error:;
@@ -4982,21 +4981,21 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
4982
4981
  __pyx_pybuffernd_group_durations.data = NULL;
4983
4982
  __pyx_pybuffernd_group_durations.rcbuffer = &__pyx_pybuffer_group_durations;
4984
4983
 
4985
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":7
4984
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":9
4986
4985
  *
4987
4986
  * def seqdur(seqdata):
4988
4987
  * if not isinstance(seqdata, SequenceData): # <<<<<<<<<<<<<<
4989
4988
  * raise ValueError("data is not a sequence object, see SequenceData to create one")
4990
4989
  *
4991
4990
  */
4992
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_SequenceData); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error)
4991
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_SequenceData); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9, __pyx_L1_error)
4993
4992
  __Pyx_GOTREF(__pyx_t_1);
4994
- __pyx_t_2 = PyObject_IsInstance(__pyx_v_seqdata, __pyx_t_1); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 7, __pyx_L1_error)
4993
+ __pyx_t_2 = PyObject_IsInstance(__pyx_v_seqdata, __pyx_t_1); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 9, __pyx_L1_error)
4995
4994
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4996
4995
  __pyx_t_3 = (!__pyx_t_2);
4997
4996
  if (unlikely(__pyx_t_3)) {
4998
4997
 
4999
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":8
4998
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":10
5000
4999
  * def seqdur(seqdata):
5001
5000
  * if not isinstance(seqdata, SequenceData):
5002
5001
  * raise ValueError("data is not a sequence object, see SequenceData to create one") # <<<<<<<<<<<<<<
@@ -5012,14 +5011,14 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5012
5011
  __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
5013
5012
  __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
5014
5013
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
5015
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error)
5014
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 10, __pyx_L1_error)
5016
5015
  __Pyx_GOTREF(__pyx_t_1);
5017
5016
  }
5018
5017
  __Pyx_Raise(__pyx_t_1, 0, 0, 0);
5019
5018
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5020
- __PYX_ERR(0, 8, __pyx_L1_error)
5019
+ __PYX_ERR(0, 10, __pyx_L1_error)
5021
5020
 
5022
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":7
5021
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":9
5023
5022
  *
5024
5023
  * def seqdur(seqdata):
5025
5024
  * if not isinstance(seqdata, SequenceData): # <<<<<<<<<<<<<<
@@ -5028,14 +5027,14 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5028
5027
  */
5029
5028
  }
5030
5029
 
5031
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":10
5030
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":12
5032
5031
  * raise ValueError("data is not a sequence object, see SequenceData to create one")
5033
5032
  *
5034
5033
  * cdef cnp.ndarray[int32_t, ndim=2] seqdatanum = seqdata.values.copy().astype(np.int32, copy=False) # <<<<<<<<<<<<<<
5035
5034
  *
5036
5035
  * cdef int n = seqdatanum.shape[0], m = seqdatanum.shape[1]
5037
5036
  */
5038
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_seqdata, __pyx_mstate_global->__pyx_n_u_values); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 10, __pyx_L1_error)
5037
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_seqdata, __pyx_mstate_global->__pyx_n_u_values); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 12, __pyx_L1_error)
5039
5038
  __Pyx_GOTREF(__pyx_t_8);
5040
5039
  __pyx_t_7 = __pyx_t_8;
5041
5040
  __Pyx_INCREF(__pyx_t_7);
@@ -5045,43 +5044,43 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5045
5044
  __pyx_t_4 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_copy, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
5046
5045
  __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
5047
5046
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5048
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 10, __pyx_L1_error)
5047
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 12, __pyx_L1_error)
5049
5048
  __Pyx_GOTREF(__pyx_t_4);
5050
5049
  }
5051
5050
  __pyx_t_5 = __pyx_t_4;
5052
5051
  __Pyx_INCREF(__pyx_t_5);
5053
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 10, __pyx_L1_error)
5052
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 12, __pyx_L1_error)
5054
5053
  __Pyx_GOTREF(__pyx_t_8);
5055
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_int32); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 10, __pyx_L1_error)
5054
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_int32); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 12, __pyx_L1_error)
5056
5055
  __Pyx_GOTREF(__pyx_t_7);
5057
5056
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5058
5057
  __pyx_t_6 = 0;
5059
5058
  {
5060
5059
  PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_5, __pyx_t_7};
5061
- __pyx_t_8 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 10, __pyx_L1_error)
5060
+ __pyx_t_8 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 12, __pyx_L1_error)
5062
5061
  __Pyx_GOTREF(__pyx_t_8);
5063
- if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_copy, Py_False, __pyx_t_8, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 10, __pyx_L1_error)
5062
+ if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_copy, Py_False, __pyx_t_8, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 12, __pyx_L1_error)
5064
5063
  __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_astype, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_8);
5065
5064
  __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
5066
5065
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5067
5066
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5068
5067
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
5069
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 10, __pyx_L1_error)
5068
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error)
5070
5069
  __Pyx_GOTREF(__pyx_t_1);
5071
5070
  }
5072
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 10, __pyx_L1_error)
5071
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 12, __pyx_L1_error)
5073
5072
  {
5074
5073
  __Pyx_BufFmt_StackElem __pyx_stack[1];
5075
5074
  if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_seqdatanum.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_t_1), &__Pyx_TypeInfo_nn_int32_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
5076
5075
  __pyx_v_seqdatanum = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_seqdatanum.rcbuffer->pybuffer.buf = NULL;
5077
- __PYX_ERR(0, 10, __pyx_L1_error)
5076
+ __PYX_ERR(0, 12, __pyx_L1_error)
5078
5077
  } else {__pyx_pybuffernd_seqdatanum.diminfo[0].strides = __pyx_pybuffernd_seqdatanum.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_seqdatanum.diminfo[0].shape = __pyx_pybuffernd_seqdatanum.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_seqdatanum.diminfo[1].strides = __pyx_pybuffernd_seqdatanum.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_seqdatanum.diminfo[1].shape = __pyx_pybuffernd_seqdatanum.rcbuffer->pybuffer.shape[1];
5079
5078
  }
5080
5079
  }
5081
5080
  __pyx_v_seqdatanum = ((PyArrayObject *)__pyx_t_1);
5082
5081
  __pyx_t_1 = 0;
5083
5082
 
5084
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":12
5083
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":14
5085
5084
  * cdef cnp.ndarray[int32_t, ndim=2] seqdatanum = seqdata.values.copy().astype(np.int32, copy=False)
5086
5085
  *
5087
5086
  * cdef int n = seqdatanum.shape[0], m = seqdatanum.shape[1] # <<<<<<<<<<<<<<
@@ -5091,7 +5090,7 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5091
5090
  __pyx_v_n = (__pyx_f_5numpy_7ndarray_5shape_shape(((PyArrayObject *)__pyx_v_seqdatanum))[0]);
5092
5091
  __pyx_v_m = (__pyx_f_5numpy_7ndarray_5shape_shape(((PyArrayObject *)__pyx_v_seqdatanum))[1]);
5093
5092
 
5094
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":15
5093
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":17
5095
5094
  * cdef int i, j
5096
5095
  *
5097
5096
  * cdef cnp.ndarray[int32_t, ndim=2] ffill = seqdatanum.copy() # <<<<<<<<<<<<<<
@@ -5105,22 +5104,22 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5105
5104
  PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL};
5106
5105
  __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_copy, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
5107
5106
  __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
5108
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error)
5107
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error)
5109
5108
  __Pyx_GOTREF(__pyx_t_1);
5110
5109
  }
5111
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 15, __pyx_L1_error)
5110
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 17, __pyx_L1_error)
5112
5111
  {
5113
5112
  __Pyx_BufFmt_StackElem __pyx_stack[1];
5114
5113
  if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ffill.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_t_1), &__Pyx_TypeInfo_nn_int32_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
5115
5114
  __pyx_v_ffill = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ffill.rcbuffer->pybuffer.buf = NULL;
5116
- __PYX_ERR(0, 15, __pyx_L1_error)
5115
+ __PYX_ERR(0, 17, __pyx_L1_error)
5117
5116
  } else {__pyx_pybuffernd_ffill.diminfo[0].strides = __pyx_pybuffernd_ffill.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ffill.diminfo[0].shape = __pyx_pybuffernd_ffill.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_ffill.diminfo[1].strides = __pyx_pybuffernd_ffill.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_ffill.diminfo[1].shape = __pyx_pybuffernd_ffill.rcbuffer->pybuffer.shape[1];
5118
5117
  }
5119
5118
  }
5120
5119
  __pyx_v_ffill = ((PyArrayObject *)__pyx_t_1);
5121
5120
  __pyx_t_1 = 0;
5122
5121
 
5123
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":17
5122
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":19
5124
5123
  * cdef cnp.ndarray[int32_t, ndim=2] ffill = seqdatanum.copy()
5125
5124
  *
5126
5125
  * for j in range(1, m): # <<<<<<<<<<<<<<
@@ -5132,7 +5131,7 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5132
5131
  for (__pyx_t_11 = 1; __pyx_t_11 < __pyx_t_10; __pyx_t_11+=1) {
5133
5132
  __pyx_v_j = __pyx_t_11;
5134
5133
 
5135
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":18
5134
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":20
5136
5135
  *
5137
5136
  * for j in range(1, m):
5138
5137
  * ffill[:, j] = np.where(seqdatanum[:, j] < 0, ffill[:, j - 1], seqdatanum[:, j]) # <<<<<<<<<<<<<<
@@ -5140,50 +5139,50 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5140
5139
  * cdef cnp.ndarray[char, ndim=2] boundaries = np.concatenate(
5141
5140
  */
5142
5141
  __pyx_t_4 = NULL;
5143
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 18, __pyx_L1_error)
5142
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 20, __pyx_L1_error)
5144
5143
  __Pyx_GOTREF(__pyx_t_8);
5145
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_where); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 18, __pyx_L1_error)
5144
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_where); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 20, __pyx_L1_error)
5146
5145
  __Pyx_GOTREF(__pyx_t_7);
5147
5146
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5148
- __pyx_t_8 = __Pyx_PyLong_From_int(__pyx_v_j); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 18, __pyx_L1_error)
5147
+ __pyx_t_8 = __Pyx_PyLong_From_int(__pyx_v_j); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 20, __pyx_L1_error)
5149
5148
  __Pyx_GOTREF(__pyx_t_8);
5150
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 18, __pyx_L1_error)
5149
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 20, __pyx_L1_error)
5151
5150
  __Pyx_GOTREF(__pyx_t_5);
5152
5151
  __Pyx_INCREF(__pyx_mstate_global->__pyx_slice[0]);
5153
5152
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[0]);
5154
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_mstate_global->__pyx_slice[0]) != (0)) __PYX_ERR(0, 18, __pyx_L1_error);
5153
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_mstate_global->__pyx_slice[0]) != (0)) __PYX_ERR(0, 20, __pyx_L1_error);
5155
5154
  __Pyx_GIVEREF(__pyx_t_8);
5156
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_8) != (0)) __PYX_ERR(0, 18, __pyx_L1_error);
5155
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_8) != (0)) __PYX_ERR(0, 20, __pyx_L1_error);
5157
5156
  __pyx_t_8 = 0;
5158
- __pyx_t_8 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_seqdatanum), __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 18, __pyx_L1_error)
5157
+ __pyx_t_8 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_seqdatanum), __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 20, __pyx_L1_error)
5159
5158
  __Pyx_GOTREF(__pyx_t_8);
5160
5159
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
5161
- __pyx_t_5 = PyObject_RichCompare(__pyx_t_8, __pyx_mstate_global->__pyx_int_0, Py_LT); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 18, __pyx_L1_error)
5160
+ __pyx_t_5 = PyObject_RichCompare(__pyx_t_8, __pyx_mstate_global->__pyx_int_0, Py_LT); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 20, __pyx_L1_error)
5162
5161
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5163
- __pyx_t_8 = __Pyx_PyLong_From_long((__pyx_v_j - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 18, __pyx_L1_error)
5162
+ __pyx_t_8 = __Pyx_PyLong_From_long((__pyx_v_j - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 20, __pyx_L1_error)
5164
5163
  __Pyx_GOTREF(__pyx_t_8);
5165
- __pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 18, __pyx_L1_error)
5164
+ __pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 20, __pyx_L1_error)
5166
5165
  __Pyx_GOTREF(__pyx_t_12);
5167
5166
  __Pyx_INCREF(__pyx_mstate_global->__pyx_slice[0]);
5168
5167
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[0]);
5169
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_mstate_global->__pyx_slice[0]) != (0)) __PYX_ERR(0, 18, __pyx_L1_error);
5168
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_mstate_global->__pyx_slice[0]) != (0)) __PYX_ERR(0, 20, __pyx_L1_error);
5170
5169
  __Pyx_GIVEREF(__pyx_t_8);
5171
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_8) != (0)) __PYX_ERR(0, 18, __pyx_L1_error);
5170
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_8) != (0)) __PYX_ERR(0, 20, __pyx_L1_error);
5172
5171
  __pyx_t_8 = 0;
5173
- __pyx_t_8 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ffill), __pyx_t_12); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 18, __pyx_L1_error)
5172
+ __pyx_t_8 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ffill), __pyx_t_12); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 20, __pyx_L1_error)
5174
5173
  __Pyx_GOTREF(__pyx_t_8);
5175
5174
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
5176
- __pyx_t_12 = __Pyx_PyLong_From_int(__pyx_v_j); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 18, __pyx_L1_error)
5175
+ __pyx_t_12 = __Pyx_PyLong_From_int(__pyx_v_j); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 20, __pyx_L1_error)
5177
5176
  __Pyx_GOTREF(__pyx_t_12);
5178
- __pyx_t_13 = PyTuple_New(2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 18, __pyx_L1_error)
5177
+ __pyx_t_13 = PyTuple_New(2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 20, __pyx_L1_error)
5179
5178
  __Pyx_GOTREF(__pyx_t_13);
5180
5179
  __Pyx_INCREF(__pyx_mstate_global->__pyx_slice[0]);
5181
5180
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[0]);
5182
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_mstate_global->__pyx_slice[0]) != (0)) __PYX_ERR(0, 18, __pyx_L1_error);
5181
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_mstate_global->__pyx_slice[0]) != (0)) __PYX_ERR(0, 20, __pyx_L1_error);
5183
5182
  __Pyx_GIVEREF(__pyx_t_12);
5184
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_t_12) != (0)) __PYX_ERR(0, 18, __pyx_L1_error);
5183
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_t_12) != (0)) __PYX_ERR(0, 20, __pyx_L1_error);
5185
5184
  __pyx_t_12 = 0;
5186
- __pyx_t_12 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_seqdatanum), __pyx_t_13); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 18, __pyx_L1_error)
5185
+ __pyx_t_12 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_seqdatanum), __pyx_t_13); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 20, __pyx_L1_error)
5187
5186
  __Pyx_GOTREF(__pyx_t_12);
5188
5187
  __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
5189
5188
  __pyx_t_6 = 1;
@@ -5206,25 +5205,25 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5206
5205
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5207
5206
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
5208
5207
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5209
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 18, __pyx_L1_error)
5208
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 20, __pyx_L1_error)
5210
5209
  __Pyx_GOTREF(__pyx_t_1);
5211
5210
  }
5212
- __pyx_t_7 = __Pyx_PyLong_From_int(__pyx_v_j); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 18, __pyx_L1_error)
5211
+ __pyx_t_7 = __Pyx_PyLong_From_int(__pyx_v_j); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 20, __pyx_L1_error)
5213
5212
  __Pyx_GOTREF(__pyx_t_7);
5214
- __pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 18, __pyx_L1_error)
5213
+ __pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 20, __pyx_L1_error)
5215
5214
  __Pyx_GOTREF(__pyx_t_12);
5216
5215
  __Pyx_INCREF(__pyx_mstate_global->__pyx_slice[0]);
5217
5216
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[0]);
5218
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_mstate_global->__pyx_slice[0]) != (0)) __PYX_ERR(0, 18, __pyx_L1_error);
5217
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_mstate_global->__pyx_slice[0]) != (0)) __PYX_ERR(0, 20, __pyx_L1_error);
5219
5218
  __Pyx_GIVEREF(__pyx_t_7);
5220
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_7) != (0)) __PYX_ERR(0, 18, __pyx_L1_error);
5219
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_7) != (0)) __PYX_ERR(0, 20, __pyx_L1_error);
5221
5220
  __pyx_t_7 = 0;
5222
- if (unlikely((PyObject_SetItem(((PyObject *)__pyx_v_ffill), __pyx_t_12, __pyx_t_1) < 0))) __PYX_ERR(0, 18, __pyx_L1_error)
5221
+ if (unlikely((PyObject_SetItem(((PyObject *)__pyx_v_ffill), __pyx_t_12, __pyx_t_1) < 0))) __PYX_ERR(0, 20, __pyx_L1_error)
5223
5222
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
5224
5223
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5225
5224
  }
5226
5225
 
5227
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":20
5226
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":22
5228
5227
  * ffill[:, j] = np.where(seqdatanum[:, j] < 0, ffill[:, j - 1], seqdatanum[:, j])
5229
5228
  *
5230
5229
  * cdef cnp.ndarray[char, ndim=2] boundaries = np.concatenate( # <<<<<<<<<<<<<<
@@ -5232,13 +5231,13 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5232
5231
  * )
5233
5232
  */
5234
5233
  __pyx_t_12 = NULL;
5235
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 20, __pyx_L1_error)
5234
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 22, __pyx_L1_error)
5236
5235
  __Pyx_GOTREF(__pyx_t_7);
5237
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_concatenate); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 20, __pyx_L1_error)
5236
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_concatenate); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 22, __pyx_L1_error)
5238
5237
  __Pyx_GOTREF(__pyx_t_8);
5239
5238
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5240
5239
 
5241
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":21
5240
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":23
5242
5241
  *
5243
5242
  * cdef cnp.ndarray[char, ndim=2] boundaries = np.concatenate(
5244
5243
  * [np.ones((n, 1), dtype=bool), ffill[:, 1:] != ffill[:, :-1]], axis=1 # <<<<<<<<<<<<<<
@@ -5246,20 +5245,20 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5246
5245
  *
5247
5246
  */
5248
5247
  __pyx_t_5 = NULL;
5249
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 21, __pyx_L1_error)
5248
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 23, __pyx_L1_error)
5250
5249
  __Pyx_GOTREF(__pyx_t_4);
5251
- __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_ones); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 21, __pyx_L1_error)
5250
+ __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_ones); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 23, __pyx_L1_error)
5252
5251
  __Pyx_GOTREF(__pyx_t_13);
5253
5252
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
5254
- __pyx_t_4 = __Pyx_PyLong_From_int(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 21, __pyx_L1_error)
5253
+ __pyx_t_4 = __Pyx_PyLong_From_int(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 23, __pyx_L1_error)
5255
5254
  __Pyx_GOTREF(__pyx_t_4);
5256
- __pyx_t_14 = PyTuple_New(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 21, __pyx_L1_error)
5255
+ __pyx_t_14 = PyTuple_New(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 23, __pyx_L1_error)
5257
5256
  __Pyx_GOTREF(__pyx_t_14);
5258
5257
  __Pyx_GIVEREF(__pyx_t_4);
5259
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_4) != (0)) __PYX_ERR(0, 21, __pyx_L1_error);
5258
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_4) != (0)) __PYX_ERR(0, 23, __pyx_L1_error);
5260
5259
  __Pyx_INCREF(__pyx_mstate_global->__pyx_int_1);
5261
5260
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_1);
5262
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_14, 1, __pyx_mstate_global->__pyx_int_1) != (0)) __PYX_ERR(0, 21, __pyx_L1_error);
5261
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_14, 1, __pyx_mstate_global->__pyx_int_1) != (0)) __PYX_ERR(0, 23, __pyx_L1_error);
5263
5262
  __pyx_t_4 = 0;
5264
5263
  __pyx_t_6 = 1;
5265
5264
  #if CYTHON_UNPACK_METHODS
@@ -5275,30 +5274,30 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5275
5274
  #endif
5276
5275
  {
5277
5276
  PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_5, __pyx_t_14};
5278
- __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 21, __pyx_L1_error)
5277
+ __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 23, __pyx_L1_error)
5279
5278
  __Pyx_GOTREF(__pyx_t_4);
5280
- if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_dtype, ((PyObject*)&PyBool_Type), __pyx_t_4, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 21, __pyx_L1_error)
5279
+ if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_dtype, ((PyObject*)&PyBool_Type), __pyx_t_4, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 23, __pyx_L1_error)
5281
5280
  __pyx_t_7 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_13, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4);
5282
5281
  __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
5283
5282
  __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
5284
5283
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
5285
5284
  __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
5286
- if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 21, __pyx_L1_error)
5285
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 23, __pyx_L1_error)
5287
5286
  __Pyx_GOTREF(__pyx_t_7);
5288
5287
  }
5289
- __pyx_t_13 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ffill), __pyx_mstate_global->__pyx_tuple[0]); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 21, __pyx_L1_error)
5288
+ __pyx_t_13 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ffill), __pyx_mstate_global->__pyx_tuple[0]); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 23, __pyx_L1_error)
5290
5289
  __Pyx_GOTREF(__pyx_t_13);
5291
- __pyx_t_4 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ffill), __pyx_mstate_global->__pyx_tuple[1]); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 21, __pyx_L1_error)
5290
+ __pyx_t_4 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ffill), __pyx_mstate_global->__pyx_tuple[1]); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 23, __pyx_L1_error)
5292
5291
  __Pyx_GOTREF(__pyx_t_4);
5293
- __pyx_t_14 = PyObject_RichCompare(__pyx_t_13, __pyx_t_4, Py_NE); __Pyx_XGOTREF(__pyx_t_14); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 21, __pyx_L1_error)
5292
+ __pyx_t_14 = PyObject_RichCompare(__pyx_t_13, __pyx_t_4, Py_NE); __Pyx_XGOTREF(__pyx_t_14); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 23, __pyx_L1_error)
5294
5293
  __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
5295
5294
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
5296
- __pyx_t_4 = PyList_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 21, __pyx_L1_error)
5295
+ __pyx_t_4 = PyList_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 23, __pyx_L1_error)
5297
5296
  __Pyx_GOTREF(__pyx_t_4);
5298
5297
  __Pyx_GIVEREF(__pyx_t_7);
5299
- if (__Pyx_PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_7) != (0)) __PYX_ERR(0, 21, __pyx_L1_error);
5298
+ if (__Pyx_PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_7) != (0)) __PYX_ERR(0, 23, __pyx_L1_error);
5300
5299
  __Pyx_GIVEREF(__pyx_t_14);
5301
- if (__Pyx_PyList_SET_ITEM(__pyx_t_4, 1, __pyx_t_14) != (0)) __PYX_ERR(0, 21, __pyx_L1_error);
5300
+ if (__Pyx_PyList_SET_ITEM(__pyx_t_4, 1, __pyx_t_14) != (0)) __PYX_ERR(0, 23, __pyx_L1_error);
5302
5301
  __pyx_t_7 = 0;
5303
5302
  __pyx_t_14 = 0;
5304
5303
  __pyx_t_6 = 1;
@@ -5315,38 +5314,38 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5315
5314
  #endif
5316
5315
  {
5317
5316
  PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_12, __pyx_t_4};
5318
- __pyx_t_14 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 20, __pyx_L1_error)
5317
+ __pyx_t_14 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 22, __pyx_L1_error)
5319
5318
  __Pyx_GOTREF(__pyx_t_14);
5320
- if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_axis, __pyx_mstate_global->__pyx_int_1, __pyx_t_14, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 20, __pyx_L1_error)
5319
+ if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_axis, __pyx_mstate_global->__pyx_int_1, __pyx_t_14, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 22, __pyx_L1_error)
5321
5320
  __pyx_t_1 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_8, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_14);
5322
5321
  __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
5323
5322
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
5324
5323
  __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
5325
5324
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5326
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 20, __pyx_L1_error)
5325
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 22, __pyx_L1_error)
5327
5326
  __Pyx_GOTREF(__pyx_t_1);
5328
5327
  }
5329
5328
 
5330
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":20
5329
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":22
5331
5330
  * ffill[:, j] = np.where(seqdatanum[:, j] < 0, ffill[:, j - 1], seqdatanum[:, j])
5332
5331
  *
5333
5332
  * cdef cnp.ndarray[char, ndim=2] boundaries = np.concatenate( # <<<<<<<<<<<<<<
5334
5333
  * [np.ones((n, 1), dtype=bool), ffill[:, 1:] != ffill[:, :-1]], axis=1
5335
5334
  * )
5336
5335
  */
5337
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 20, __pyx_L1_error)
5336
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 22, __pyx_L1_error)
5338
5337
  {
5339
5338
  __Pyx_BufFmt_StackElem __pyx_stack[1];
5340
5339
  if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_boundaries.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_t_1), &__Pyx_TypeInfo_char, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
5341
5340
  __pyx_v_boundaries = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_boundaries.rcbuffer->pybuffer.buf = NULL;
5342
- __PYX_ERR(0, 20, __pyx_L1_error)
5341
+ __PYX_ERR(0, 22, __pyx_L1_error)
5343
5342
  } else {__pyx_pybuffernd_boundaries.diminfo[0].strides = __pyx_pybuffernd_boundaries.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_boundaries.diminfo[0].shape = __pyx_pybuffernd_boundaries.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_boundaries.diminfo[1].strides = __pyx_pybuffernd_boundaries.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_boundaries.diminfo[1].shape = __pyx_pybuffernd_boundaries.rcbuffer->pybuffer.shape[1];
5344
5343
  }
5345
5344
  }
5346
5345
  __pyx_v_boundaries = ((PyArrayObject *)__pyx_t_1);
5347
5346
  __pyx_t_1 = 0;
5348
5347
 
5349
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":24
5348
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":26
5350
5349
  * )
5351
5350
  *
5352
5351
  * cdef cnp.ndarray[int32_t, ndim=2] group_ids = np.cumsum(boundaries, axis=1).astype(np.int32, copy=False) # <<<<<<<<<<<<<<
@@ -5354,9 +5353,9 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5354
5353
  *
5355
5354
  */
5356
5355
  __pyx_t_4 = NULL;
5357
- __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 24, __pyx_L1_error)
5356
+ __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 26, __pyx_L1_error)
5358
5357
  __Pyx_GOTREF(__pyx_t_12);
5359
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_cumsum); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 24, __pyx_L1_error)
5358
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_cumsum); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 26, __pyx_L1_error)
5360
5359
  __Pyx_GOTREF(__pyx_t_7);
5361
5360
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
5362
5361
  __pyx_t_6 = 1;
@@ -5373,70 +5372,70 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5373
5372
  #endif
5374
5373
  {
5375
5374
  PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_4, ((PyObject *)__pyx_v_boundaries)};
5376
- __pyx_t_12 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 24, __pyx_L1_error)
5375
+ __pyx_t_12 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 26, __pyx_L1_error)
5377
5376
  __Pyx_GOTREF(__pyx_t_12);
5378
- if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_axis, __pyx_mstate_global->__pyx_int_1, __pyx_t_12, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 24, __pyx_L1_error)
5377
+ if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_axis, __pyx_mstate_global->__pyx_int_1, __pyx_t_12, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 26, __pyx_L1_error)
5379
5378
  __pyx_t_14 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_7, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_12);
5380
5379
  __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
5381
5380
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
5382
5381
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5383
- if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 24, __pyx_L1_error)
5382
+ if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 26, __pyx_L1_error)
5384
5383
  __Pyx_GOTREF(__pyx_t_14);
5385
5384
  }
5386
5385
  __pyx_t_8 = __pyx_t_14;
5387
5386
  __Pyx_INCREF(__pyx_t_8);
5388
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 24, __pyx_L1_error)
5387
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 26, __pyx_L1_error)
5389
5388
  __Pyx_GOTREF(__pyx_t_7);
5390
- __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_int32); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 24, __pyx_L1_error)
5389
+ __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_int32); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 26, __pyx_L1_error)
5391
5390
  __Pyx_GOTREF(__pyx_t_12);
5392
5391
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5393
5392
  __pyx_t_6 = 0;
5394
5393
  {
5395
5394
  PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_8, __pyx_t_12};
5396
- __pyx_t_7 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 24, __pyx_L1_error)
5395
+ __pyx_t_7 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 26, __pyx_L1_error)
5397
5396
  __Pyx_GOTREF(__pyx_t_7);
5398
- if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_copy, Py_False, __pyx_t_7, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 24, __pyx_L1_error)
5397
+ if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_copy, Py_False, __pyx_t_7, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 26, __pyx_L1_error)
5399
5398
  __pyx_t_1 = __Pyx_Object_VectorcallMethod_CallFromBuilder(__pyx_mstate_global->__pyx_n_u_astype, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_7);
5400
5399
  __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
5401
5400
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
5402
5401
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5403
5402
  __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
5404
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 24, __pyx_L1_error)
5403
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 26, __pyx_L1_error)
5405
5404
  __Pyx_GOTREF(__pyx_t_1);
5406
5405
  }
5407
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 24, __pyx_L1_error)
5406
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 26, __pyx_L1_error)
5408
5407
  {
5409
5408
  __Pyx_BufFmt_StackElem __pyx_stack[1];
5410
5409
  if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_group_ids.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_t_1), &__Pyx_TypeInfo_nn_int32_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
5411
5410
  __pyx_v_group_ids = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_group_ids.rcbuffer->pybuffer.buf = NULL;
5412
- __PYX_ERR(0, 24, __pyx_L1_error)
5411
+ __PYX_ERR(0, 26, __pyx_L1_error)
5413
5412
  } else {__pyx_pybuffernd_group_ids.diminfo[0].strides = __pyx_pybuffernd_group_ids.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_group_ids.diminfo[0].shape = __pyx_pybuffernd_group_ids.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_group_ids.diminfo[1].strides = __pyx_pybuffernd_group_ids.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_group_ids.diminfo[1].shape = __pyx_pybuffernd_group_ids.rcbuffer->pybuffer.shape[1];
5414
5413
  }
5415
5414
  }
5416
5415
  __pyx_v_group_ids = ((PyArrayObject *)__pyx_t_1);
5417
5416
  __pyx_t_1 = 0;
5418
5417
 
5419
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":25
5418
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":27
5420
5419
  *
5421
5420
  * cdef cnp.ndarray[int32_t, ndim=2] group_ids = np.cumsum(boundaries, axis=1).astype(np.int32, copy=False)
5422
5421
  * cdef cnp.ndarray[char, ndim=2] valid = seqdatanum >= 0 # <<<<<<<<<<<<<<
5423
5422
  *
5424
5423
  * cdef cnp.ndarray[int32_t, ndim=2] group_durations = np.zeros((n, m), dtype=np.int32)
5425
5424
  */
5426
- __pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_v_seqdatanum), __pyx_mstate_global->__pyx_int_0, Py_GE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 25, __pyx_L1_error)
5427
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 25, __pyx_L1_error)
5425
+ __pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_v_seqdatanum), __pyx_mstate_global->__pyx_int_0, Py_GE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 27, __pyx_L1_error)
5426
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 27, __pyx_L1_error)
5428
5427
  {
5429
5428
  __Pyx_BufFmt_StackElem __pyx_stack[1];
5430
5429
  if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_valid.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_t_1), &__Pyx_TypeInfo_char, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
5431
5430
  __pyx_v_valid = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_valid.rcbuffer->pybuffer.buf = NULL;
5432
- __PYX_ERR(0, 25, __pyx_L1_error)
5431
+ __PYX_ERR(0, 27, __pyx_L1_error)
5433
5432
  } else {__pyx_pybuffernd_valid.diminfo[0].strides = __pyx_pybuffernd_valid.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_valid.diminfo[0].shape = __pyx_pybuffernd_valid.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_valid.diminfo[1].strides = __pyx_pybuffernd_valid.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_valid.diminfo[1].shape = __pyx_pybuffernd_valid.rcbuffer->pybuffer.shape[1];
5434
5433
  }
5435
5434
  }
5436
5435
  __pyx_v_valid = ((PyArrayObject *)__pyx_t_1);
5437
5436
  __pyx_t_1 = 0;
5438
5437
 
5439
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":27
5438
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":29
5440
5439
  * cdef cnp.ndarray[char, ndim=2] valid = seqdatanum >= 0
5441
5440
  *
5442
5441
  * cdef cnp.ndarray[int32_t, ndim=2] group_durations = np.zeros((n, m), dtype=np.int32) # <<<<<<<<<<<<<<
@@ -5444,26 +5443,26 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5444
5443
  * for i in range(n):
5445
5444
  */
5446
5445
  __pyx_t_14 = NULL;
5447
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 27, __pyx_L1_error)
5446
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 29, __pyx_L1_error)
5448
5447
  __Pyx_GOTREF(__pyx_t_7);
5449
- __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_zeros); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 27, __pyx_L1_error)
5448
+ __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_zeros); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 29, __pyx_L1_error)
5450
5449
  __Pyx_GOTREF(__pyx_t_12);
5451
5450
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5452
- __pyx_t_7 = __Pyx_PyLong_From_int(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 27, __pyx_L1_error)
5451
+ __pyx_t_7 = __Pyx_PyLong_From_int(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 29, __pyx_L1_error)
5453
5452
  __Pyx_GOTREF(__pyx_t_7);
5454
- __pyx_t_8 = __Pyx_PyLong_From_int(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 27, __pyx_L1_error)
5453
+ __pyx_t_8 = __Pyx_PyLong_From_int(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 29, __pyx_L1_error)
5455
5454
  __Pyx_GOTREF(__pyx_t_8);
5456
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 27, __pyx_L1_error)
5455
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 29, __pyx_L1_error)
5457
5456
  __Pyx_GOTREF(__pyx_t_4);
5458
5457
  __Pyx_GIVEREF(__pyx_t_7);
5459
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7) != (0)) __PYX_ERR(0, 27, __pyx_L1_error);
5458
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7) != (0)) __PYX_ERR(0, 29, __pyx_L1_error);
5460
5459
  __Pyx_GIVEREF(__pyx_t_8);
5461
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_8) != (0)) __PYX_ERR(0, 27, __pyx_L1_error);
5460
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_8) != (0)) __PYX_ERR(0, 29, __pyx_L1_error);
5462
5461
  __pyx_t_7 = 0;
5463
5462
  __pyx_t_8 = 0;
5464
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 27, __pyx_L1_error)
5463
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 29, __pyx_L1_error)
5465
5464
  __Pyx_GOTREF(__pyx_t_8);
5466
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_int32); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 27, __pyx_L1_error)
5465
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_int32); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 29, __pyx_L1_error)
5467
5466
  __Pyx_GOTREF(__pyx_t_7);
5468
5467
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5469
5468
  __pyx_t_6 = 1;
@@ -5480,31 +5479,31 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5480
5479
  #endif
5481
5480
  {
5482
5481
  PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_14, __pyx_t_4};
5483
- __pyx_t_8 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 27, __pyx_L1_error)
5482
+ __pyx_t_8 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 29, __pyx_L1_error)
5484
5483
  __Pyx_GOTREF(__pyx_t_8);
5485
- if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_dtype, __pyx_t_7, __pyx_t_8, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 27, __pyx_L1_error)
5484
+ if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_dtype, __pyx_t_7, __pyx_t_8, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 29, __pyx_L1_error)
5486
5485
  __pyx_t_1 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_12, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_8);
5487
5486
  __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
5488
5487
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
5489
5488
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5490
5489
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5491
5490
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
5492
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 27, __pyx_L1_error)
5491
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 29, __pyx_L1_error)
5493
5492
  __Pyx_GOTREF(__pyx_t_1);
5494
5493
  }
5495
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 27, __pyx_L1_error)
5494
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 29, __pyx_L1_error)
5496
5495
  {
5497
5496
  __Pyx_BufFmt_StackElem __pyx_stack[1];
5498
5497
  if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_group_durations.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_t_1), &__Pyx_TypeInfo_nn_int32_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
5499
5498
  __pyx_v_group_durations = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_group_durations.rcbuffer->pybuffer.buf = NULL;
5500
- __PYX_ERR(0, 27, __pyx_L1_error)
5499
+ __PYX_ERR(0, 29, __pyx_L1_error)
5501
5500
  } else {__pyx_pybuffernd_group_durations.diminfo[0].strides = __pyx_pybuffernd_group_durations.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_group_durations.diminfo[0].shape = __pyx_pybuffernd_group_durations.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_group_durations.diminfo[1].strides = __pyx_pybuffernd_group_durations.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_group_durations.diminfo[1].shape = __pyx_pybuffernd_group_durations.rcbuffer->pybuffer.shape[1];
5502
5501
  }
5503
5502
  }
5504
5503
  __pyx_v_group_durations = ((PyArrayObject *)__pyx_t_1);
5505
5504
  __pyx_t_1 = 0;
5506
5505
 
5507
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":29
5506
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":31
5508
5507
  * cdef cnp.ndarray[int32_t, ndim=2] group_durations = np.zeros((n, m), dtype=np.int32)
5509
5508
  *
5510
5509
  * for i in range(n): # <<<<<<<<<<<<<<
@@ -5516,7 +5515,7 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5516
5515
  for (__pyx_t_11 = 0; __pyx_t_11 < __pyx_t_10; __pyx_t_11+=1) {
5517
5516
  __pyx_v_i = __pyx_t_11;
5518
5517
 
5519
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":30
5518
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":32
5520
5519
  *
5521
5520
  * for i in range(n):
5522
5521
  * counts = np.bincount(group_ids[i][valid[i]]) # <<<<<<<<<<<<<<
@@ -5524,16 +5523,16 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5524
5523
  * group_durations[i, :len(counts)] = counts
5525
5524
  */
5526
5525
  __pyx_t_12 = NULL;
5527
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 30, __pyx_L1_error)
5526
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 32, __pyx_L1_error)
5528
5527
  __Pyx_GOTREF(__pyx_t_8);
5529
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_bincount); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 30, __pyx_L1_error)
5528
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_bincount); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 32, __pyx_L1_error)
5530
5529
  __Pyx_GOTREF(__pyx_t_7);
5531
5530
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5532
- __pyx_t_8 = __Pyx_GetItemInt(((PyObject *)__pyx_v_group_ids), __pyx_v_i, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 30, __pyx_L1_error)
5531
+ __pyx_t_8 = __Pyx_GetItemInt(((PyObject *)__pyx_v_group_ids), __pyx_v_i, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 32, __pyx_L1_error)
5533
5532
  __Pyx_GOTREF(__pyx_t_8);
5534
- __pyx_t_4 = __Pyx_GetItemInt(((PyObject *)__pyx_v_valid), __pyx_v_i, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 30, __pyx_L1_error)
5533
+ __pyx_t_4 = __Pyx_GetItemInt(((PyObject *)__pyx_v_valid), __pyx_v_i, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 32, __pyx_L1_error)
5535
5534
  __Pyx_GOTREF(__pyx_t_4);
5536
- __pyx_t_14 = __Pyx_PyObject_GetItem(__pyx_t_8, __pyx_t_4); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 30, __pyx_L1_error)
5535
+ __pyx_t_14 = __Pyx_PyObject_GetItem(__pyx_t_8, __pyx_t_4); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 32, __pyx_L1_error)
5537
5536
  __Pyx_GOTREF(__pyx_t_14);
5538
5537
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5539
5538
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -5555,38 +5554,38 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5555
5554
  __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
5556
5555
  __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
5557
5556
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5558
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 30, __pyx_L1_error)
5557
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 32, __pyx_L1_error)
5559
5558
  __Pyx_GOTREF(__pyx_t_1);
5560
5559
  }
5561
5560
  __Pyx_XDECREF_SET(__pyx_v_counts, __pyx_t_1);
5562
5561
  __pyx_t_1 = 0;
5563
5562
 
5564
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":31
5563
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":33
5565
5564
  * for i in range(n):
5566
5565
  * counts = np.bincount(group_ids[i][valid[i]])
5567
5566
  * counts = counts[1:] if counts.size > 0 else np.array([], dtype=int) # <<<<<<<<<<<<<<
5568
5567
  * group_durations[i, :len(counts)] = counts
5569
5568
  *
5570
5569
  */
5571
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_counts, __pyx_mstate_global->__pyx_n_u_size); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 31, __pyx_L1_error)
5570
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_counts, __pyx_mstate_global->__pyx_n_u_size); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 33, __pyx_L1_error)
5572
5571
  __Pyx_GOTREF(__pyx_t_7);
5573
- __pyx_t_14 = PyObject_RichCompare(__pyx_t_7, __pyx_mstate_global->__pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_14); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 31, __pyx_L1_error)
5572
+ __pyx_t_14 = PyObject_RichCompare(__pyx_t_7, __pyx_mstate_global->__pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_14); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 33, __pyx_L1_error)
5574
5573
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
5575
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 31, __pyx_L1_error)
5574
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 33, __pyx_L1_error)
5576
5575
  __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
5577
5576
  if (__pyx_t_3) {
5578
- __pyx_t_14 = __Pyx_PyObject_GetSlice(__pyx_v_counts, 1, 0, NULL, NULL, &__pyx_mstate_global->__pyx_slice[1], 1, 0, 1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 31, __pyx_L1_error)
5577
+ __pyx_t_14 = __Pyx_PyObject_GetSlice(__pyx_v_counts, 1, 0, NULL, NULL, &__pyx_mstate_global->__pyx_slice[1], 1, 0, 1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 33, __pyx_L1_error)
5579
5578
  __Pyx_GOTREF(__pyx_t_14);
5580
5579
  __pyx_t_1 = __pyx_t_14;
5581
5580
  __pyx_t_14 = 0;
5582
5581
  } else {
5583
5582
  __pyx_t_7 = NULL;
5584
- __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 31, __pyx_L1_error)
5583
+ __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_np); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 33, __pyx_L1_error)
5585
5584
  __Pyx_GOTREF(__pyx_t_12);
5586
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_array); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 31, __pyx_L1_error)
5585
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_mstate_global->__pyx_n_u_array); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 33, __pyx_L1_error)
5587
5586
  __Pyx_GOTREF(__pyx_t_4);
5588
5587
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
5589
- __pyx_t_12 = PyList_New(0); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 31, __pyx_L1_error)
5588
+ __pyx_t_12 = PyList_New(0); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 33, __pyx_L1_error)
5590
5589
  __Pyx_GOTREF(__pyx_t_12);
5591
5590
  __pyx_t_6 = 1;
5592
5591
  #if CYTHON_UNPACK_METHODS
@@ -5602,15 +5601,15 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5602
5601
  #endif
5603
5602
  {
5604
5603
  PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_7, __pyx_t_12};
5605
- __pyx_t_8 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 31, __pyx_L1_error)
5604
+ __pyx_t_8 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 33, __pyx_L1_error)
5606
5605
  __Pyx_GOTREF(__pyx_t_8);
5607
- if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_dtype, ((PyObject *)(&PyLong_Type)), __pyx_t_8, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 31, __pyx_L1_error)
5606
+ if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_dtype, ((PyObject *)(&PyLong_Type)), __pyx_t_8, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 33, __pyx_L1_error)
5608
5607
  __pyx_t_14 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_4, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_8);
5609
5608
  __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
5610
5609
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
5611
5610
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5612
5611
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
5613
- if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 31, __pyx_L1_error)
5612
+ if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 33, __pyx_L1_error)
5614
5613
  __Pyx_GOTREF(__pyx_t_14);
5615
5614
  }
5616
5615
  __pyx_t_1 = __pyx_t_14;
@@ -5619,34 +5618,34 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5619
5618
  __Pyx_DECREF_SET(__pyx_v_counts, __pyx_t_1);
5620
5619
  __pyx_t_1 = 0;
5621
5620
 
5622
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":32
5621
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":34
5623
5622
  * counts = np.bincount(group_ids[i][valid[i]])
5624
5623
  * counts = counts[1:] if counts.size > 0 else np.array([], dtype=int)
5625
5624
  * group_durations[i, :len(counts)] = counts # <<<<<<<<<<<<<<
5626
5625
  *
5627
5626
  * return group_durations
5628
5627
  */
5629
- __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_i); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 32, __pyx_L1_error)
5628
+ __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_i); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 34, __pyx_L1_error)
5630
5629
  __Pyx_GOTREF(__pyx_t_1);
5631
- __pyx_t_15 = PyObject_Length(__pyx_v_counts); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 32, __pyx_L1_error)
5632
- __pyx_t_14 = PyLong_FromSsize_t(__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 32, __pyx_L1_error)
5630
+ __pyx_t_15 = PyObject_Length(__pyx_v_counts); if (unlikely(__pyx_t_15 == ((Py_ssize_t)-1))) __PYX_ERR(0, 34, __pyx_L1_error)
5631
+ __pyx_t_14 = PyLong_FromSsize_t(__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 34, __pyx_L1_error)
5633
5632
  __Pyx_GOTREF(__pyx_t_14);
5634
- __pyx_t_4 = PySlice_New(Py_None, __pyx_t_14, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 32, __pyx_L1_error)
5633
+ __pyx_t_4 = PySlice_New(Py_None, __pyx_t_14, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 34, __pyx_L1_error)
5635
5634
  __Pyx_GOTREF(__pyx_t_4);
5636
5635
  __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
5637
- __pyx_t_14 = PyTuple_New(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 32, __pyx_L1_error)
5636
+ __pyx_t_14 = PyTuple_New(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 34, __pyx_L1_error)
5638
5637
  __Pyx_GOTREF(__pyx_t_14);
5639
5638
  __Pyx_GIVEREF(__pyx_t_1);
5640
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 32, __pyx_L1_error);
5639
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 34, __pyx_L1_error);
5641
5640
  __Pyx_GIVEREF(__pyx_t_4);
5642
- if (__Pyx_PyTuple_SET_ITEM(__pyx_t_14, 1, __pyx_t_4) != (0)) __PYX_ERR(0, 32, __pyx_L1_error);
5641
+ if (__Pyx_PyTuple_SET_ITEM(__pyx_t_14, 1, __pyx_t_4) != (0)) __PYX_ERR(0, 34, __pyx_L1_error);
5643
5642
  __pyx_t_1 = 0;
5644
5643
  __pyx_t_4 = 0;
5645
- if (unlikely((PyObject_SetItem(((PyObject *)__pyx_v_group_durations), __pyx_t_14, __pyx_v_counts) < 0))) __PYX_ERR(0, 32, __pyx_L1_error)
5644
+ if (unlikely((PyObject_SetItem(((PyObject *)__pyx_v_group_durations), __pyx_t_14, __pyx_v_counts) < 0))) __PYX_ERR(0, 34, __pyx_L1_error)
5646
5645
  __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
5647
5646
  }
5648
5647
 
5649
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":34
5648
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":36
5650
5649
  * group_durations[i, :len(counts)] = counts
5651
5650
  *
5652
5651
  * return group_durations # <<<<<<<<<<<<<<
@@ -5656,7 +5655,7 @@ static PyObject *__pyx_pf_8sequenzo_22dissimilarity_measures_5utils_6seqdur_seqd
5656
5655
  __pyx_r = ((PyObject *)__pyx_v_group_durations);
5657
5656
  goto __pyx_L0;
5658
5657
 
5659
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":6
5658
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":8
5660
5659
  * from libc.stdint cimport int32_t
5661
5660
  *
5662
5661
  * def seqdur(seqdata): # <<<<<<<<<<<<<<
@@ -6231,50 +6230,51 @@ __Pyx_RefNannySetupContext("PyInit_seqdur", 0);
6231
6230
  (void)__Pyx_modinit_function_import_code(__pyx_mstate);
6232
6231
  /*--- Execution code ---*/
6233
6232
 
6234
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":1
6233
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":2
6234
+ * # cython: np_import_array=True
6235
6235
  * import numpy as np # <<<<<<<<<<<<<<
6236
6236
  * cimport numpy as cnp
6237
- * from sequenzo.define_sequence_data import SequenceData
6237
+ *
6238
6238
  */
6239
- __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_numpy, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error)
6239
+ __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_numpy, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error)
6240
6240
  __Pyx_GOTREF(__pyx_t_2);
6241
- if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_np, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
6241
+ if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_np, __pyx_t_2) < 0) __PYX_ERR(0, 2, __pyx_L1_error)
6242
6242
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6243
6243
 
6244
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":3
6245
- * import numpy as np
6244
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":5
6246
6245
  * cimport numpy as cnp
6246
+ *
6247
6247
  * from sequenzo.define_sequence_data import SequenceData # <<<<<<<<<<<<<<
6248
6248
  * from libc.stdint cimport int32_t
6249
6249
  *
6250
6250
  */
6251
- __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SequenceData); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error)
6251
+ __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SequenceData); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error)
6252
6252
  __Pyx_GOTREF(__pyx_t_2);
6253
- __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_sequenzo_define_sequence_data, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error)
6253
+ __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_sequenzo_define_sequence_data, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error)
6254
6254
  __Pyx_GOTREF(__pyx_t_3);
6255
6255
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6256
- __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SequenceData); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error)
6256
+ __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SequenceData); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error)
6257
6257
  __Pyx_GOTREF(__pyx_t_2);
6258
- if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SequenceData, __pyx_t_2) < 0) __PYX_ERR(0, 3, __pyx_L1_error)
6258
+ if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SequenceData, __pyx_t_2) < 0) __PYX_ERR(0, 5, __pyx_L1_error)
6259
6259
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6260
6260
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6261
6261
 
6262
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":6
6262
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":8
6263
6263
  * from libc.stdint cimport int32_t
6264
6264
  *
6265
6265
  * def seqdur(seqdata): # <<<<<<<<<<<<<<
6266
6266
  * if not isinstance(seqdata, SequenceData):
6267
6267
  * raise ValueError("data is not a sequence object, see SequenceData to create one")
6268
6268
  */
6269
- __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_8sequenzo_22dissimilarity_measures_5utils_6seqdur_1seqdur, 0, __pyx_mstate_global->__pyx_n_u_seqdur, NULL, __pyx_mstate_global->__pyx_n_u_sequenzo_dissimilarity_measures, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error)
6269
+ __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_8sequenzo_22dissimilarity_measures_5utils_6seqdur_1seqdur, 0, __pyx_mstate_global->__pyx_n_u_seqdur, NULL, __pyx_mstate_global->__pyx_n_u_sequenzo_dissimilarity_measures, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error)
6270
6270
  __Pyx_GOTREF(__pyx_t_3);
6271
- if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_seqdur, __pyx_t_3) < 0) __PYX_ERR(0, 6, __pyx_L1_error)
6271
+ if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_seqdur, __pyx_t_3) < 0) __PYX_ERR(0, 8, __pyx_L1_error)
6272
6272
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6273
6273
 
6274
6274
  /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":1
6275
- * import numpy as np # <<<<<<<<<<<<<<
6275
+ * # cython: np_import_array=True # <<<<<<<<<<<<<<
6276
+ * import numpy as np
6276
6277
  * cimport numpy as cnp
6277
- * from sequenzo.define_sequence_data import SequenceData
6278
6278
  */
6279
6279
  __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error)
6280
6280
  __Pyx_GOTREF(__pyx_t_3);
@@ -6404,8 +6404,8 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, c
6404
6404
 
6405
6405
  static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) {
6406
6406
  CYTHON_UNUSED_VAR(__pyx_mstate);
6407
- __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 8, __pyx_L1_error)
6408
- __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_range); if (!__pyx_builtin_range) __PYX_ERR(0, 17, __pyx_L1_error)
6407
+ __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 10, __pyx_L1_error)
6408
+ __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_range); if (!__pyx_builtin_range) __PYX_ERR(0, 19, __pyx_L1_error)
6409
6409
  __pyx_builtin_ImportError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_ImportError); if (!__pyx_builtin_ImportError) __PYX_ERR(1, 1010, __pyx_L1_error)
6410
6410
  return 0;
6411
6411
  __pyx_L1_error:;
@@ -6418,34 +6418,34 @@ static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) {
6418
6418
  CYTHON_UNUSED_VAR(__pyx_mstate);
6419
6419
  __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0);
6420
6420
 
6421
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":18
6421
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":20
6422
6422
  *
6423
6423
  * for j in range(1, m):
6424
6424
  * ffill[:, j] = np.where(seqdatanum[:, j] < 0, ffill[:, j - 1], seqdatanum[:, j]) # <<<<<<<<<<<<<<
6425
6425
  *
6426
6426
  * cdef cnp.ndarray[char, ndim=2] boundaries = np.concatenate(
6427
6427
  */
6428
- __pyx_mstate_global->__pyx_slice[0] = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[0])) __PYX_ERR(0, 18, __pyx_L1_error)
6428
+ __pyx_mstate_global->__pyx_slice[0] = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[0])) __PYX_ERR(0, 20, __pyx_L1_error)
6429
6429
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_slice[0]);
6430
6430
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[0]);
6431
6431
 
6432
- /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":21
6432
+ /* "sequenzo/dissimilarity_measures/utils/seqdur.pyx":23
6433
6433
  *
6434
6434
  * cdef cnp.ndarray[char, ndim=2] boundaries = np.concatenate(
6435
6435
  * [np.ones((n, 1), dtype=bool), ffill[:, 1:] != ffill[:, :-1]], axis=1 # <<<<<<<<<<<<<<
6436
6436
  * )
6437
6437
  *
6438
6438
  */
6439
- __pyx_mstate_global->__pyx_slice[1] = PySlice_New(__pyx_mstate_global->__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[1])) __PYX_ERR(0, 21, __pyx_L1_error)
6439
+ __pyx_mstate_global->__pyx_slice[1] = PySlice_New(__pyx_mstate_global->__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[1])) __PYX_ERR(0, 23, __pyx_L1_error)
6440
6440
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_slice[1]);
6441
6441
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[1]);
6442
- __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_slice[0], __pyx_mstate_global->__pyx_slice[1]); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 21, __pyx_L1_error)
6442
+ __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_slice[0], __pyx_mstate_global->__pyx_slice[1]); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 23, __pyx_L1_error)
6443
6443
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]);
6444
6444
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]);
6445
- __pyx_mstate_global->__pyx_slice[2] = PySlice_New(Py_None, __pyx_mstate_global->__pyx_int_neg_1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[2])) __PYX_ERR(0, 21, __pyx_L1_error)
6445
+ __pyx_mstate_global->__pyx_slice[2] = PySlice_New(Py_None, __pyx_mstate_global->__pyx_int_neg_1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[2])) __PYX_ERR(0, 23, __pyx_L1_error)
6446
6446
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_slice[2]);
6447
6447
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[2]);
6448
- __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_slice[0], __pyx_mstate_global->__pyx_slice[2]); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 21, __pyx_L1_error)
6448
+ __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_slice[0], __pyx_mstate_global->__pyx_slice[2]); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 23, __pyx_L1_error)
6449
6449
  __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[1]);
6450
6450
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[1]);
6451
6451
  __Pyx_RefNannyFinishContext();
@@ -6476,7 +6476,7 @@ static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) {
6476
6476
  unsigned int num_kwonly_args : 1;
6477
6477
  unsigned int nlocals : 4;
6478
6478
  unsigned int flags : 10;
6479
- unsigned int first_line : 3;
6479
+ unsigned int first_line : 4;
6480
6480
  unsigned int line_table_length : 13;
6481
6481
  } __Pyx_PyCode_New_function_description;
6482
6482
  /* NewCodeObj.proto */
@@ -6494,7 +6494,7 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) {
6494
6494
  PyObject* tuple_dedup_map = PyDict_New();
6495
6495
  if (unlikely(!tuple_dedup_map)) return -1;
6496
6496
  {
6497
- const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 12, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 6, 325};
6497
+ const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 12, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 8, 325};
6498
6498
  PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_seqdata, __pyx_mstate->__pyx_n_u_seqdatanum, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_m, __pyx_mstate->__pyx_n_u_i, __pyx_mstate->__pyx_n_u_j, __pyx_mstate->__pyx_n_u_ffill, __pyx_mstate->__pyx_n_u_boundaries, __pyx_mstate->__pyx_n_u_group_ids, __pyx_mstate->__pyx_n_u_valid, __pyx_mstate->__pyx_n_u_group_durations, __pyx_mstate->__pyx_n_u_counts};
6499
6499
  __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_sequenzo_dissimilarity_measures_2, __pyx_mstate->__pyx_n_u_seqdur, __pyx_k_t_Qiq_j_37_b_qPRRZZ___6_F_1_j_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad;
6500
6500
  }