make the code nicer