edits to section 3 and added new section 2 giving rurv and grurv algorithms