feat: full refacto