#include <bits/stdc++.h>
using namespace std;
const int maxN = 4 + 2;
int n = 4;
int a[maxN];
vector<pair<char, int> > res;
inline int PRE(int v) { return (v == 1) ? 4 : v - 1; }
inline int NEXT(int v) { return (v == 4) ? 1 : v + 1; }
inline void change() {
  int pos = -1;
  for (int i = 1; i <= 4; i++)
    if (a[i] > 2) pos = i;
  if (pos == -1) return;
  while (a[pos] > 1) {
    if (a[pos] % 2 == 1) {
      res.push_back(make_pair('+', pos));
      res.push_back(make_pair('/', pos));
      a[pos] = (a[pos] + 1) / 2;
    } else {
      int next = NEXT(pos);
      res.push_back(make_pair('+', next));
      res.push_back(make_pair('/', pos));
      a[pos] /= 2;
      a[NEXT(next)]++;
    }
  }
  change();
}
int main() {
  cin >> a[1] >> a[2] >> a[3] >> a[4];
  while (a[1] > 1) {
    if (a[1] % 2 == a[2] % 2) {
      if (a[1] % 2 == 1) res.push_back(make_pair('+', 1));
      res.push_back(make_pair('/', 1));
      a[1] = (a[1] + 1) / 2;
      a[2] = (a[2] + 1) / 2;
    } else {
      res.push_back(make_pair('+', 2));
      a[2]++;
      a[3]++;
    }
  }
  while (a[4] > 1) {
    if (a[4] % 2 == a[3] % 2) {
      if (a[4] % 2 == 1) res.push_back(make_pair('+', 3));
      res.push_back(make_pair('/', 3));
      a[4] = (a[4] + 1) / 2;
      a[3] = (a[3] + 1) / 2;
    } else {
      res.push_back(make_pair('+', 2));
      a[2]++;
      a[3]++;
    }
  }
  while (a[2] != 1 && a[3] != 1) {
    if (a[2] % 2 == 1) {
      res.push_back(make_pair('+', 1));
      res.push_back(make_pair('/', 1));
      a[2] = (a[2] + 1) / 2;
    }
    if (a[3] % 2 == 1) {
      res.push_back(make_pair('+', 3));
      res.push_back(make_pair('/', 3));
      a[3] = (a[3] + 1) / 2;
    }
    if (a[2] % 2 == 0 && a[3] % 2 == 0) {
      res.push_back(make_pair('/', 2));
      a[2] /= 2;
      a[3] /= 2;
    }
  }
  change();
  int pos = -1;
  for (int i = 1; i <= 4; i++)
    if (a[i] == 2) pos = i;
  if (pos != -1) {
    res.push_back(make_pair('+', PRE(pos)));
    res.push_back(make_pair('+', pos));
    res.push_back(make_pair('/', PRE(pos)));
    res.push_back(make_pair('/', pos));
  }
  for (int i = 0; i < (int)res.size(); i++)
    cout << res[i].first << res[i].second << endl;
  return 0;
}
