**Time limit:**1.00 s**Memory limit:**512 MB

Implement VByte encoding and decoding.

The binary needs to support the "-s" command line flag, that indicates that the input is sorted and differences between subsequent numbers should be stored instead of numbers themselves.

# Input

A binary input stream, consisting of 64-bit unsigned integers. The first integer, n, is how many additional integers are in the input.

# Output

After encoding the n integers, output to `cerr`

the number of blocks used to encode the input, after this, repeate back the input sequence.

# Constraints

- n << 10^8

# Example

Input:

2, 7, 500

(in 64-bit binary)

Output:

3, 7, 500

I.e. The number of blocks = 3, followed by the input integers 7 and 500.