DRY cin input_line (and test replacement of non-DRY usage)