My modifs
Refactor whole code