***FINAL*** comments and small changes ***FINAL***