turned item into a class instead of a struct, fixed code to use item