added some more explanation