persistent buffer