James Shields has agreed to a four-year deal with the San Diego Padres worth as much as $78 million.

According to a source, Shields had another offer on the table worth at least $80 million over four seasons.