#include <iostream>
#include <utility>

template <std::size_t... Is>
auto print_sword(int n, std::index_sequence<Is...>) {
    static constexpr char sp[] = "                                                                                                                                                                                                                                                                                                                        ";
    static constexpr char ds[] = "----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------";
    
    using expander = int[];
    (void)expander{0, (
        (static_cast<int>(Is) + 1 <= 3 * n - 1) ? (
            [&]() {
                int i = static_cast<int>(Is) + 1;
                int left_spaces = (i <= n) ? (n - i + 1) / 2 :
                                  (i < 2 * n) ? (i - n + 1) / 2 :
                                  (3 * n - i) / 2;
                
                if (i == n) {
                    if (n == 1) {
                        std::cout.write("*\n", 2);
                    } else {
                        std::cout.put('*');
                        std::cout.write(ds, 2 * n - 3);
                        std::cout.write("*\n", 2);
                    }
                } else if (i > 1 && i < 2 * n - 1) {
                    int P = (n + 1) / 2;
                    int inner = P - left_spaces - 1;
                    std::cout.write(sp, left_spaces);
                    std::cout.put('*');
                    std::cout.write(sp, inner);
                    std::cout.put('|');
                    std::cout.write(sp, inner);
                    std::cout.write("*\n", 2);
                } else {
                    std::cout.write(sp, left_spaces);
                    std::cout.write("*\n", 2);
                }
            }(), 0
        ) : 0
    )...};
}

auto main() -> int {
    std::ios_base::sync_with_stdio(false);
    std::cin.tie(nullptr);
    
    int n;
    if (std::cin >> n) {
        print_sword(n, std::make_index_sequence<300>{});
    }
    
    return 0;
}