A litle more refactor