optimize reader