Mirror the binary tree

Given a binary tree, you are asked to mirror it. β€œReading” it from left to right should turn into β€œreading” it from right to left.
Mirroring the binary tree in the image won’t change anything, for instance. Do you know why πŸ€”?
notion image

Input

The input contains space-separated integers representing the values in the nodes of the binary tree. The order of the values is given by traversing from the left to the right subtree every time. A value of 0 means that the node does not exist. It’s guaranteed that the input binary tree is valid.

Output

The program should print the pre-order traversal of the mirrored binary tree.

Examples

Input
Output
1 2 3 8 5 0 0 0 0 5 8 0 0 0 0
1 3 8 5 2 5 8
1 2 3 4 5 0 0 7 8 0 0 0 0 0 6 0 0
1 3 6 2 5 8 7 4

Explanation

Example 1:
notion image
Example 2:
notion image
Β 
Β 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in