cleanup, better structure part2