//#include #include using namespace std; //using namespace atcoder; using ll = long long; #define all(A) A.begin(),A.end() using vll = vector; #define rep(i, n) for (long long i = 0; i < (long long)(n); i++) using Graph = vector>; Graph G; vll dist; vector seen; set> S; ll gcd(ll(a), ll(b)) { ll c = a; while (a % b != 0) { c = a % b; a = b; b = c; } return b; } int main() { ll N; cin>>N; vector> Q(N); cout<>A>>B; Q[i]=make_tuple(double(A)/double(B),A,B); } sort(all(Q)); reverse(all(Q)); rep(i,N){ cout<(Q[i])<<" "<(Q[i])<