Generalize input for readers
Add simple decode support