#include "bits/stdc++.h"
#include "Alice.h"
using namespace std;
#define ff first
#define ss second
#define all(v) v.begin(), v.end()
#define ll long long
#define pb push_back
#define pii pair<int, int>
#define pli pair<ll, int>
#define pll pair<ll, ll>
#define tr(i, c) for(auto i = c.begin(); i != c.end(); ++i)
#define wr puts("----------------")
#define mm make_pair
template<class T>bool umin(T& a,T b){if(a>b){a=b;return 1;}return 0;}
template<class T>bool umax(T& a,T b){if(a<b){a=b;return 1;}return 0;}
vector<pii> Alice(){
ll x=setN(5000);
vector<pii> adj;
for(int i = 2; i <= 5000; ++i)
adj.pb({x%(i-1)+1, i});
return adj;
}
#include "bits/stdc++.h"
using namespace std;
#define ff first
#define ss second
#define all(v) v.begin(), v.end()
#define ll long long
#define pb push_back
#define pii pair<int, int>
#define pli pair<ll, int>
#define pll pair<ll, ll>
#define tr(i, c) for(auto i = c.begin(); i != c.end(); ++i)
#define wr puts("----------------")
#define mm make_pair
template<class T>bool umin(T& a,T b){if(a>b){a=b;return 1;}return 0;}
template<class T>bool umax(T& a,T b){if(a<b){a=b;return 1;}return 0;}
ll Bob(vector<pii> adj){
ll ans=0, lc=1;
tr(it, adj){
int u=it->ff-1, v=it->ss-1;
while(ans%v!=u)
ans+=lc;
lc=(lc*v)/__gcd(1ll*v, lc);
}
return ans;
}