Refine API
Refactoring