better example and explanation