A rough prototype of the program, debug is needed