public TreeNode clone(TreeNode t, int gap) {
        if (t == null) {
            return null;
        } else {
            TreeNode n = new TreeNode(t.val + gap);
            n.left = clone(t.left, gap);
            n.right = clone(t.right, gap);
            return n;
        }
    }