#include <bits/stdc++.h>
#include "highway.h"
using namespace std;
#define MAXN 105
int n,m,a,b;
vector<pair<int,int>> adj[MAXN];
pair<int,int> parent[MAXN];
int dist[MAXN];
void dfs(int node,int pret,int edge,int depth)
{
parent[node]={pret,edge};dist[node]=depth;
for (pair<int,int> sled:adj[node])
{
if (sled.first!=pret) dfs(sled.first,node,sled.second,depth+1);
}
}
void find_pair(int N, std::vector<int> U, std::vector<int> V, int A, int B)
{
n=N,m=(int)U.size(),a=A,b=B;
for (int i=0;i<m;i++) {adj[U[i]].push_back({V[i],i});adj[V[i]].push_back({U[i],i});}
dfs(0,-1,-1,0);vector<int> state;
for (int i=0;i<m;i++) state.push_back(0);
int distancija=((long long)ask(state))/a;
vector<int> possibilities;
for (int node=1;node<n;node++)
{
if (dist[node]==distancija) possibilities.push_back(node);
}
for (int node:possibilities)
{
int current=node;while (current!=0) {state[parent[current].second]=1;current=parent[current].first;}
long long ans=ask(state);if (ans==(long long)b*distancija) {answer(0,node);return;}
current=node;while (current!=0) {state[parent[current].second]=0;current=parent[current].first;}
}
}