clean up move next and RingBuffer for more throughput