#include <iostream>
using namespace std;
int main(void){
    
    //変数：10進数｢ tenNumber ｣, ４進数｢ foueNumber ｣と置く
    int tenNumber, foueNumber[1000000];
    
    //繰り返し：10進数｢ tenNumber ｣の値が｢ -1 ｣になるまで繰り返し
    while(cin >> tenNumber, tenNumber != -1){
        
        //変数：余りの個数｢ count ｣と置く
        int count = 0;
        
        //繰り返し：余りを求める繰り返し
        while(1){
            
            //計算：余りと商を求めている
            foueNumber[count] = tenNumber % 4;
            tenNumber /= 4;
            
            //条件：余りが無かったら終了
            if(tenNumber == 0) break;
            
            //計算：上の計算より余りがまだあるので余りの数が１個足す
            count++;
        }
        
        //出力：配列の逆から表示する　⇒　ポイント：余りは逆から表示する
        for(int i = count; i >= 0; i--){
            cout << foueNumber[i] << ( (i != 0) ? "" : "\n" );
        }
    }
    
}

