updated txt reader