added a little explaination