Recently, Bob learned the properties of the difference operator Δ, defined by Δ`f`(`x`) = `f`(`x` + 1) - `f`(`x`).

Now, Bob wants you to construct a sequence `S` of `s` integers which satisfies the following properties:

- ∀ 1 ≤
`i`≤`s`, 1 ≤`S`(`i`) ≤`n`. - ∀ 1 ≤
`i`,`j`≤`s`,`i`≠`j`,`S`(`i`) ≠`S`(`j`). - ∀ 0 ≤
`i`≤`a`, 1 ≤`j`< |`S`_{i}|,`S`_{i}(`j`) <`S`_{i}(`j`+ 1), where`S`_{i}= Δ`S`_{i - 1},`S`_{0}=`S`.

Bob also wants you to construct another sequence `T` of `t` integers which satisfies the following properties:

- ∀ 1 ≤
`i`≤`t`, 1 ≤`T`(`i`) ≤`n`. - ∀ 1 ≤
`i`,`j`≤`t`,`i`≠`j`,`T`(`i`) ≠`T`(`j`). - ∀ 0 ≤
`i`≤`b`, 1 ≤`j`< |`T`_{i}|,`T`_{i}(`j`) >`T`_{i}(`j`+ 1), where`T`_{i}= Δ`T`_{i - 1},`T`_{0}=`T`.

Now, you are given `n`, `a`, `b`, `s`, `t`, please construct the two sequence `S` and `T` for Bob.

Notice:

- |
`S`| indicates the length of the sequence`S`. - Δ
`S`indicates the difference operation on sequence`S`and |Δ`S`| = |`S`| - 1

Input will consist of multiple test cases. Each case contains one line with five integers `n`, `a`, `b`, `s`, `t` (1 ≤ `n` < 2^{64}, 1 ≤ `s`, `t` ≤ 100, 0 ≤ `a`, `b` ≤ 10, `a` < `s`, `b` < `t`), separated by spaces.

For each cases, output two lines.

In the first line, if you find the sequence, output `s` integers `S`(1), `S`(2), ..., `S`(`s`), separated by one space. Otherwise just output "-1". If there are multiple sequences meeting the conditions, you should output the lexicographically smallest one.

In the second line, if you find the sequence, output `t` integers `T`(1), `T`(2), ..., `T`(`t`), separated by one space. Otherwise just output "-1". If there are multiple sequences meeting the conditions, you should output the lexicographically largest one.

Please print a blank line between cases.

提交代码