#include <bits/stdc++.h>
using namespace std;
vector<vector<int> > v;
int t[999];
vector<pair<long, long> > g;
void bfs(int s) {
  t[s] = 1;
  queue<int> q;
  q.push(s);
  while (!q.empty()) {
    int u = q.front();
    q.pop();
    for (int i = 0; i < v[u].size(); i++) {
      int k = v[u][i];
      if (t[k] == 0) {
        t[k] = 1;
        q.push(k);
      }
    }
  }
}
int main() {
  int n;
  cin >> n;
  int p = 0;
  v.resize(n + 1);
  for (int i = 0; i < n; i++) {
    long q, a, b;
    cin >> q >> a >> b;
    memset(t, 0, sizeof t);
    if (q == 1) {
      p++;
      g.push_back(make_pair(a, b));
      for (int j = 0; j < g.size() - 1; j++) {
        if ((a < g[j].first && g[j].first < b) ||
            (a < g[j].second && g[j].second < b)) {
          v[1 + j].push_back(p);
        }
        if ((a > g[j].first && g[j].second > a) ||
            (b < g[j].second && g[j].first < b)) {
          v[p].push_back(j + 1);
        }
      }
    } else {
      bfs(a);
      if (t[b])
        cout << "YES" << endl;
      else
        cout << "NO" << endl;
    }
  }
  return 0;
}
