Problem:
Swapping Two Numbers

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

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.

Constraints

0 ≤ x, y ≤ 10000

the number of datasets ≤ 3000

Sample Input

3 2
2 2
5 3
0 0

Sample Output

2 3
2 2
3 5

Solution in C# (judge verdict: Accepted)

using System;
using System.Linq;

class P
{
  static void Swap<T>(ref T a, ref T b)
  {
    var c = a;
    a = b;
    b = c;
  }

  static void Main()
  {
    for(var tc=1;; tc++) {
      var a = Console.ReadLine().Split(' ').Select(x => int.Parse(x)).ToArray();
      if(a[0] > a[1])
        Swap(ref a[0], ref a[1]);
      if(a[1] == 0) break;
      Console.WriteLine("{0} {1}", a[0], a[1]);
    }
  }
}