#include <bits/stdc++.h>
using namespace std;
#define rep(i,j,k) for(int i = (int)j;i <= (int)k;i ++)
#define debug(x) cerr<<#x<<":"<<x<<endl
const int maxn=(int)1e6+5;
vector<int> V;
int main(){
    ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    int n;cin>>n;
    rep(i,1,n){int x;cin>>x;V.push_back(x);}
    V.erase(unique(V.begin(),V.end()),V.end());
    int cnt=0;
    for(auto t:V)cout<<t<<(++cnt==V.size()?'\n':' ');

}
/* 
 */

### Prompt

Develop a solution in Cpp to the problem described below:

For a sequence of integers $A = \\{a_0, a_1, ..., a_{n-1}\\}$ which is sorted by ascending order, eliminate all equivalent elements.

Constraints

* $1 \leq n \leq 100,000$
* $-1000,000,000 \leq a_i \leq 1,000,000,000$
* $a_0 \leq a_1 \leq ... \leq a_{n-1}$

Input

A sequence is given in the following format.


$n$
$a_0 \; a_1 \; ,..., \; a_{n-1}$


Output

Print the sequence after eliminating equivalent elements in a line. Separate adjacency elements by a space character.

Example

Input

4
1 2 2 4


Output

1 2 4

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
#define rep(i,j,k) for(int i = (int)j;i <= (int)k;i ++)
#define debug(x) cerr<<#x<<":"<<x<<endl
const int maxn=(int)1e6+5;
vector<int> V;
int main(){
    ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    int n;cin>>n;
    rep(i,1,n){int x;cin>>x;V.push_back(x);}
    V.erase(unique(V.begin(),V.end()),V.end());
    int cnt=0;
    for(auto t:V)cout<<t<<(++cnt==V.size()?'\n':' ');

}
/* 
 */

```