abstracted bufferLoader