functions! functions everywhere!