new angle on tackling the program almost works