refactored shoplist