finished intro function