remittance.cpp:7:17: error: expected initializer before 'mod'
7 | const long logn mod = 2000000000000021ll;
| ^~~
remittance.cpp: In constructor 'Modint::Modint(long long int)':
remittance.cpp:20:22: error: 'mod' was not declared in this scope; did you mean 'modf'?
20 | while (_x >= mod) {
| ^~~
| modf
remittance.cpp:24:19: error: 'mod' was not declared in this scope; did you mean 'modf'?
24 | _x += mod;
| ^~~
| modf
remittance.cpp: In constructor 'Modint::Modint(__int128)':
remittance.cpp:29:19: error: 'mod' was not declared in this scope; did you mean 'modf'?
29 | if (_x >= mod || _x <= -mod) {
| ^~~
| modf
remittance.cpp:33:19: error: 'mod' was not declared in this scope; did you mean 'modf'?
33 | _x += mod;
| ^~~
| modf
remittance.cpp: In member function 'Modint Modint::operator^(long long int) const':
remittance.cpp:56:31: error: conversion from 'int' to 'Modint' is ambiguous
56 | Modint tmp = x, res = 1;
| ^
remittance.cpp:28:5: note: candidate: 'Modint::Modint(__int128)'
28 | Modint(__int128_t _x) {
| ^~~~~~
remittance.cpp:19:5: note: candidate: 'Modint::Modint(long long int)'
19 | Modint(long long _x) {
| ^~~~~~
remittance.cpp: In function 'void solve()':
remittance.cpp:77:20: error: conversion from 'int' to 'Modint' is ambiguous
77 | Modint denom = 1;
| ^
remittance.cpp:28:5: note: candidate: 'Modint::Modint(__int128)'
28 | Modint(__int128_t _x) {
| ^~~~~~
remittance.cpp:19:5: note: candidate: 'Modint::Modint(long long int)'
19 | Modint(long long _x) {
| ^~~~~~
remittance.cpp:82:22: error: conversion from 'int' to 'const Modint' is ambiguous
82 | denom = (denom - 1) ^ (mod - 2);
| ^
remittance.cpp:28:5: note: candidate: 'Modint::Modint(__int128)'
28 | Modint(__int128_t _x) {
| ^~~~~~
remittance.cpp:19:5: note: candidate: 'Modint::Modint(long long int)'
19 | Modint(long long _x) {
| ^~~~~~
remittance.cpp:40:36: note: initializing argument 1 of 'Modint Modint::operator-(const Modint&) const'
40 | Modint operator-(const Modint& other) const {
| ~~~~~~~~~~~~~~^~~~~
remittance.cpp:82:28: error: 'mod' was not declared in this scope; did you mean 'modf'?
82 | denom = (denom - 1) ^ (mod - 2);
| ^~~
| modf
remittance.cpp:86:23: error: conversion from 'int' to 'Modint' is ambiguous
86 | Modint xmod = 0;
| ^
remittance.cpp:28:5: note: candidate: 'Modint::Modint(__int128)'
28 | Modint(__int128_t _x) {
| ^~~~~~
remittance.cpp:19:5: note: candidate: 'Modint::Modint(long long int)'
19 | Modint(long long _x) {
| ^~~~~~
remittance.cpp:88:37: error: conversion from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'const Modint' is ambiguous
88 | xmod = xmod + xmod + b[j] - a[j];
| ^
remittance.cpp:28:5: note: candidate: 'Modint::Modint(__int128)'
28 | Modint(__int128_t _x) {
| ^~~~~~
remittance.cpp:19:5: note: candidate: 'Modint::Modint(long long int)'
19 | Modint(long long _x) {
| ^~~~~~
remittance.cpp:37:36: note: initializing argument 1 of 'Modint Modint::operator+(const Modint&) const'
37 | Modint operator+(const Modint& other) const {
| ~~~~~~~~~~~~~~^~~~~
remittance.cpp:91:37: error: conversion from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'const Modint' is ambiguous
91 | xmod = xmod + xmod + b[j] - a[j];
| ^
remittance.cpp:28:5: note: candidate: 'Modint::Modint(__int128)'
28 | Modint(__int128_t _x) {
| ^~~~~~
remittance.cpp:19:5: note: candidate: 'Modint::Modint(long long int)'
19 | Modint(long long _x) {
| ^~~~~~
remittance.cpp:37:36: note: initializing argument 1 of 'Modint Modint::operator+(const Modint&) const'
37 | Modint operator+(const Modint& other) const {
| ~~~~~~~~~~~~~~^~~~~
remittance.cpp:93:25: error: call of overloaded 'Modint(int)' is ambiguous
93 | xmod = (Modint(0) - xmod) * denom;
| ^
remittance.cpp:28:5: note: candidate: 'Modint::Modint(__int128)'
28 | Modint(__int128_t _x) {
| ^~~~~~
remittance.cpp:19:5: note: candidate: 'Modint::Modint(long long int)'
19 | Modint(long long _x) {
| ^~~~~~
remittance.cpp:14:8: note: candidate: 'constexpr Modint::Modint(const Modint&)'
14 | struct Modint {
| ^~~~~~