PRINTF("Visiting node %ld with left %ld and right %ld\n", x->nodeID, x->left->nodeID, x->right->nodeID);
static int InternalTraverse(TPatriciaTree *tree, TNode *x, NodeTraverseFunction traverseFunc, void *arg1, void *arg2){	TNode	*p;	int		err = 0;		AE_ASSERT(x, "No node");	AE_ASSERT(x->left && x->right, "Left or right child missing");#ifdef VERBOSE	printf("Visiting node %ld with left %ld and right %ld\n", x->nodeID, x->left->nodeID, x->right->nodeID);#endif	if (x != tree->headNode) {		err = (*traverseFunc)(x->data, x->key, arg1, arg2);		if (err != 0) return err;	}		p = x->left;	if (p->bit < x->bit)		err = InternalTraverse(tree, p, traverseFunc, arg1, arg2);	if (err != 0) return err;		p = x->right;	if (p->bit < x->bit)		err = InternalTraverse(tree, p, traverseFunc, arg1, arg2);		return err;}