split and clean up