#include <bits/stdc++.h>
using namespace std;
double const EPS = 1e-12, PI = acos(-1);
const int N = 1e6 + 9, M = 1e7 + 9, OO = 1e9 + 7, MOD = 1e9 + 7,
          MOD2 = 998244353;
const long long inf = 1e18;
int arr[N], type[N], l[N], r[N];
int main() {
  cout << fixed << setprecision(12), ios::sync_with_stdio(false),
      cin.tie(nullptr), cout.tie(nullptr);
  int n, q, m;
  cin >> n >> q >> m;
  for (int i = 1; i <= n; ++i) cin >> arr[i];
  for (int i = 0; i < q; ++i) cin >> type[i] >> l[i] >> r[i];
  int idx;
  for (int i = 0; i < m; ++i) {
    cin >> idx;
    for (int j = q - 1; j >= 0; --j) {
      if (idx >= l[j] && idx <= r[j]) {
        if (type[j] == 1) {
          if (l[j] == idx)
            idx = r[j];
          else
            --idx;
        } else {
          idx = r[j] - (idx - l[j]);
        }
      }
    }
    cout << arr[idx] << ' ';
  }
  return 0;
}
