Refactor
Optimization