implement addItem