orignalItems -> originalItems
implemented infinite looping
cleanup
cleanup