Scanf.scanf "%d" (fun n -> let cd = Array.init n (fun _ -> Scanf.scanf " %d %d" (fun c d -> c, d)) in let z = 1_000_000_007 in let ( +@) a b = (a + b) mod z in let ( *@) a b = (a * b) mod z in let ans = Array.fold_left (fun acc (c, d) -> acc +@ (c + 1) / 2 *@ d) 0 cd in Printf.printf "%d\n" ans )