Implemented Program 1 and 2