Refactor out the interactive form