Merck to take $2.9 billion charge on hepatitis C drug