We need to wrap all this in try/catch/after to prevent missed decrements.  Move the try/catch up from `index/7` and into here.