Olson agrees to new four-year deal