Refactoring
Improve comments
Better feedback when exceptions raise
Refactoring
Improve functions expansion