template<class T>
class State {
    T state;
    double cost = 0;
    State<T> *cameFrom = nullptr;
I have this template class, and i want to create a std::set<State<T>>
the < operator of the class returns this.cost < other.cost
the == operator of the class returns this.state == other.state
lets say i want to check if a State<T> x is in a set
how can i make the set to return an iter !- end()(calling set.find(x)) iff the set contains a State<T> with the same state(x.state) as x?
 
    