public void PassiveChainTest()
        {
            //Nested Adds
            var add3 = new Add().And(new Add().And(new Add()));
            Assert.AreEqual(3, add3.Execute(0));

            var sub5 = new Sub().And(new Sub().And(new Sub().And(new Sub().And(new Sub()))));
            Assert.AreEqual(10, sub5.Execute(15));

            //Continous adds to Root
            var sub2 = new Add().And(new Sub()).And(new Sub()).And(new Sub());
            Assert.AreEqual(3, sub2.Execute(5));

            var add5 = new Add();
            for (int i = 0; i < 4; i++)
                add5.And(new Add());
            Assert.AreEqual(5, add5.Execute(0));
        }