Reviewed and submitted

Reviewed, updated comments and submitted