TreeNode* trimBST(TreeNode* root, int l, int r) {
if(root==NULL)
return NULL;
if(root->val>=l && root->val<=r){
root->left=trimBST(root->left, l,r);
root->right=trimBST(root->right, l,r);
return root;
}else if(root->val <l){
return trimBST(root->right, l,r);
}else
return trimBST(root->left, l,r);
}