some changes. ideas details and comments added