#include #include #include #include using namespace std; #define ll long long #define vec vector ll min(ll a, ll b){ return (a < b ? a : b); } ll max(ll a, ll b){ return (a > b ? a : b); } int main(){ ll n_desks, lab_pairs, queries,tmp, tmp2; cin >> n_desks >> lab_pairs >> queries; vec labs_desks; labs_desks.reserve(n_desks); vec labs_monitors; labs_monitors.reserve(n_desks); while(n_desks--){ cin >> tmp; labs_desks.push_back(tmp); } n_desks = labs_desks.size(); while(n_desks--){ cin >> tmp; labs_monitors.push_back(tmp); } vector adj = vector(labs_desks.size()); while(lab_pairs--){ cin >> tmp >> tmp2; adj[tmp-1].push_back(tmp2); adj[tmp2-1].push_back(tmp); } string cmd, subcmd; ll par1, par2; while(queries--){ cin >> cmd >> par1; if(cmd == "add"){ cin >> subcmd >> par2; (subcmd == "desk" ? labs_desks : labs_monitors)[par2-1] += par1; } else{ ll sum_monitors = labs_monitors[par1-1]; ll sum_desks= labs_desks[par1-1]; for(ll lab : adj[par1-1]){ sum_monitors+= labs_monitors[lab-1]; sum_desks+=labs_desks[lab-1]; } if(sum_desks == sum_monitors){ cout << "same" << endl; } else if(sum_desks < sum_monitors){ cout << "monitors" << endl; } else { cout << "desks" << endl; } } } return 0; }