Teva Will Buy Allergan Generics for $40.5 Billion