Improve mechanic validation
Refactor appointment code