added more examples and functionality