#include <bits/stdc++.h>
using namespace std;
vector<int> prefix_function(string t, string s, int k) {
  int m = (int)s.size();
  s = t + "?" + s;
  int n = (int)s.length();
  vector<int> pi(n);
  for (int i = 1; i < n; ++i) {
    int j = pi[i - 1];
    while (j > 0 && s[i] != s[j]) j = pi[j - 1];
    if (s[i] == s[j]) ++j;
    pi[i] = j;
  }
  if (k >= (int)t.size()) {
    for (int i = t.size() + 1, ii = 1; i < n; i++, ii++) {
      if (pi[i] == t.size()) {
        if (m - ii >= k) {
          cout << "Yes" << endl;
          int x = ii - k + 1, y = ii + 1;
          if (x <= 0) y += 1 - x, x += 1 - x;
          cout << x << " " << y << endl;
          exit(0);
        }
        int jj = ii - (int)t.size();
        if (jj >= k) {
          cout << "Yes" << endl;
          int x = jj - k + 1, y = jj + 1;
          if (y > m - k + 1) x += m - k + 1 - y, y += m - k + 1 - y;
          cout << x << " " << y << endl;
          exit(0);
        }
      }
    }
  }
  vector<int> occ(t.size() + 1, -1);
  for (int i = t.size() + k; i < n; i++) {
    int j = pi[i];
    int idx = i - t.size() - 1;
    while (occ[j] == -1) {
      occ[j] = idx;
      if (j == 0) break;
      j = pi[j - 1];
    }
  }
  return occ;
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  int n, m, k;
  cin >> n >> m >> k;
  string s, t;
  cin >> s >> t;
  vector<int> L = prefix_function(t, s, k);
  reverse(t.begin(), t.end());
  reverse(s.begin(), s.end());
  vector<int> R = prefix_function(t, s, k);
  for (int i = 0; i < R.size(); i++) {
    if (R[i] == -1) continue;
    R[i] = n - 1 - R[i];
  }
  for (int l = 0; l <= m; l++) {
    int r = m - l;
    if (L[l] == -1 or R[r] == -1 or l > k or r > k) continue;
    if (L[l] < R[r]) {
      cout << "Yes" << endl;
      cout << L[l] - k + 1 + 1 << " " << R[r] + 1 << endl;
      exit(0);
    }
  }
  cout << "No" << endl;
  return 0;
}
