#include <bits/stdc++.h>
using namespace std;
struct el {
  long long hp, dmg, i;
};
bool comp(el a, el b) { return (a.hp - a.dmg) > (b.hp - b.dmg); }
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  long long n, a, b, i = 0;
  cin >> n >> a >> b;
  el sol[n];
  for (i = (0); i < (n); i++) {
    cin >> sol[i].hp >> sol[i].dmg;
    sol[i].i = i;
  }
  sort(sol, sol + n, comp);
  long long sum = 0;
  for (i = (0); i < (n); i++) {
    if (i < b)
      sum += max(sol[i].hp, sol[i].dmg);
    else
      sum += sol[i].dmg;
  }
  if (b == 0) {
    cout << sum << '\n';
    return 0;
  }
  long long x = (1LL << a);
  long long res = sum;
  for (i = (0); i < (n); i++) {
    long long temp = res;
    if (i < b) {
      temp -= max(sol[i].hp, sol[i].dmg);
      temp += (sol[i].hp) * x;
      sum = max(sum, temp);
    } else {
      temp -= sol[i].dmg;
      temp += sol[i].hp * x;
      temp -= max(sol[b - 1].hp, sol[b - 1].dmg);
      temp += sol[b - 1].dmg;
      sum = max(sum, temp);
    }
  }
  cout << sum << '\n';
  return 0;
}
