added benchmark
add example test