#include <bits/stdc++.h>
const long long int mrx = 1e6 + 5, M = 1e9 + 7;
long long int mx = -1e18 - 1, mn = 1e18 + 1;
using namespace std;
char a[mrx];
long long int n, m, k, l, r, c, d, type;
bool flag;
int main() {
  ios_base::sync_with_stdio(NULL);
  cin.tie(NULL);
  cin >> n >> m >> k;
  cin >> a;
  for (int i = 0; i < m + k; i++) {
    cin >> type >> l >> r;
    l--;
    r--;
    if (type == 1) {
      cin >> c;
      memset(a + l, c + '0', r - l + 1);
    } else if (type == 2) {
      cin >> d;
      if ((r - d) - l != r - (l + d)) {
        cout << "NO\n";
      } else {
        flag = memcmp(a + l, a + l + d, r - (l + d) + 1);
        if (flag == false) {
          cout << "YES\n";
        } else {
          cout << "NO\n";
        }
      }
    }
  }
  return 0;
}
