update usage & example
add comments