ForwardOne

forwardOne - new ip forwardOne - same ip

Result is that using new IP each time averages about half the efficiency of using the same IP.

DeleteOne

deleteOne - new ip deleteOne - same ip

Two things tried here: if you start from the end of a line, it makes no difference with delete whether you use a new or existing IP. Delete itself is the costly part. It also makes no difference whether I used "replaceData" or Ranges in the deleteOne implementation.

However, if you start deleting from the middle rather than the end of the line, IP (new or existing) performs twice as well.

1234567890

1234567890