index out of bounds; value 4 out of bound 3