fix typo
change syntax
refactor
add tests and readme