refactor OAM interfaces