restructure and reduce