# 还原排列

## 题目描述

Alice有一个 $0\sim n$ 的排列 $p$，她告诉你 $m$ 条信息，每条信息形如 $(l,r,val)$，表示区间 $[l,r]$ 的 ${\rm mex}$ 值为 $val$。
- 一个区间的 ${\rm mex}$ 值是最小的没有在这个区间中出现的自然数。

你想要猜出Alice的排列 $p$，或声明无解。

## 输入格式

第一行两个整数 $n$ 和 $m$。

随后 $m$ 行每行三个整数 $l,r,val$ 描述一条信息，表示区间 $[l,r]$ 的 ${\rm mex}$ 值为 $val$。

## 输出格式

如果不存在满足所有条件的排列，输出 $-1$。

否则输出一行 $n+1$ 个正整数，表示一个 $0$ 到 $n$ 的排列。

**本题采用 Special Judge**。如果满足条件的排列有多个，你可以输出任意一个。

## 样例 #1

### 样例输入 #1

```
3 4
0 0 0
0 1 1
0 2 2
1 3 3
```

### 样例输出 #1

```
3 0 1 2
```

## 样例 #2

### 样例输入 #2

```
5 7
0 1 0
4 5 0
1 3 1
0 5 6
0 5 6
2 5 3
2 3 1
```

### 样例输出 #2

```
4 3 5 0 1 2
```

## 样例 #3

### 样例输入 #3

```
见下发样例
```

### 样例输出 #3

```

```

## 提示

对于所有的数据满足：$1 \le n,m\le 5\times 10^5$，$ 0\le l,r\le n$，$0\le val\le n+1$。

- Subtask 1(15 points)：$n,m\le 10$；
- Subtask 2(20 points)：$n,m\le 20$；
- Subtask 3(10 points)：$val=0$；
- Subtask 4(15 points)：排列和区间边界都随机生成；
- Subtask 5(10 points)：$n\le 10^5$；
- Subtask 6(30 points)：无特殊限制。

请注意使用效率较高的 IO 方式。