Develop a C++ program that implements a binary tree
#pragma once
// include this library to use NULL, otherwise use nullptrinstead
#include <cstddef>
#include <iostream>
#include “node.hpp”
template<class T>
class BST{
public:
// Constructor for the BST class, creates an empty tree
BST(void);
// Destructor for the BST class, destroys the tree
~BST(void);
// Inserts data into the tree
// param: The data to be inserted into the tree
void insert(T);
// Removes data from the tree
// param: The data to be removed from the tree
void remove(T);
// Performs an inorder traversal
// returns: pointer to a vector containing the treetraversal
std::vector<T> *inorder(void);
// Performs an postorder traversal
// returns: pointer to a vector containing the treetraversal
std::vector<T> *postorder(void);
// Performs an preorder
PayPal Gateway not configured
PayPal Gateway not configured