change interface not to be redundant.