#include <cstdio>
#include <iostream>
#include <algorithm>
#include <sstream>
#include <string>
using namespace std;

template<class T, class U> T lexical_cast(const U& from)
{ T to; stringstream ss; ss << from; ss >> to; return to; }

int get(int n, int index) {
    char buf[16];
    sprintf(buf, "%05d", n);
    string s = lexical_cast<string>(buf);
    return s[4 - index] - '0';
}

const char bit[10] = {
    0b01111001,
    0b01110101,
    0b01101101,
    0b01011101,
    0b00111101,
    0b01111010,
    0b01110110,
    0b01101110,
    0b01011110,
    0b00111110
};

char board[5];

int main() {
    bool first = true;
    for(int num; cin >> num; ) {
        if(first == false) putchar('\n');
        else first = false;

        for(int i = 0; i < 5; i++) {
            board[i] = bit[get(num, i)];
        }
        for(int row = 0; row < 7; row++) {
            for(int i = 4; i >= 0; i--) {
                putchar((board[i] & (1 << row)) ? '*' : ' ');
            }
            putchar('\n');
            if(row == 1) puts("=====");
        }
    }
}