#include <bits/stdc++.h>
using namespace std;
string s;
int n, k;
int dp[1005][3005];
int ans[1000][3005];
int32_t main() {
  cin >> n >> k;
  memset(dp, 0, sizeof dp);
  cin >> s;
  dp[0][k] = 1;
  for (int i = 1; i <= n; i++) {
    if (s[i - 1] == 'W') {
      for (int j = 1; j < 2 * k; j++) {
        if (dp[i - 1][j]) {
          dp[i][j + 1] = 1;
          ans[i][j + 1] = 1;
        }
      }
    } else if (s[i - 1] == 'L') {
      for (int j = 1; j < 2 * k; j++) {
        if (dp[i - 1][j]) {
          dp[i][j - 1] = 1;
          ans[i][j - 1] = 2;
        }
      }
    } else if (s[i - 1] == 'D') {
      for (int j = 1; j < 2 * k; j++) {
        if (dp[i - 1][j]) {
          dp[i][j] = 1;
          ans[i][j] = 3;
        }
      }
    } else {
      for (int j = 1; j < 2 * k; j++) {
        if (dp[i - 1][j]) {
          if (j + 1 <= 2 * k) {
            dp[i][j + 1] = 1;
            ans[i][j + 1] = 1;
          }
        }
        if (dp[i - 1][j]) {
          if (j - 1 >= 0) {
            dp[i][j - 1] = 1;
            ans[i][j - 1] = 2;
          }
        }
        if (dp[i - 1][j]) {
          dp[i][j] = 1;
          ans[i][j] = 3;
        }
      }
    }
  }
  if (!dp[n][0] && !dp[n][2 * k]) {
    cout << "NO";
    return 0;
  } else {
    map<int, char> m;
    m[1] = 'W';
    m[2] = 'L';
    m[3] = 'D';
    string res = "";
    if (dp[n][0]) {
      int temp = 0;
      for (int i = n; i > 0; i--) {
        if (s[i - 1] == 'W') {
          res += 'W';
          temp--;
        } else if (s[i - 1] == 'L') {
          res += 'L';
          temp++;
        } else if (s[i - 1] == 'D') {
          res += 'D';
        } else {
          int w = ans[i][temp];
          if (w == 1)
            temp--;
          else if (w == 2)
            temp++;
          res += m[w];
        }
      }
      reverse(res.begin(), res.end());
      cout << res << endl;
      return 0;
    } else {
      int temp = 2 * k;
      for (int i = n; i > 0; i--) {
        if (s[i - 1] == 'W') {
          res += 'W';
          temp--;
        } else if (s[i - 1] == 'L') {
          res += 'L';
          temp++;
        } else {
          int w = ans[i][temp];
          if (w == 1)
            temp--;
          else if (w == 2)
            temp++;
          res += m[w];
        }
      }
      reverse(res.begin(), res.end());
      cout << res << endl;
    }
  }
  return 0;
}
