ウォーターデブンに住む建築家のデブンキーさんのもとに、古い大病院を改装する仕事の依頼が舞い込んできました。  国によっては忌み数(いみかず)として嫌われる数字を部屋番号に用いたくない人がいます(日本では 4 と 9 が有名です)。しかし、この病院の部屋番号は忌み数に関係なく、1 から順番に付けられていました。  それが気になったデブンキーさんは、機材やベッドの入れ替えが全て終わる前にウォーターデブンの忌み数である「4」と「6」を除いた数字で部屋番号を付けなおしてしまいました。しかし、入れ替え作業は旧部屋番号で計画していたので、残りの作業を確実に行うには旧部屋番号を新部屋番号に変換する必要があります。計算が苦手なデブンキーさんはこのことに気づいて愕然としています。  そんなデブンキーさんのために、旧部屋番号を入力とし対応する新部屋番号を出力するプログラムを作成してください。  15 番目までの部屋番号の対応表は以下のようになります。  旧部屋番号|  1|  2|  3|  4|  5|  6|  7|  8 |  9 |  10 |  11|  12|  13|  14|  15   ---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---   新部屋番号|  1|  2|  3|  5 | 7|  8|  9|  10|  11|  12|  13|  15|  17|  18 | 19
while True:
    n = int(input())
    if n == 0:
        break
    cnt = 1
    for i in range(1, n+1):
        tmp = str(cnt)
        while '4' in tmp or '6' in tmp:
            if '4' in tmp and '6' in tmp:
                l = min(tmp.find('4'), tmp.find('6'))
                r = len(tmp[l+1:])
                cnt += 1*pow(10, r)
            elif '4' in tmp:
                l = tmp.find('4')
                r = len(tmp[l+1:])
                cnt += 1*pow(10, r)
            else:
                l = tmp.find('6')
                r = len(tmp[l+1:])
                cnt += 1*pow(10, r)
            tmp = str(cnt)
        cnt += 1
    print(cnt-1)
while True:
    n = int(input())
    if n == 0:
        break
    print(str(oct(n)[2:]).translate(str.maketrans("4567", "5789")))