using continous buffer