#include <stdio.h>
#include<math.h>
typedef long long int llint;

llint sum(llint n) {
	return n * (n + 1) / 2;
}

int main() {
	llint b;
	llint l, d, i, k;
	for (;;) {
		scanf("%lld", &b);
		if (b == 0) break;
		b *= 2;
		k = 0;
		for (i = 1; i <= sqrt(b); i++)
		{
			if (b % i == 0)
			{
				d = b / i;
				l = i;
				l--;
				l -= d;
				if (l < 0)
					continue;
				if (l % 2 == 1)
					continue;
				l /= 2;
				printf("%lld %lld\n", l + 1, d);
				k++;
				break;
			}
		}
		if (k > 0)
			continue;
		for (i = sqrt(b); i > 0; i--)
		{
			if (b % i == 0)
			{
				d = i;
				l = b / i;
				l--;
				l -= d;
				if (l < 0)
					continue;
				if (l % 2 == 1)
					continue;
				l /= 2;
				printf("%lld %lld\n", l + 1, d);
				break;
			}
		}
	}
	return 0;
}
