Refactor interfaces