moving some logic to item pipeline