SubDirectProductDecomposition

same as above