refactor User and Contact