added basic functionality
added updated comments