3.3.1. readline structure draft