Add buffered data classes

Check it and the concept in background
Why do you need this lines 85-89?