#include int main() { int N; int A[64]; int B[64]; bool ans; bool b; std::cin >> N; for(int i = 0; i < N; ++i) { std::cin >> A[i]; } for(int i = 0; i < N; ++i) { B[i] = i; } ans = false; for(int t = 0; t < N * 10; ++t) { b = true; for(int i = 0; i < N; ++i) { for(int j = 0; j < N; ++j) { if( B[i] == A[i] || B[j] == A[j] ) { b = false; if( B[i] != A[j] && B[j] != A[i] ) { std::swap(B[i],B[j]); } } } } if( b ) { ans = true; break; } } if( ans ) { for(int i = 0; i < N; ++i) { std::cout << B[i] << std::endl; } } else { std::cout << -1 << std::endl; } return 0; }