+ public:
+ Node(const Action* action);
+ Node();
+ Node(const Node& node);
+ virtual ~Node(){}
+ void addChild(Node* node);
+ const Action* action() const;
+ void execute();
+ bool executed() const;
+ const Literals& effects() const;
+ bool satisfyCondition(std::string effect);
+ bool satisfyConditions(const Literals& effects);
+ const std::vector<Node*>& children() const;
+ const Preconditions& preconditions() const;
+