Refactoring to make it works as God will want it to be