Refactoring y algunos fixes