func_code_string: #include <bits/stdc++.h>   using namespace std;   long long gcd(long long a, long long b) {     if (b == 0) return a;     return gcd(b, a % b);   }   vector<pair<long long, int> > v;   int main() {     long long a, b, d;     cin >> a;     cin >> b;     d = a * b / gcd(a, b);     if (a < b) {       for (int i = 0; i * a <= d; i++) {         v.push_back(make_pair(i * a, 1));       }       for (int i = 0; i * b <= d; i++) {         v.push_back(make_pair(i * b, 0));       }     } else {       for (int i = 0; i * a <= d; i++) {         v.push_back(make_pair(i * a, 0));       }       for (int i = 0; i * b <= d; i++) {         v.push_back(make_pair(i * b, 1));       }     }     sort(v.begin(), v.end());     long long s1, s2;     s1 = 0;     s2 = 0;     for (int i = 0; i < (int)v.size() - 1; i++) {       if (v[i + 1].second == 0) {         s1 += v[i + 1].first - v[i].first;       } else         s2 += v[i + 1].first - v[i].first;     }     if (a > b) {       if (s1 > s2) printf( Dasha n );       if (s1 < s2) printf( Masha n );     } else {       if (s1 < s2) printf( Dasha n );       if (s1 > s2) printf( Masha n );     }     if (s1 == s2) printf( Equal n );     return 0;   }   