updated item interface