编程题
### 问题描述
小齐准备开车进行一次横穿国家的旅行。为了让她的牛儿们也能一同享受旅程,她决定租一辆大卡车并将牛儿们带上。
卡车有一个大油箱,最多可以容纳 $ G $ 单位的燃油。不幸的是,卡车的油耗很高:每行驶一单位距离就消耗一单位的燃油。小齐的旅程总共有 $ D $ 单位的距离。
因为小齐知道她可能需要在旅途中多次停下来加油,所以她列了一张所有 $ N $ 个沿途加油站的清单。对于每个加油站 $ i $,她记录了距离起点的距离 $ X_i $,以及每单位燃油的售价 $ Y_i $($ 1 \leq Y_i \leq 1,000,000 $)。
给定这些信息,以及小齐出发时恰好携带的 $ B $ 单位燃油($ 0 \leq B \leq D $),请确定小齐到达目的地所需的最小燃油费用。如果她无法到达目的地,请输出 $-1$。请注意,这个问题的答案可能不适合标准的 $32$ 位整数。
### 输入格式
第 $1$ 行:四个用空格分隔的整数:$ N, G, B, D $。
第 $2$ 行至第 $1+N $行:每行包含两个整数 $ X_i $ 和 $ Y_i $,描述第 $ i $ 个加油站。
### 输出格式
一个整数,表示小齐到达目的地所需的最小燃油费用;如果无法到达目的地,请输出 $-1$。
### 样例输入
```
4 10 3 17
2 40
9 15
5 7
10 12
```
### 样例输出
```
174
```
### 评测数据规模
$1 \leq G \leq 1,000,000$,$1 \leq D \leq 1,000,000,000$,$1 \leq N \leq 50,000$,$0 \leq X_i \leq D$。