code to the interface and use `List<Item>`