code: private static Set<String>  parseRequiredFeatures(String val)
     {
        TextScanner      scan = new TextScanner(val);
        HashSet<String>  result = new HashSet<>();
  
        while (!scan.empty())
        {
           String feature = scan.nextToken();
           if (feature.startsWith(FEATURE_STRING_PREFIX)) {
              result.add(feature.substring(FEATURE_STRING_PREFIX.length()));
           } else {
              // Not a feature string we recognise or support. (In order to avoid accidentally
              // matches with our truncated feature strings, we'll replace it with a string
              // we know for sure won't match anything.
              result.add("UNSUPPORTED");
           }
           scan.skipWhitespace();
        }
        return result;
     }
docs: supported if we are to render this element