draft implementation
simple usage doc