child1
ListNode(PredicateNode *child1 = NULL, PredicateNode *child2 = NULL,
addChild(child1);
return child1();
return child1();
return child1();
return child1();