#include <bits/stdc++.h>
using namespace std;
void fun(int j, vector<int> &v)
{
int ptr = v.size() -2 ;
for(int i=ptr ; i>j ; i--)
{
v[i+1] = v[i];
}
}
void duplicateZeros(vector<int> &v)
{
int pointer = 0;
for(int i=0 ;i < v.size() ;i++)
{
if(v[i] == 0)
{
fun(i, v);
v[++i] =0;
}
}
}
int main() {
// your code goes here
int n; cin >> n;
vector<int> v(n);
for(int i=0 ;i < n ;i++)
{
cin >> v[i];
}
duplicateZeros(v);
for(auto x : v)
{
cout << x << " ";
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2b2lkIGZ1bihpbnQgaiwgdmVjdG9yPGludD4gJnYpCnsKCWludCBwdHIgPSB2LnNpemUoKSAtMiA7Cglmb3IoaW50IGk9cHRyIDsgaT5qIDsgaS0tKQoJewoJCXZbaSsxXSA9IHZbaV07Cgl9Cn0KCnZvaWQgZHVwbGljYXRlWmVyb3ModmVjdG9yPGludD4gJnYpCnsKCWludCBwb2ludGVyID0gMDsKCWZvcihpbnQgaT0wIDtpIDwgdi5zaXplKCkgO2krKykKCXsKCQlpZih2W2ldID09IDApCgkJewoJCQlmdW4oaSwgdik7CgkJCXZbKytpXSA9MDsKCQl9Cgl9Cn0KCmludCBtYWluKCkgewoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJaW50IG47IGNpbiA+PiBuOwoJdmVjdG9yPGludD4gdihuKTsKCWZvcihpbnQgaT0wIDtpIDwgbiA7aSsrKQoJewoJCQljaW4gPj4gdltpXTsKCX0KCQoJCQoJZHVwbGljYXRlWmVyb3Modik7Cglmb3IoYXV0byB4IDogdikKCXsKCQljb3V0IDw8IHggPDwgIiAiOwoJfQoJcmV0dXJuIDA7Cn0=