diff --git a/opt_einsum/contract.py b/opt_einsum/contract.py
index 0df94d0..0f70379 100644
--- a/opt_einsum/contract.py
+++ b/opt_einsum/contract.py
@@ -4,6 +4,7 @@ Contains the primary optimization and contraction routines.
 
 from collections import namedtuple
 from decimal import Decimal
+from functools import lru_cache
 from typing import Any, Dict, Iterable, List, Optional, Sequence, Tuple
 
 from . import backends, blas, helpers, parser, paths, sharing
@@ -542,15 +543,20 @@ def contract(*operands_: Any, **kwargs: Any) -> ArrayType:
     return _core_contract(operands, contraction_list, backend=backend, **einsum_kwargs)
 
 
+@lru_cache(None)
+def _infer_backend_class_cached(cls: type) -> str:
+    return cls.__module__.split(".")[0]
+
+
 def infer_backend(x: Any) -> str:
-    return x.__class__.__module__.split(".")[0]
+    return _infer_backend_class_cached(x.__class__)
 
 
-def parse_backend(arrays: Sequence[ArrayType], backend: str) -> str:
+def parse_backend(arrays: Sequence[ArrayType], backend: Optional[str]) -> str:
     """Find out what backend we should use, dipatching based on the first
     array if ``backend='auto'`` is specified.
     """
-    if backend != "auto":
+    if (backend != "auto") and (backend is not None):
         return backend
     backend = infer_backend(arrays[0])
 
@@ -565,7 +571,7 @@ def parse_backend(arrays: Sequence[ArrayType], backend: str) -> str:
 def _core_contract(
     operands_: Sequence[ArrayType],
     contraction_list: ContractionListType,
-    backend: str = "auto",
+    backend: Optional[str] = "auto",
     evaluate_constants: bool = False,
     **einsum_kwargs: Any,
 ) -> ArrayType:
@@ -703,7 +709,7 @@ class ContractExpression:
         self._evaluated_constants: Dict[str, Any] = {}
         self._backend_expressions: Dict[str, Any] = {}
 
-    def evaluate_constants(self, backend: str = "auto") -> None:
+    def evaluate_constants(self, backend: Optional[str] = "auto") -> None:
         """Convert any constant operands to the correct backend form, and
         perform as many contractions as possible to create a new list of
         operands, stored in ``self._evaluated_constants[backend]``. This also
@@ -746,7 +752,7 @@ class ContractExpression:
         self,
         arrays: Sequence[ArrayType],
         out: Optional[ArrayType] = None,
-        backend: str = "auto",
+        backend: Optional[str] = "auto",
         evaluate_constants: bool = False,
     ) -> ArrayType:
         """The normal, core contraction."""
diff --git a/opt_einsum/paths.py b/opt_einsum/paths.py
index eac3630..ac8ccd5 100644
--- a/opt_einsum/paths.py
+++ b/opt_einsum/paths.py
@@ -1217,7 +1217,7 @@ class DynamicProgramming(PathOptimizer):
         output = frozenset(symbol2int[c] for c in output_)
         size_dict_canonical = {symbol2int[c]: v for c, v in size_dict_.items() if c in symbol2int}
         size_dict = [size_dict_canonical[j] for j in range(len(size_dict_canonical))]
-        naive_cost = naive_scale * len(inputs) * functools.reduce(operator.mul, size_dict)
+        naive_cost = naive_scale * len(inputs) * functools.reduce(operator.mul, size_dict, 1)
 
         inputs, inputs_done, inputs_contractions = _dp_parse_out_single_term_ops(inputs, all_inds, ind_counts)
 

diff --git a/opt_einsum/tests/test_backends.py b/opt_einsum/tests/test_backends.py
index 87d2ba2..7c81c67 100644
--- a/opt_einsum/tests/test_backends.py
+++ b/opt_einsum/tests/test_backends.py
@@ -443,6 +443,7 @@ def test_auto_backend_custom_array_no_tensordot():
     # Shaped is an array-like object defined by opt_einsum - which has no TDOT
     assert infer_backend(x) == "opt_einsum"
     assert parse_backend([x], "auto") == "numpy"
+    assert parse_backend([x], None) == "numpy"
 
 
 @pytest.mark.parametrize("string", tests)
diff --git a/opt_einsum/tests/test_contract.py b/opt_einsum/tests/test_contract.py
index 453a779..ef3ee5d 100644
--- a/opt_einsum/tests/test_contract.py
+++ b/opt_einsum/tests/test_contract.py
@@ -13,6 +13,7 @@ tests = [
     "a,->a",
     "ab,->ab",
     ",ab,->ab",
+    ",,->",
     # Test hadamard-like products
     "a,ab,abc->abc",
     "a,b,ab->ab",
diff --git a/opt_einsum/tests/test_paths.py b/opt_einsum/tests/test_paths.py
index c6fef4f..eb4b18b 100644
--- a/opt_einsum/tests/test_paths.py
+++ b/opt_einsum/tests/test_paths.py
@@ -58,6 +58,7 @@ path_scalar_tests = [
     ["ab,->ab", 1],
     [",a,->a", 2],
     [",,a,->a", 3],
+    [",,->", 2],
 ]
 
 

allow `backend=None` as shorthand for 'auto'
A couple of times I've be caught out (e.g. https://github.com/jcmgray/quimb/issues/130) that the special value for inferring the backend is not `backend=None`. Might be nice to allow both?

If so would just require a simple:
```python
if backend not in ("auto", None):
    return backend
```
in `parse_backend` of `contract.py`.
opt_einsum/tests/test_backends.py::test_auto_backend_custom_array_no_tensordot opt_einsum/tests/test_contract.py::test_compare[dp-,,->] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[dp-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[dp-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-,,->] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dp-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dynamic-programming-,,->-2]
opt_einsum/tests/test_backends.py::test_object_arrays_backend[ab,bc->ca] opt_einsum/tests/test_backends.py::test_object_arrays_backend[abc,bcd,dea] opt_einsum/tests/test_backends.py::test_object_arrays_backend[abc,def->fedcba] opt_einsum/tests/test_backends.py::test_object_arrays_backend[abc,bcd,df->fa] opt_einsum/tests/test_backends.py::test_object_arrays_backend[ijk,ikj] opt_einsum/tests/test_backends.py::test_object_arrays_backend[i,j->ij] opt_einsum/tests/test_backends.py::test_object_arrays_backend[ijk,k->ij] opt_einsum/tests/test_backends.py::test_object_arrays_backend[AB,BC->CA] opt_einsum/tests/test_contract.py::test_compare[auto-a,->a] opt_einsum/tests/test_contract.py::test_compare[auto-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[auto-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[auto-,,->] opt_einsum/tests/test_contract.py::test_compare[auto-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[auto-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[auto-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[auto-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[auto-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[auto-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[auto-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[auto-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[auto-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[auto-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[auto-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[auto-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[auto-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[auto-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[auto-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[auto-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[auto-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[auto-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[auto-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[auto-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[auto-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[auto-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[auto-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[auto-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[auto-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[auto-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[auto-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[auto-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[auto-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[auto-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[auto-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[auto-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[auto-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[auto-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[auto-ab,ab] opt_einsum/tests/test_contract.py::test_compare[auto-ab,ba] opt_einsum/tests/test_contract.py::test_compare[auto-abc,abc] opt_einsum/tests/test_contract.py::test_compare[auto-abc,bac] opt_einsum/tests/test_contract.py::test_compare[auto-abc,cba] opt_einsum/tests/test_contract.py::test_compare[auto-ab,bc] opt_einsum/tests/test_contract.py::test_compare[auto-ab,cb] opt_einsum/tests/test_contract.py::test_compare[auto-ba,bc] opt_einsum/tests/test_contract.py::test_compare[auto-ba,cb] opt_einsum/tests/test_contract.py::test_compare[auto-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[auto-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[auto-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[auto-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[auto-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[auto-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[auto-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[auto-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[auto-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[auto-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[auto-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[auto-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[auto-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[auto-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[auto-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[auto-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[auto-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[auto-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[auto-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[auto-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[auto-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[auto-hq-a,->a] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[auto-hq-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[auto-hq-,,->] opt_einsum/tests/test_contract.py::test_compare[auto-hq-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[auto-hq-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[auto-hq-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[auto-hq-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[auto-hq-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[auto-hq-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[auto-hq-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[auto-hq-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[auto-hq-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[auto-hq-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[auto-hq-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[auto-hq-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[auto-hq-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[auto-hq-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[auto-hq-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,ab] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,ba] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abc,abc] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abc,bac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abc,cba] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,bc] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,cb] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ba,bc] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ba,cb] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[auto-hq-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[auto-hq-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[auto-hq-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[auto-hq-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[auto-hq-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[auto-hq-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[auto-hq-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[auto-hq-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[auto-hq-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[auto-hq-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[auto-hq-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[auto-hq-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[optimal-a,->a] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[optimal-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[optimal-,,->] opt_einsum/tests/test_contract.py::test_compare[optimal-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[optimal-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[optimal-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[optimal-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[optimal-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[optimal-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[optimal-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[optimal-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[optimal-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[optimal-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[optimal-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[optimal-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[optimal-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[optimal-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[optimal-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[optimal-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[optimal-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[optimal-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[optimal-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[optimal-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[optimal-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[optimal-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,ab] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,ba] opt_einsum/tests/test_contract.py::test_compare[optimal-abc,abc] opt_einsum/tests/test_contract.py::test_compare[optimal-abc,bac] opt_einsum/tests/test_contract.py::test_compare[optimal-abc,cba] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,bc] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,cb] opt_einsum/tests/test_contract.py::test_compare[optimal-ba,bc] opt_einsum/tests/test_contract.py::test_compare[optimal-ba,cb] opt_einsum/tests/test_contract.py::test_compare[optimal-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[optimal-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[optimal-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[optimal-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[optimal-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[optimal-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[optimal-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[optimal-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[optimal-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[optimal-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[optimal-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[optimal-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[optimal-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[optimal-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[optimal-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[optimal-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[optimal-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[optimal-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[optimal-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[optimal-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[optimal-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[branch-all-a,->a] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[branch-all-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[branch-all-,,->] opt_einsum/tests/test_contract.py::test_compare[branch-all-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[branch-all-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[branch-all-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[branch-all-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[branch-all-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[branch-all-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[branch-all-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[branch-all-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[branch-all-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[branch-all-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[branch-all-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[branch-all-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[branch-all-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[branch-all-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[branch-all-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[branch-all-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[branch-all-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[branch-all-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[branch-all-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[branch-all-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[branch-all-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[branch-all-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,ab] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,ba] opt_einsum/tests/test_contract.py::test_compare[branch-all-abc,abc] opt_einsum/tests/test_contract.py::test_compare[branch-all-abc,bac] opt_einsum/tests/test_contract.py::test_compare[branch-all-abc,cba] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,bc] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,cb] opt_einsum/tests/test_contract.py::test_compare[branch-all-ba,bc] opt_einsum/tests/test_contract.py::test_compare[branch-all-ba,cb] opt_einsum/tests/test_contract.py::test_compare[branch-all-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[branch-all-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[branch-all-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[branch-all-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[branch-all-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[branch-all-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-all-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-all-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-all-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-all-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[branch-all-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[branch-all-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[branch-all-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[branch-all-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[branch-all-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[branch-all-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[branch-all-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[branch-all-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[branch-all-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[branch-all-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[branch-all-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[branch-2-a,->a] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[branch-2-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[branch-2-,,->] opt_einsum/tests/test_contract.py::test_compare[branch-2-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[branch-2-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[branch-2-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[branch-2-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[branch-2-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[branch-2-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[branch-2-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[branch-2-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[branch-2-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[branch-2-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[branch-2-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[branch-2-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[branch-2-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[branch-2-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[branch-2-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[branch-2-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[branch-2-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[branch-2-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[branch-2-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[branch-2-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[branch-2-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[branch-2-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,ab] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,ba] opt_einsum/tests/test_contract.py::test_compare[branch-2-abc,abc] opt_einsum/tests/test_contract.py::test_compare[branch-2-abc,bac] opt_einsum/tests/test_contract.py::test_compare[branch-2-abc,cba] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,bc] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,cb] opt_einsum/tests/test_contract.py::test_compare[branch-2-ba,bc] opt_einsum/tests/test_contract.py::test_compare[branch-2-ba,cb] opt_einsum/tests/test_contract.py::test_compare[branch-2-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[branch-2-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[branch-2-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[branch-2-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[branch-2-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[branch-2-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-2-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-2-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-2-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-2-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[branch-2-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[branch-2-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[branch-2-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[branch-2-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[branch-2-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[branch-2-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[branch-2-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[branch-2-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[branch-2-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[branch-2-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[branch-2-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[branch-1-a,->a] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[branch-1-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[branch-1-,,->] opt_einsum/tests/test_contract.py::test_compare[branch-1-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[branch-1-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[branch-1-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[branch-1-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[branch-1-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[branch-1-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[branch-1-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[branch-1-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[branch-1-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[branch-1-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[branch-1-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[branch-1-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[branch-1-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[branch-1-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[branch-1-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[branch-1-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[branch-1-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[branch-1-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[branch-1-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[branch-1-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[branch-1-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[branch-1-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,ab] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,ba] opt_einsum/tests/test_contract.py::test_compare[branch-1-abc,abc] opt_einsum/tests/test_contract.py::test_compare[branch-1-abc,bac] opt_einsum/tests/test_contract.py::test_compare[branch-1-abc,cba] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,bc] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,cb] opt_einsum/tests/test_contract.py::test_compare[branch-1-ba,bc] opt_einsum/tests/test_contract.py::test_compare[branch-1-ba,cb] opt_einsum/tests/test_contract.py::test_compare[branch-1-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[branch-1-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[branch-1-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[branch-1-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[branch-1-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[branch-1-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-1-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-1-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-1-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[branch-1-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[branch-1-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[branch-1-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[branch-1-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[branch-1-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[branch-1-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[branch-1-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[branch-1-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[branch-1-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[branch-1-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[branch-1-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[branch-1-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[greedy-a,->a] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[greedy-,,->] opt_einsum/tests/test_contract.py::test_compare[greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,ab] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,ba] opt_einsum/tests/test_contract.py::test_compare[greedy-abc,abc] opt_einsum/tests/test_contract.py::test_compare[greedy-abc,bac] opt_einsum/tests/test_contract.py::test_compare[greedy-abc,cba] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,bc] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,cb] opt_einsum/tests/test_contract.py::test_compare[greedy-ba,bc] opt_einsum/tests/test_contract.py::test_compare[greedy-ba,cb] opt_einsum/tests/test_contract.py::test_compare[greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[eager-a,->a] opt_einsum/tests/test_contract.py::test_compare[eager-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[eager-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[eager-,,->] opt_einsum/tests/test_contract.py::test_compare[eager-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[eager-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[eager-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[eager-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[eager-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[eager-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[eager-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[eager-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[eager-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[eager-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[eager-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[eager-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[eager-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[eager-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[eager-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[eager-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[eager-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[eager-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[eager-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[eager-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[eager-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[eager-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[eager-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[eager-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[eager-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[eager-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[eager-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[eager-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[eager-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[eager-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[eager-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[eager-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[eager-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[eager-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[eager-ab,ab] opt_einsum/tests/test_contract.py::test_compare[eager-ab,ba] opt_einsum/tests/test_contract.py::test_compare[eager-abc,abc] opt_einsum/tests/test_contract.py::test_compare[eager-abc,bac] opt_einsum/tests/test_contract.py::test_compare[eager-abc,cba] opt_einsum/tests/test_contract.py::test_compare[eager-ab,bc] opt_einsum/tests/test_contract.py::test_compare[eager-ab,cb] opt_einsum/tests/test_contract.py::test_compare[eager-ba,bc] opt_einsum/tests/test_contract.py::test_compare[eager-ba,cb] opt_einsum/tests/test_contract.py::test_compare[eager-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[eager-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[eager-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[eager-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[eager-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[eager-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[eager-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[eager-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[eager-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[eager-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[eager-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[eager-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[eager-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[eager-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[eager-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[eager-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[eager-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[eager-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[eager-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[eager-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[eager-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[opportunistic-a,->a] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[opportunistic-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[opportunistic-,,->] opt_einsum/tests/test_contract.py::test_compare[opportunistic-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[opportunistic-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[opportunistic-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[opportunistic-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[opportunistic-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[opportunistic-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[opportunistic-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[opportunistic-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[opportunistic-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[opportunistic-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[opportunistic-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[opportunistic-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[opportunistic-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[opportunistic-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[opportunistic-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,ab] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,ba] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abc,abc] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abc,bac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abc,cba] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,bc] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,cb] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ba,bc] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ba,cb] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[opportunistic-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[opportunistic-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[opportunistic-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[opportunistic-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[opportunistic-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[opportunistic-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[opportunistic-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[opportunistic-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[opportunistic-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[opportunistic-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[opportunistic-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[opportunistic-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[dp-a,->a] opt_einsum/tests/test_contract.py::test_compare[dp-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[dp-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[dp-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[dp-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[dp-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[dp-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[dp-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[dp-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[dp-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[dp-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[dp-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[dp-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[dp-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[dp-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[dp-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[dp-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[dp-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[dp-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[dp-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[dp-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[dp-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[dp-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[dp-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[dp-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[dp-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[dp-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[dp-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[dp-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[dp-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[dp-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[dp-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[dp-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[dp-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[dp-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[dp-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[dp-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[dp-ab,ab] opt_einsum/tests/test_contract.py::test_compare[dp-ab,ba] opt_einsum/tests/test_contract.py::test_compare[dp-abc,abc] opt_einsum/tests/test_contract.py::test_compare[dp-abc,bac] opt_einsum/tests/test_contract.py::test_compare[dp-abc,cba] opt_einsum/tests/test_contract.py::test_compare[dp-ab,bc] opt_einsum/tests/test_contract.py::test_compare[dp-ab,cb] opt_einsum/tests/test_contract.py::test_compare[dp-ba,bc] opt_einsum/tests/test_contract.py::test_compare[dp-ba,cb] opt_einsum/tests/test_contract.py::test_compare[dp-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[dp-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[dp-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[dp-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[dp-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[dp-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[dp-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[dp-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[dp-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[dp-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[dp-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[dp-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[dp-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[dp-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[dp-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[dp-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[dp-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[dp-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[dp-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[dp-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[dp-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-a,->a] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,ab] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,ba] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abc,abc] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abc,bac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abc,cba] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,bc] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,cb] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ba,bc] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ba,cb] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[dynamic-programming-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[random-greedy-a,->a] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-,,->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[random-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[random-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[random-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[random-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[random-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[random-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[random-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[random-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[random-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[random-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[random-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[random-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[random-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[random-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[random-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-a,->a] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,->ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-,,->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abcd,ad] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,ba] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abc,abc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abc,bac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abc,cba] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,bc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,cb] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ba,bc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ba,cb] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abcd,cd] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abcd,ab] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare[random-greedy-128-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_drop_in_replacement[a,->a] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,->ab] opt_einsum/tests/test_contract.py::test_drop_in_replacement[,ab,->ab] opt_einsum/tests/test_contract.py::test_drop_in_replacement[,,->] opt_einsum/tests/test_contract.py::test_drop_in_replacement[a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_drop_in_replacement[a,b,ab->ab] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_drop_in_replacement[acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_drop_in_replacement[acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_drop_in_replacement[cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_drop_in_replacement[bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_drop_in_replacement[chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_drop_in_replacement[bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,ab,c->] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,ab,c->c] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,cd,de->be] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_drop_in_replacement[eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_drop_in_replacement[dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_drop_in_replacement[bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_drop_in_replacement[dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_drop_in_replacement[fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abcd,ad] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_drop_in_replacement[baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_drop_in_replacement[bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_drop_in_replacement[fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_drop_in_replacement[efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,ab] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,ba] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abc,abc] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abc,bac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abc,cba] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,bc] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,cb] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ba,bc] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ba,cb] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abcd,cd] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abcd,ab] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abcd,cdef] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_drop_in_replacement[abcd,efdc] opt_einsum/tests/test_contract.py::test_drop_in_replacement[aab,bc->ac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ab,bcc->ac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[aab,bcc->ac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[baa,bcc->ac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[aab,ccb->ac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_drop_in_replacement[ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_drop_in_replacement[bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_drop_in_replacement[bb,ff,be->e] opt_einsum/tests/test_contract.py::test_drop_in_replacement[bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_drop_in_replacement[fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_drop_in_replacement[afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_drop_in_replacement[adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_drop_in_replacement[bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_drop_in_replacement[dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_drop_in_replacement[aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[auto-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[auto-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[auto-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[auto-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[auto-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[auto-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[auto-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[auto-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[auto-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[auto-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[auto-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[auto-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[auto-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[auto-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[auto-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[auto-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[auto-hq-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[optimal-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[branch-all-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[branch-2-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[branch-1-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[eager-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[eager-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[eager-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[eager-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[eager-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[eager-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[eager-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[eager-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[eager-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[eager-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[eager-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[eager-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[eager-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[eager-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[eager-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[eager-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[eager-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[eager-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[eager-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[eager-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[eager-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[eager-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[eager-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[eager-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[eager-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[eager-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[eager-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[eager-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[eager-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[eager-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[opportunistic-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[dp-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[dp-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[dp-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[dp-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[dp-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[dp-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[dp-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[dp-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[dp-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[dp-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[dp-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[dp-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[dp-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[dp-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[dp-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[dp-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[dp-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[dp-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[dp-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[dp-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dp-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[dp-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[dp-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[dp-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[dp-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[dp-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[dp-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[dp-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[dp-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[dynamic-programming-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-a,->a] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-,,->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,ba] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abc,abc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abc,bac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abc,cba] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,bc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,cb] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ba,bc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ba,cb] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_greek[random-greedy-128-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[auto-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[auto-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[auto-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[auto-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[auto-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[auto-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[auto-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[auto-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[auto-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[auto-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[auto-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[auto-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[auto-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[auto-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[auto-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[auto-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[auto-hq-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[optimal-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[branch-all-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[branch-2-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[branch-1-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[eager-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[eager-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[eager-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[eager-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[eager-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[eager-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[eager-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[eager-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[eager-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[eager-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[eager-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[eager-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[eager-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[eager-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[eager-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[eager-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[eager-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[eager-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[eager-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[eager-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[eager-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[eager-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[eager-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[eager-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[eager-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[eager-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[eager-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[eager-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[eager-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[eager-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[opportunistic-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[dp-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[dp-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[dp-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[dp-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[dp-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[dp-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[dp-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[dp-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[dp-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[dp-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[dp-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[dp-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[dp-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[dp-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[dp-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[dp-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[dp-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[dp-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[dp-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[dp-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dp-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[dp-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[dp-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[dp-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[dp-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[dp-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[dp-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[dp-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[dp-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[dynamic-programming-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-,,->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas[random-greedy-128-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[auto-hq-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[optimal-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-all-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-2-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[branch-1-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[eager-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[opportunistic-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dp-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[dynamic-programming-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-a,->a] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-,ab,->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-,,->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,ab,c->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abcd,ad] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,ba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abc,abc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abc,bac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abc,cba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ba,bc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ba,cb] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abcd,cd] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abcd,ab] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abcd,cdef] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-abcd,efdc] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-aab,bc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_compare_blas_greek[random-greedy-128-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_some_non_alphabet_maintains_order opt_einsum/tests/test_contract.py::test_printing opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-auto-hq-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-optimal-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-all-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-2-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-branch-1-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-eager-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-opportunistic-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dp-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-dynamic-programming-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-False-random-greedy-128-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-auto-hq-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-optimal-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-all-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-2-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-branch-1-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-eager-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-opportunistic-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dp-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-dynamic-programming-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[False-True-random-greedy-128-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-auto-hq-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-optimal-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-all-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-2-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-branch-1-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-eager-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-opportunistic-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dp-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-dynamic-programming-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-False-random-greedy-128-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-auto-hq-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-optimal-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-all-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-2-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-branch-1-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-eager-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-opportunistic-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dp-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-dynamic-programming-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-a,->a] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-,ab,->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-,,->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-a,b,ab->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,ab,c->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,ab,c->c] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,cd,de->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abcd,ad] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,ba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abc,abc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abc,bac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abc,cba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ba,bc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ba,cb] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abcd,cd] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abcd,ab] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abcd,cdef] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-abcd,efdc] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-aab,bc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-aab,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-baa,bcc->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-aab,ccb->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-bb,ff,be->e] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_contract_expressions[True-True-random-greedy-128-aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_expression_interleaved_input opt_einsum/tests/test_contract.py::test_contract_expression_with_constants[hbc,bdef,cdkj,ji,ikeh,lfo-constants0] opt_einsum/tests/test_contract.py::test_contract_expression_with_constants[bdef,cdkj,ji,ikeh,hbc,lfo-constants1] opt_einsum/tests/test_contract.py::test_contract_expression_with_constants[hbc,bdef,cdkj,ji,ikeh,lfo-constants2] opt_einsum/tests/test_contract.py::test_contract_expression_with_constants[hbc,bdef,cdkj,ji,ikeh,lfo-constants3] opt_einsum/tests/test_contract.py::test_contract_expression_with_constants[ijab,acd,bce,df,ef->ji-constants4] opt_einsum/tests/test_contract.py::test_contract_expression_with_constants[ab,cd,ad,cb-constants5] opt_einsum/tests/test_contract.py::test_contract_expression_with_constants[ab,bc,cd-constants6] opt_einsum/tests/test_contract.py::test_rand_equation[False-0-2-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-0-2-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-0-2-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-0-2-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-0-3-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-0-3-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-0-3-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-0-3-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-2-2-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-2-2-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-2-2-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-2-2-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-2-3-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-2-3-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-2-3-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-2-3-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-4-2-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-4-2-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-4-2-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-4-2-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-4-3-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-4-3-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[False-4-3-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[False-4-3-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-0-2-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-0-2-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-0-2-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-0-2-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-0-3-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-0-3-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-0-3-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-0-3-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-2-2-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-2-2-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-2-2-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-2-2-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-2-3-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-2-3-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-2-3-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-2-3-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-4-2-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-4-2-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-4-2-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-4-2-5-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-4-3-4-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-4-3-4-optimal] opt_einsum/tests/test_contract.py::test_rand_equation[True-4-3-5-greedy] opt_einsum/tests/test_contract.py::test_rand_equation[True-4-3-5-optimal] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[a,->a] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,->ab] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[,ab,->ab] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[,,->] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[a,ab,abc->abc] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[a,b,ab->ab] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ea,fb,gc,hd,abcd->efgh] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ea,fb,abcd,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abcd,ea,fb,gc,hd->efgh] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[acdf,jbje,gihb,hfac,gfac,gifabc,hfac0] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[acdf,jbje,gihb,hfac,gfac,gifabc,hfac1] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[cd,bdhe,aidb,hgca,gc,hgibcd,hgac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abhe,hidj,jgba,hiab,gab] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[bde,cdh,agdb,hica,ibd,hgicd,hiac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[chd,bde,agbc,hiad,hgc,hgi,hiad] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[chd,bde,agbc,hiad,bdi,cgh,agdb] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[bdhe,acad,hiab,agac,hibd] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,ab,c->] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,ab,c->c] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,ab,cd,cd->] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,ab,cd,cd->ac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,ab,cd,cd->cd] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,ab,cd,cd,ef,ef->] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,cd,ef->abcdef] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,cd,ef->acdf] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,cd,de->abcde] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,cd,de->be] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,bcd,cd->abcd] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,bcd,cd->abd] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[eb,cb,fb->cef] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[dd,fb,be,cdb->cef] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[bca,cdb,dbf,afc->] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[dcc,fce,ea,dbf->ab] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[fdf,cdd,ccd,afe->ae] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abcd,ad] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ed,fcd,ff,bcf->be] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[baa,dcf,af,cde->be] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[bd,db,eac->ace] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[fff,fae,bef,def->abd] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[efc,dbc,acf,fd->abe] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,ab] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,ba] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abc,abc] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abc,bac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abc,cba] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,bc] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,cb] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ba,bc] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ba,cb] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abcd,cd] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abcd,ab] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abcd,cdef] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abcd,cdef->feba] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[abcd,efdc] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[aab,bc->ac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ab,bcc->ac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[aab,bcc->ac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[baa,bcc->ac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[aab,ccb->ac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[aab,fa,df,ecc->bde] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[ecb,fef,bad,ed->ac] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[bcf,bbb,fbf,fc->] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[bb,ff,be->e] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[bcb,bb,fc,fff->] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[fbb,dfd,fc,fc->] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[afd,ba,cc,dc->bf] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[adb,bc,fa,cfc->d] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[bbd,bda,fc,db->acf] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[dba,ead,cad->bce] opt_einsum/tests/test_contract.py::test_linear_vs_ssa[aef,fbc,dca->bde] opt_einsum/tests/test_contract.py::test_contract_path_supply_shapes opt_einsum/tests/test_paths.py::test_size_by_dict opt_einsum/tests/test_paths.py::test_flop_cost opt_einsum/tests/test_paths.py::test_bad_path_option opt_einsum/tests/test_paths.py::test_explicit_path opt_einsum/tests/test_paths.py::test_path_optimal opt_einsum/tests/test_paths.py::test_path_greedy opt_einsum/tests/test_paths.py::test_memory_paths opt_einsum/tests/test_paths.py::test_path_edge_cases[greedy-eb,cb,fb->cef-order0] opt_einsum/tests/test_paths.py::test_path_edge_cases[branch-all-eb,cb,fb->cef-order1] opt_einsum/tests/test_paths.py::test_path_edge_cases[branch-2-eb,cb,fb->cef-order2] opt_einsum/tests/test_paths.py::test_path_edge_cases[optimal-eb,cb,fb->cef-order3] opt_einsum/tests/test_paths.py::test_path_edge_cases[dp-eb,cb,fb->cef-order4] opt_einsum/tests/test_paths.py::test_path_edge_cases[greedy-dd,fb,be,cdb->cef-order5] opt_einsum/tests/test_paths.py::test_path_edge_cases[branch-all-dd,fb,be,cdb->cef-order6] opt_einsum/tests/test_paths.py::test_path_edge_cases[branch-2-dd,fb,be,cdb->cef-order7] opt_einsum/tests/test_paths.py::test_path_edge_cases[optimal-dd,fb,be,cdb->cef-order8] opt_einsum/tests/test_paths.py::test_path_edge_cases[optimal-dd,fb,be,cdb->cef-order9] opt_einsum/tests/test_paths.py::test_path_edge_cases[dp-dd,fb,be,cdb->cef-order10] opt_einsum/tests/test_paths.py::test_path_edge_cases[greedy-bca,cdb,dbf,afc->-order11] opt_einsum/tests/test_paths.py::test_path_edge_cases[branch-all-bca,cdb,dbf,afc->-order12] opt_einsum/tests/test_paths.py::test_path_edge_cases[branch-2-bca,cdb,dbf,afc->-order13] opt_einsum/tests/test_paths.py::test_path_edge_cases[optimal-bca,cdb,dbf,afc->-order14] opt_einsum/tests/test_paths.py::test_path_edge_cases[dp-bca,cdb,dbf,afc->-order15] opt_einsum/tests/test_paths.py::test_path_edge_cases[greedy-dcc,fce,ea,dbf->ab-order16] opt_einsum/tests/test_paths.py::test_path_edge_cases[branch-all-dcc,fce,ea,dbf->ab-order17] opt_einsum/tests/test_paths.py::test_path_edge_cases[branch-2-dcc,fce,ea,dbf->ab-order18] opt_einsum/tests/test_paths.py::test_path_edge_cases[optimal-dcc,fce,ea,dbf->ab-order19] opt_einsum/tests/test_paths.py::test_path_edge_cases[dp-dcc,fce,ea,dbf->ab-order20] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-hq-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-hq-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-hq-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-hq-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[auto-hq-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[optimal-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[optimal-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[optimal-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[optimal-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[optimal-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-all-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-all-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-all-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-all-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-all-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-2-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-2-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-2-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-2-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-2-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-1-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-1-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-1-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-1-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[branch-1-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[greedy-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[greedy-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[greedy-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[greedy-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[greedy-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[eager-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[eager-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[eager-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[eager-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[eager-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[opportunistic-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[opportunistic-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[opportunistic-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[opportunistic-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[opportunistic-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dp-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dp-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dp-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dp-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dynamic-programming-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dynamic-programming-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dynamic-programming-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[dynamic-programming-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-,,->-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-128-a,->a-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-128-ab,->ab-1] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-128-,a,->a-2] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-128-,,a,->a-3] opt_einsum/tests/test_paths.py::test_path_scalar_cases[random-greedy-128-,,->-2] opt_einsum/tests/test_paths.py::test_optimal_edge_cases opt_einsum/tests/test_paths.py::test_greedy_edge_cases opt_einsum/tests/test_paths.py::test_dp_edge_cases_dimension_1 opt_einsum/tests/test_paths.py::test_dp_edge_cases_all_singlet_indices opt_einsum/tests/test_paths.py::test_custom_dp_can_optimize_for_outer_products opt_einsum/tests/test_paths.py::test_custom_dp_can_optimize_for_size opt_einsum/tests/test_paths.py::test_custom_dp_can_set_cost_cap opt_einsum/tests/test_paths.py::test_custom_dp_can_set_minimize[flops-663054-18900-path0] opt_einsum/tests/test_paths.py::test_custom_dp_can_set_minimize[size-1114440-2016-path1] opt_einsum/tests/test_paths.py::test_custom_dp_can_set_minimize[write-983790-2016-path2] opt_einsum/tests/test_paths.py::test_custom_dp_can_set_minimize[combo-973518-2016-path3] opt_einsum/tests/test_paths.py::test_custom_dp_can_set_minimize[limit-983832-2016-path4] opt_einsum/tests/test_paths.py::test_custom_dp_can_set_minimize[combo-256-983790-2016-path5] opt_einsum/tests/test_paths.py::test_custom_dp_can_set_minimize[limit-256-983832-2016-path6] opt_einsum/tests/test_paths.py::test_dp_errors_when_no_contractions_found opt_einsum/tests/test_paths.py::test_can_optimize_outer_products[greedy] opt_einsum/tests/test_paths.py::test_can_optimize_outer_products[branch-2] opt_einsum/tests/test_paths.py::test_can_optimize_outer_products[branch-all] opt_einsum/tests/test_paths.py::test_can_optimize_outer_products[optimal] opt_einsum/tests/test_paths.py::test_can_optimize_outer_products[dp] opt_einsum/tests/test_paths.py::test_large_path[2] opt_einsum/tests/test_paths.py::test_large_path[3] opt_einsum/tests/test_paths.py::test_large_path[26] opt_einsum/tests/test_paths.py::test_large_path[52] opt_einsum/tests/test_paths.py::test_large_path[116] opt_einsum/tests/test_paths.py::test_large_path[300] opt_einsum/tests/test_paths.py::test_custom_random_greedy opt_einsum/tests/test_paths.py::test_custom_branchbound opt_einsum/tests/test_paths.py::test_branchbound_validation opt_einsum/tests/test_paths.py::test_parallel_random_greedy opt_einsum/tests/test_paths.py::test_custom_path_optimizer opt_einsum/tests/test_paths.py::test_custom_random_optimizer opt_einsum/tests/test_paths.py::test_optimizer_registration