#include using namespace std; using ll=long long; bool E[2][300001]; int main(){ cin.tie(nullptr); ios::sync_with_stdio(false); ll N,K[2],a; cin>>N>>K[0]>>K[1]; for(int t=0;t<2;t++){ for(int i=0;i>a; E[t][a-1]=1; } } queue Q; vector> D(2,vector(N,1e18)); for(int t=0;t<2;t++){ for(int i=0;i=N)continue; if(D[t][v]<=D[t][p]+1)continue; D[t][v]=D[t][p]+1; Q.push(v); } } } ll M=1e9; for(int i=0;i>QQ; for(int i=0;i>S>>T; S--;T--; ll an=min({abs(S-T),D[0][S]+D[0][T],D[1][S]+D[1][T],D[0][S]+D[1][T]+M,D[1][S]+D[0][T]+M}); cout<