Roche Agrees to Buy Genentech for $46.8 Billion