remove databuffer, use std::array