Can you turn this into block-based enumeration so that it tracks the index for us?