experimenting with the buffer protocol