#include <bits/stdc++.h>
using namespace std;
#define int long long int
#define double long double
const int M = 1000000007;
const int N = 3e5+9;
const int INF = 2e9+1;
const int MAXN = 100000;
const int LINF = 2000000000000000001;
//_ ***************************** START Below *******************************
vector<int> a;
vector<int> consistency(int n ){
vector<int> ans(a);
int s = 0, e = 0;
while(e<n & ans[e] != 0){
s++;
e++;
}
while(e<n){
if(a[e] != 0){
swap(ans[e], ans[s]);
s++;
}
e++;
}
return ans;
}
vector<int> practice(int n){
return {};
}
void solve() {
int n;
cin >> n;
a.resize(n);
for(int i=0; i<n; i++) cin >> a[i];
auto ans = consistency(n);
for(auto& it : ans) cout << it << " "; cout << endl;
// auto p = practice(n);
// cout << "Practice : ";
// for(auto& it : p) cout << it << " "; cout << endl;
}
int32_t main() {
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
int t = 1;
while (t--) {
solve();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50ICAgICAgICAgICAgICBsb25nIGxvbmcgaW50CiNkZWZpbmUgZG91YmxlICAgICAgICAgICBsb25nIGRvdWJsZQoKCmNvbnN0IGludCBNID0gMTAwMDAwMDAwNzsKY29uc3QgaW50IE4gPSAzZTUrOTsKY29uc3QgaW50IElORiA9IDJlOSsxOwpjb25zdCBpbnQgTUFYTiA9IDEwMDAwMDsKY29uc3QgaW50IExJTkYgPSAyMDAwMDAwMDAwMDAwMDAwMDAxOwoKLy9fICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFNUQVJUIEJlbG93ICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCgoKdmVjdG9yPGludD4gYTsKCnZlY3RvcjxpbnQ+IGNvbnNpc3RlbmN5KGludCBuICl7Cgl2ZWN0b3I8aW50PiBhbnMoYSk7CgkKICAgIGludCBzID0gMCwgZSA9IDA7CiAgICB3aGlsZShlPG4gJiBhbnNbZV0gIT0gMCl7CiAgICAgICAgcysrOwogICAgICAgIGUrKzsKICAgIH0KICAgIHdoaWxlKGU8bil7CiAgICAgICAgCiAgICAgICAgaWYoYVtlXSAhPSAwKXsKICAgICAgICAgICAgc3dhcChhbnNbZV0sIGFuc1tzXSk7CiAgICAgICAgICAgIHMrKzsKICAgICAgICB9CiAgICAgICAgZSsrOwogICAgfQogICAgCiAgICByZXR1cm4gYW5zOwp9CgoKCgoKCgoKCnZlY3RvcjxpbnQ+IHByYWN0aWNlKGludCBuKXsKCQoJcmV0dXJuIHt9OwkKfQoKCgoKdm9pZCBzb2x2ZSgpIHsKCglpbnQgbjsKCWNpbiA+PiBuOwoJYS5yZXNpemUobik7Cglmb3IoaW50IGk9MDsgaTxuOyBpKyspIGNpbiA+PiBhW2ldOwoKCWF1dG8gYW5zID0gY29uc2lzdGVuY3kobik7Cglmb3IoYXV0byYgaXQgOiBhbnMpIGNvdXQgPDwgaXQgPDwgIiAiOyBjb3V0IDw8IGVuZGw7CgkKCS8vIGF1dG8gcCA9IHByYWN0aWNlKG4pOwoJLy8gY291dCA8PCAiUHJhY3RpY2UgOiAiOwoJLy8gZm9yKGF1dG8mIGl0IDogcCkgY291dCA8PCBpdCA8PCAiICI7IGNvdXQgPDwgZW5kbDsKCQp9CgoKCgoKaW50MzJfdCBtYWluKCkgewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CgogICAgaW50IHQgPSAxOwogICAgd2hpbGUgKHQtLSkgewogICAgICAgIHNvbHZlKCk7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0=