#include<iostream>
#include<algorithm>
#include<vector>

using namespace std;

int main()
{
  int n;
  cin >> n;

  int a[n];
  std::vector<int> A;
  for(int i=0; i<n; i++){
    cin >> a[i];
    A.push_back(a[i]);
  }

  std::sort(A.begin(), A.end());
  A.erase(std::unique(A.begin(), A.end()), A.end());

  for(int k=0; k<A.size(); k++){
    cout << A[k];
    if(k != A.size()-1) cout << " ";
  }
    cout << endl;

  return 0;
}


### Prompt

Please formulate a Cpp solution to the following problem:

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<iostream>
#include<algorithm>
#include<vector>

using namespace std;

int main()
{
  int n;
  cin >> n;

  int a[n];
  std::vector<int> A;
  for(int i=0; i<n; i++){
    cin >> a[i];
    A.push_back(a[i]);
  }

  std::sort(A.begin(), A.end());
  A.erase(std::unique(A.begin(), A.end()), A.end());

  for(int k=0; k<A.size(); k++){
    cout << A[k];
    if(k != A.size()-1) cout << " ";
  }
    cout << endl;

  return 0;
}


```