- added documentation with sample program