#include <stdio.h>
#include <string.h>

#define max 100

//2021/7/3-12:40
//2021/7/3-15:15

char is_error(char* s)
{
   if (((s[0] == 'j') && (s[1] == 'o')) ||
       ((s[0] == 'J') && (s[1] == 'O')))
   {
      return 1;
   }

   char c = s[0];
   if ((c != 'J') &&
       (c != 'Q') &&
       (c != 'K') &&
       (c != 'A') &&
       ((c < '1') || (c > '9')))
   {
      return 1;
   }

   if ((s[0] == '1') && (s[1] != '0'))
   {
      return 1;
   }

   return 0;
}

int get_val(char c)
{
   int v;

   switch (c)
   {
      case 'J':
      {
         v = 11;
         break;
      }
      case 'Q':
      {
         v = 12;
         break;
      }
      case 'K':
      {
         v = 13;
         break;
      }
      case 'A':
      {
         v = 1;
         break;
      }
      default:
         v = c - '0';
         break;
   }

   return v;
}

int create_table(int* table, int* expr)
{
   int v[13];
   int i, j, k, l, m, n;
   int s[4];
   int ss[4][4];
   int cnt;
   cnt = 0;


   for (i = 0; i < 13; i++)
   {
      v[i] = i + 1;
   }

   for (i = 0; i < 13; i++)
   {
      //memset(ss, 0, 4 * 4 * sizeof(int));

      for (j = 0; j < 13; j++)
      {
         s[0] = v[i] + v[j];
         s[1] = v[i] - v[j];
         s[2] = v[i] * v[j];
         s[3] = v[i] / v[j];

         for (k = 0; k < 13; k++)
         {
            ss[0][0] = s[0] + v[k];
            ss[0][1] = s[0] - v[k];
            ss[0][2] = s[0] * v[k];
            ss[0][3] = s[0] / v[k];

            ss[1][0] = s[1] + v[k];
            ss[1][1] = s[1] - v[k];
            ss[1][2] = s[1] * v[k];
            ss[1][3] = s[1] / v[k];

            ss[2][0] = s[2] + v[k];
            ss[2][1] = s[2] - v[k];
            ss[2][2] = s[2] * v[k];
            ss[2][3] = s[2] / v[k];

            ss[3][0] = s[3] + v[k];
            ss[3][1] = s[3] - v[k];
            ss[3][2] = s[3] * v[k];
            ss[3][3] = s[3] / v[k];

            for (l = 0; l < 13; l++)
            {
               for (m = 0; m < 4; m++)
               {
                  for (n = 0; n < 4; n++)
                  {
                     if (ss[m][n] + v[l] == 24)
                     {
                        expr[cnt] = (m << 4) | (n << 2) | 0;
                        table[cnt++] = (v[i] << 12) | (v[j] << 8) | (v[k] << 4) | v[l];
                     }
                     else if (ss[m][n] - v[l] == 24)
                     {
                        expr[cnt] = (m << 4 | n << 2) | 1;
                        table[cnt++] = (v[i] << 12) | (v[j] << 8) | (v[k] << 4) | v[l];
                     }
                     if (ss[m][n] * v[l] == 24)
                     {
                        expr[cnt] = (m << 4 | n << 2) | 2;
                        table[cnt++] = (v[i] << 12) | (v[j] << 8) | (v[k] << 4) | v[l];
                     }
                     if (ss[m][n] / v[l] == 24)
                     {
                        expr[cnt] = (m << 4) | (n << 2) | 3;
                        table[cnt++] = (v[i] << 12) | (v[j] << 8) | (v[k] << 4) | v[l];
                     }
                  }
               }
            }
         }
      }
   }

   return cnt;
}

int check_table(int* table, int size, int v)
{
   int i;

   for (i = 0; i < size; i++)
   {
      if (table[i] == v)
      {
         return i;
      }
   }
   return -1;
}

int is_24(int* table, int size, int* c)
{
   int i;
   int j = -1;
   int v;
   int a[24][4] = {
      {0,1,2,3},
      {0,1,3,2},
      {0,2,1,3},
      {0,2,3,1},
      {0,3,1,2},
      {0,3,2,1},
      {1,0,2,3},
      {1,0,3,2},
      {1,2,0,3},
      {1,2,3,0},
      {1,3,0,2},
      {1,3,2,0},
      {2,0,1,3},
      {2,0,3,1},
      {2,1,0,3},
      {2,1,3,0},
      {2,3,0,1},
      {2,3,1,0},
      {3,0,1,2},
      {3,0,2,1},
      {3,1,0,2},
      {3,1,2,0},
      {3,2,0,1},
      {3,2,1,0}
   };

   for (i = 0; (i < 24) && (j == -1); i++)
   {
      v = (c[a[i][0]] << 12) | (c[a[i][1]] << 8) | (c[a[i][2]] << 4) | c[a[i][3]];
      j = check_table(table, size, v);
   }

   return j;
}

int main()
{
   char e[4] = {'+', '-', '*', '/'};
   char cvt[16] = {' ', 'A', '2','3','4','5','6','7','8','9','1','J','Q','K'};

   int c[4];
   char s[max];
   int i = 0, j, k, n;
   int table[20000];
   int expr[20000];
   int size;
   int v;
   size = create_table(table, expr);

   while (scanf("%s", s) != EOF)
   {
      if (is_error(s))
      {
         printf("ERROR");
         return 0;
      }

      c[i++] = get_val(s[0]);
   }


   i = is_24(table, size, c);

   if (i> 0)
   {
      v = table[i];

      for (j = 0, n = 0; j < 4; j++)
      {
         k = (v >> 4 * (3 - j)) & 0xf;
         s[n++] = cvt[k];
         if (k == 10)
         {
            s[n++] = '0';
         }
         s[n++] = e[(expr[i] >> 2 * (2 - j)) & 0x3];
         //check '*'
      }
      s[n - 1] = 0;
      printf(s);
   }
   else
   {
      printf("NONE");
   }



   return 0;
}