make it as a library