added reader functionality