Refactoring to v1 interface