11 Whole program

Warning

Not done yet