add lib
add coverage task