Added the program infrastructure