Amgen to buy Onyx Pharmaceuticals for $10.4 billion