add tests
additional documentation
add attribute documentation