completed c2-refactor interfaces