public static void main(String[] args) {
		simple_test();
		Random gen = new Random();

		for (int times = 0; times < 1000; ++times) {
			List<Integer> A = new ArrayList<Integer>();
			if (args.length > 2) {
				for (int i = 1; i < args.length; ++i) {
					A.add(Integer.valueOf(args[i]));
				}
			} else {
				int n;
				if (args.length == 1) {
					n = Integer.valueOf(args[0]);
				} else {
					n = gen.nextInt(1000000) + 1;
				}
				for (int i = 0; i < n; ++i) {
					A.add((gen.nextBoolean() ? -1 : 1) * gen.nextInt(n));
				}
			}
			Pair<Integer, Integer> result = find_longest_increasing_subarray(A);
			System.out.println(result.first + " " + result.second);
			int len = 1;
			for (int i = 1; i < A.size(); ++i) {
				if (A.get(i) > A.get(i - 1)) {
					++len;
				} else {
					len = 1;
				}
				assert (len <= result.second - result.first + 1);
			}
		}
	}