Throws exception when invalid year<3000