Mess and refactoring
Last mess