implemented data_storage that will be used instead read_result_t