n, m = map(int, input().split())
d = [tuple(map(int, input().split())) for _ in range(n)]
d.sort()
ans = 0
for ai, bi in d:
    if m <= bi:
        ans += ai * m
        break
    ans += ai * bi
    m -= bi
print(ans) n, m = map(int, input().split()) n map(int, input().split()) map int input().split() ().split () input split m tuple(map(int, input().split())) for _ in range(n) for _ in range(n) _ range(n) range n for _ in range(n) tuple(map(int, input().split())) tuple map(int, input().split()) map int input().split() ().split () input split d = [tuple(map(int, input().split())) for _ in range(n)] d [tuple(map(int, input().split())) for _ in range(n)] d.sort() d.sort d sort ans = 0 ans 0 for ai, bi in d:
    if m <= bi:
        ans += ai * m
        break
    ans += ai * bi
    m -= bi ai bi d if m <= bi:
        ans += ai * m
        break
     m <= bi m bi ans += ai * m ans ai * m ai m break ans += ai * bi ans ai * bi ai bi m -= bi m bi print(ans) print ans ans += ai * m ai * m ans m -= bi bi m ans += ai * bi ai * bi ans m = map(int, input().split()) map(int, input().split()) m ans = 0 0 ans n, m = map(int, input().split()) map(int, input().split()) n d = [tuple(map(int, input().split())) for _ in range(n)] [tuple(map(int, input().split())) for _ in range(n)] d
n, m = map(int, input().split())
d = [tuple(map(int, input().split())) for _ in range(n)]
d.sort()
ans = 0
for ai, bi in d:
    if m <= bi:
        ans += ai * m
        break
    ans += ai * bi
    m -= bi
print(ans)
