#include<stdio.h>
int main(void){

	int x,a;
	for(int i=1;;i++){
	scanf("%d%d",&x,&a);
	if(a==0 && x==0)break;
	else if(x>a){
		int n=x;
			x=a;
			a=n;
	}
	printf("%d %d\n",x,a);
	}
	return 0;
}
### Prompt

Create a solution in cpp for the following problem:

Write a program which reads two integers x and y, and prints them in ascending order.

Constraints

* 0 ≤ x, y ≤ 10000
* the number of datasets ≤ 3000

Input

The input consists of multiple datasets. Each dataset consists of two integers x and y separated by a single space.

The input ends with two 0 (when both x and y are zero). Your program should not process for these terminal symbols.

Output

For each dataset, print x and y in ascending order in a line. Put a single space between x and y.

Example

Input

3 2
2 2
5 3
0 0


Output

2 3
2 2
3 5

### Response

```cpp
#include<stdio.h>
int main(void){

	int x,a;
	for(int i=1;;i++){
	scanf("%d%d",&x,&a);
	if(a==0 && x==0)break;
	else if(x>a){
		int n=x;
			x=a;
			a=n;
	}
	printf("%d %d\n",x,a);
	}
	return 0;
}
```