redefined interface