	@Test
	public void testAddTwo() {

		double DBL_EPSILON = Math.pow(2, -53);

		same(add(1e64, 1), n(1, 1e64));
		same(add(1, 1), n(0, 2));
		same(add(0, -1415), n(0, -1415));
		same(add(1e-64, 1e64), n(1e-64, 1e64));
		same(add(0, 0), n(0, 0));
		same(add(9e15 + 1, 9e15), n(1, 18000000000000000.0));
		same(add(DBL_EPSILON, 1.0), n(DBL_EPSILON, 1.0));

		for (int i = 0; i < 100; ++i) {
			double a = Math.random() - 0.5;
			double b = Math.random() - 0.5;
			double[] s = add(a, b);
			same(add(b, a), s);
		}
	}