public static IntBTNode treeCopy(IntBTNode source)
 {
    IntBTNode leftCopy, rightCopy;

    if (source == null)
       return null;
    else
    {
       leftCopy = treeCopy(source.left);
       rightCopy = treeCopy(source.right);
       return new IntBTNode(source.data, leftCopy, rightCopy);
    }
 }