pair<PredicateActionsMapIter, PredicateActionsMapIter> bounds =
std::pair<PredicateActionsMapIter, PredicateActionsMapIter> bounds =
static void applicable_actions(ActionList& actions, const Literal& literal) { if (params->ground_actions) {    planning_graph->achieves_formula(actions, literal);  } else if (typeid(literal) == typeid(Atom)) {    pair<PredicateActionsMapIter, PredicateActionsMapIter> bounds =      achieves_pred.equal_range(&literal.predicate());    for (PredicateActionsMapIter pai = bounds.first;	 pai != bounds.second; pai++) {      actions.push_back((*pai).second);    }  } else {    pair<PredicateActionsMapIter, PredicateActionsMapIter> bounds =      achieves_neg_pred.equal_range(&literal.predicate());    for (PredicateActionsMapIter pai = bounds.first;	 pai != bounds.second; pai++) {      actions.push_back((*pai).second);    }  }}