#include <bits/stdc++.h>
using namespace std;
const int maxn = 5e5 + 10;
char s1[maxn];
char s2[maxn];
int next2[maxn];
int next3[maxn];
int next4[maxn];
int next5[maxn];
int L[maxn];
int R[maxn];
int n, m, k;
int main() {
  cin >> n >> m >> k;
  cin >> (s1 + 1) >> (s2 + 1);
  next2[1] = 0;
  for (int i = 2; i <= m; ++i) {
    int t = next2[i - 1];
    while (t && s2[t + 1] != s2[i]) t = next2[t];
    if (s2[t + 1] == s2[i]) t++;
    next2[i] = t;
  }
  next3[m] = 0;
  for (int i = m - 1; i >= 1; --i) {
    int t = next3[i + 1];
    while (t && s2[m - t] != s2[i]) t = next3[m - t + 1];
    if (s2[m - t] == s2[i]) t++;
    next3[i] = t;
  }
  next4[0] = 0;
  for (int i = 1; i <= n; ++i) {
    int t = next4[i - 1];
    while (t && s2[t + 1] != s1[i]) t = next2[t];
    if (s2[t + 1] == s1[i]) t++;
    next4[i] = t;
  }
  next5[n + 1] = 0;
  for (int i = n; i >= 1; --i) {
    int t = next5[i + 1];
    while (t && s2[m - t] != s1[i]) t = next3[m - t + 1];
    if (s2[m - t] == s1[i]) t++;
    next5[i] = t;
  }
  for (int i = 1; i <= n; ++i)
    if (k >= m && next4[i] == m) {
      if (i <= k) {
        cout << "Yes" << endl;
        cout << 1 << " " << k + 1 << endl;
      } else if (i - m < k && i > n - k)
        continue;
      else if (i <= n - k) {
        cout << "Yes" << endl;
        cout << i - k + 1 << " " << n - k + 1 << endl;
      } else if (i - m > n - k) {
        cout << "Yes" << endl;
        cout << 1 << " " << k + 1 << endl;
      } else {
        cout << "Yes" << endl;
        cout << 1 << " " << i - m + 1 << endl;
      }
      exit(0);
    }
  for (int i = 1; i <= m; ++i) L[i] = n + 1;
  for (int i = 1; i <= m; ++i) R[i] = 0;
  for (int i = k; i <= n; ++i)
    if (L[next4[i]] == n + 1) L[next4[i]] = i;
  for (int i = n - k + 1; i >= 1; --i)
    if (R[next5[i]] == 0) R[next5[i]] = i;
  for (int i = m; i >= 1; --i)
    if (next2[i]) L[next2[i]] = min(L[i], L[next2[i]]);
  for (int i = m; i >= 1; --i)
    if (next3[m - i + 1]) R[next3[m - i + 1]] = max(R[i], R[next3[m - i + 1]]);
  for (int i = 1; i < m; ++i)
    if (L[i] != n + 1 && R[m - i] != 0 && L[i] < R[m - i] && i <= k &&
        m - i <= k) {
      cout << "Yes" << endl;
      cout << L[i] - k + 1 << " " << R[m - i] << endl;
      exit(0);
    }
  cout << "No" << endl;
  return 0;
}
