refactor DataRequest to shrink preloading-generated code