from collections import defaultdict import sys def main(): sys.setrecursionlimit(100000) input = lambda: sys.stdin.readline()[:-1] N = int(input()) num = defaultdict(bool) ans = [] while N > 1: if N % 2: n = N * 3 if bin(n - 1).count("1") == 1 and not num[n - 1]: N = n - 1 ans.append("-") num[n - 1] = True elif bin(n + 1).count("1") == 1 and not num[n + 1]: N = n + 1 ans.append("+") num[n + 1] = True elif not num[n - 1]: N = n - 1 ans.append("-") num[n - 1] = True else: N = n + 1 ans.append("+") num[n + 1] = True else: N //= 2 ans.append("/") print(len(ans)) print("".join(ans)) if not __debug__: f = open(sys.argv[1], "r") sys.stdin = f try: sys.set_int_max_str_digits(100000) except AttributeError: pass main()