Refactored readers