Title: Applying structure to input driven programs