#include <bits/stdc++.h>
using namespace std;
const int mod = 1e9 + 7;
const int INF = 1 << 29;
int a[5055][5055];
int main() {
  memset(a, 0, sizeof a);
  a[0][0] = a[0][1] = a[1][0] = 1;
  a[1][1] = -1;
  int r = 2;
  int c = 2;
  while (r < 1055) {
    for (int i = 0; i < r / 2; ++i) {
      for (int j = 0; j < c; ++j) {
        a[i][j + c] = -a[i][j];
      }
    }
    for (int i = r / 2; i < r; ++i) {
      for (int j = 0; j < c; ++j) {
        a[i][j + c] = a[i][j];
      }
    }
    for (int i = 0; i < r; ++i) {
      for (int j = 0; j < c; ++j) {
        a[i + r][j] = a[i][j];
      }
    }
    for (int i = 0; i < r; ++i) {
      for (int j = c; j < c * 2; ++j) {
        a[i + r][j] = -a[i][j];
      }
    }
    r <<= 1;
    c <<= 1;
  }
  int n;
  scanf("%d", &n);
  n = 1 << n;
  for (int i = 0; i < n; ++i) {
    for (int j = 0; j < n; ++j) {
      if (a[i][j] > 0)
        putchar('+');
      else
        putchar('*');
    }
    putchar('\n');
  }
  return 0;
}
