I ended up having to write a custom reverse for each loop function and what I did was remove the instances then you get the index and also remove it from the array, since it is in reverse the index being removed will not effect the array being shrunk.