Refacto and clean