Refactored, added internal id for item