added solutions to lib and modified spec