public void ALongSubTest()
        {
            Assert.AreEqual("9886", AMath.Sub(new ALong(10509), new ALong(623)).ToString());
            Assert.AreEqual("999", AMath.Sub(new ALong(1000), new ALong(1)).ToString());
            Assert.AreEqual("1000", AMath.Sub(new ALong(999), new ALong(-1)).ToString());
            Assert.AreEqual("-1000", AMath.Sub(new ALong(-1), new ALong(999)).ToString());
            Assert.AreEqual("998", AMath.Sub(new ALong(-1), new ALong(-999)).ToString());
            Assert.AreEqual("2", AMath.Sub(new ALong("1"), new ALong(-1)).ToString());
            Assert.AreEqual("-1", AMath.Sub(new ALong("99"), new ALong(100)).ToString());

            var a = new ALong(10);

            a -= 2;
            Assert.AreEqual("8", a.ToString());

            a -= 8;
            Assert.AreEqual("0", a.ToString());

            a += 10;
            a -= 15;
            Assert.AreEqual("-5", a.ToString());

            a -= "100000000000000000000000000000000000000000000005";
            Assert.AreEqual("-100000000000000000000000000000000000000000000010", a.ToString());

            a += "11";
            Assert.AreEqual("-99999999999999999999999999999999999999999999999", a.ToString());
            Assert.IsTrue(a == "-99999999999999999999999999999999999999999999999");
            Assert.IsFalse(a > "-99999999999999999999999999999999999999999999999");
            Assert.IsTrue(a >= "-99999999999999999999999999999999999999999999999");
        }