The Decomposition Algorithm