add comment and excption