working docs and test
working docs and test