add unit test
add additional required libs