A little bit more refactor