implement IndexedList