Josh Hartnett was 22 in 40 Days and 40 Nights when he played the character 'Matt Sulivan'.
That was over 22 years ago in 2002.
Today he is 45, and has starred in 46 movies in total, 30 of those since 40 Days and 40 Nights was released.
In 40 Days and 40 Nights, I think Josh Hartnett looks: