import sys from collections import deque def main(): N = int(sys.stdin.readline()) if N == 0: print("{}") return required = set() queue = deque([N]) required.add(N) while queue: current = queue.popleft() i = 0 bits = [] while (1 << i) <= current: if (current >> i) & 1: bits.append(i) i += 1 for bit in bits: if bit not in required: required.add(bit) queue.append(bit) sorted_n = sorted(required) memo = {} for n in sorted_n: i = 0 bits = [] while (1 << i) <= n: if (n >> i) & 1: bits.append(i) i += 1 bits.sort() elements = [memo[bit] for bit in bits] elements_str = ",".join(elements) memo[n] = "{" + elements_str + "}" print(memo[N]) if __name__ == "__main__": main()