a lot more readable