adding the library source code