decomposition, re-use and starting comparator