#include <bits/stdc++.h>
using namespace std;
int main() {
  int a[30], b[30] = {0};
  char str1[200], str2[2000], c[200];
  long long n, m;
  scanf("%s%s", str1, str2);
  if (str1[0] == str2[0] && str1[0] == '0' && strlen(str1) == 1 &&
      strlen(str2) == 1) {
    printf("OK\n");
    return 0;
  }
  n = str1[0] - '0';
  for (int i = 1; i < strlen(str1); i++) {
    n = n * 10 + str1[i] - '0';
  }
  strcpy(c, str2);
  reverse(c, c + strlen(str2));
  int len2 = strlen(str2);
  for (int i = strlen(str2) - 1; i >= 0; i--) {
    if (c[i] != '0')
      break;
    else if (c[i] == '0')
      c[i] = '\0', len2--;
  }
  reverse(c, c + len2);
  if (len2 != strlen(str2)) {
    printf("WRONG_ANSWER\n");
    return 0;
  }
  m = c[0] - '0';
  for (int i = 1; i < len2; i++) {
    m = m * 10 + c[i] - '0';
  }
  int cnt = 0;
  while (n) {
    b[n % 10]++;
    n /= 10;
    cnt++;
  }
  long long ans = 0;
  for (int i = 1; i <= cnt; i++) {
    for (int j = 0; j < 10; j++) {
      if (b[j] != 0) {
        a[i] = j;
        b[j]--;
        break;
      }
    }
  }
  int flag;
  for (int i = 1; i <= cnt; i++) {
    if (a[i] == 0)
      continue;
    else if (a[i] != 0) {
      flag = i;
      ans = a[i];
      break;
    }
  }
  for (int i = 1; i <= cnt; i++) {
    if (i == flag) continue;
    ans = ans * 10 + a[i];
  }
  if (ans != m) {
    printf("WRONG_ANSWER\n");
  } else {
    printf("OK\n");
  }
  return 0;
}
