but we probably shouldn't do a ReadAll, because we shouldn't trust the input to be small?