func_code_string: #include <bits/stdc++.h>   using namespace std;   const long long M = (long long)1e9 + 7;   const double PI = 2 * acos(0.0);   const long long oo = 1e17 + 100;   const string DIGITS =  0123456789 , alph =  abcdefghijklmnopqrstuvwxyz ,                ALPH =  ABCDEFGHIJKLMNOPQRSTUVWXYZ ;   const long long N = (long long)1e5 + 200;   vector<long long> g[N];   signed main() {     ios::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     long long n, x, y;     cin >> n >> x >> y;     vector<long long> l(n), r(n);     vector<pair<long long, pair<long long, long long> > > a(2 * n);     for (long long i = 0; i < n; i++) {       cin >> l[i] >> r[i];       a[2 * i] = {l[i], {0, i}};       a[2 * i + 1] = {r[i], {1, i}};     }     sort(a.begin(), a.end());     stack<long long> past;     long long p = 0, sum = 0;     for (long long i = 0; i < 2 * n; i++) {       if (a[i].second.first == 0) {         p++;         long long v = a[i].second.second;         if (past.empty()) {           sum = (sum + ((x + (y * (r[v] - l[v]) % M)) % M)) % M;         } else {           long long t = past.top();           past.pop();           if ((l[v] - t) * y < x)             sum = (sum + ((r[v] - t) * y % M)) % M;           else             sum = (sum + ((x + (y * (r[v] - l[v]) % M)) % M)) % M;         }       } else {         p--;         long long v = a[i].second.second;         past.push(r[v]);       }     }     cout << sum;   }   