Calling cloneforRevision would save you several lines of code here