nicer example, better explanation