Several changes
Refactor