The Arizona Diamondbacks agreed to a $40 million, four-year contract Thursday with Martin Prado just a week after acquiring the former All-Star infielder in the trade that sent Justin Upton to Atlanta. Prado made the All-Star team as the Braves' second baseman in 2010 but is slated to play third base for the Diamondbacks.