final revised