#include <bits/stdc++.h>
using namespace std;
long long n, k, l, r, m, p;
char s[9];
int main() {
  for (n = rand() % 19; --n;) rand();
  for (n = rand() % 17; --n;) rand();
  for (n = rand() % 13; --n;) rand();
  scanf("%I64d%I64d", &n, &k);
  if (n < 33)
    while (1) {
      k = 1 + rand() % n, printf("%I64d %I64d\n", k, k), fflush(stdout),
      scanf("%s", s);
      if (s[0] == 'Y' || s[0] == 'B') exit(0);
    }
  for (l = 1, p = r = n, m = (l + r) >> 1; l < r;
       p = r - l + 1, m = (l + r) >> 1) {
    printf("%I64d %I64d\n", l, m), fflush(stdout), scanf("%s", s);
    if (l == m && s[0] == 'Y') exit(0);
    if (s[0] == 'B') exit(0);
    if (s[0] == 'Y')
      r = m;
    else
      l = m + 1;
    l -= k, r += k, l = max(1LL, l), r = min(r, n);
    if (r - l + 1 >= p) break;
  }
  while (1) {
    m = l + rand() % (r - l + 1), printf("%I64d %I64d\n", m, m), fflush(stdout),
    scanf("%s", s);
    if (s[0] == 'Y' || s[0] == 'B') exit(0);
    for (l -= k, r += k, l = max(1LL, l), r = min(r, n), p = (r - l + 1),
                         m = (l + r) >> 1;
         l < r; p = r - l + 1, m = (l + r) >> 1) {
      printf("%I64d %I64d\n", l, m), fflush(stdout), scanf("%s", s);
      if (l == m && s[0] == 'Y') exit(0);
      if (s[0] == 'B') exit(0);
      if (s[0] == 'Y')
        r = m;
      else
        l = m + 1;
      l -= k, r += k, l = max(1LL, l), r = min(r, n);
      if (r - l + 1 >= p) break;
    }
  }
  exit(0);
}
