why the unnecessary empty lines