added comments for demo purposes