reimplement after broken by "take str per line instead of full inline iter" commit this also resolves #22