add examples and documentation