groundwork for getting line numbers and more