fix. 'do' functions need line paramter