@Override
  protected Map<Pair<QName, Integer>, Function> createFunctionMap(ContextType type) {
    final XPathVersion version = type.getVersion();
    if (version == XPathVersion.V1) {
      return DEFAULT_FUNCTIONS_V1;
    } else if (version == XPathVersion.V2) {
      return DEFAULT_FUNCTIONS_V2;
    } else {
      throw new IllegalStateException("Unsupprted version: " + version);
    }
  }
@Override
  protected Map<Pair<QName, Integer>, Function> createFunctionMap(ContextType type)