Adding solution and test program.