#include <bits/stdc++.h>
using namespace std;
int modA[1000001], modB[1000001], digit[1000001], i, j, n, mod, mult, a, b;
char c;
int main() {
  i = 0;
  while (true) {
    scanf("%c", &c);
    if (c == '\n') break;
    digit[i++] = c - '0';
  }
  n = i;
  scanf("%d %d", &a, &b);
  mod = 0;
  for (i = 0; i < n; i++) {
    modA[i] = (mod * 10 + digit[i]) % a;
    mod = modA[i];
  }
  mod = 0;
  mult = 1;
  for (i = n - 1; i > 0; i--) {
    mult %= b;
    modB[i] = (digit[i] * mult + mod) % b;
    if (modB[i] == 0 && modA[i - 1] == 0 && digit[i] != 0) break;
    mult *= 10;
    mod = modB[i];
  }
  if (i == 0)
    printf("NO\n");
  else {
    printf("YES\n");
    for (j = 0; j < i; j++) printf("%d", digit[j]);
    printf("\n");
    while (i < n) printf("%d", digit[i++]);
    printf("\n");
  }
  return 0;
}
