added todos
Refactored