handle delete and update events more gracefully back to 0 base