circular buffer in go