anchor.diff:  /**
    * Models a SELECT tag, providing helper methods to select and deselect options.
    */
  -class SelectUtil {
  +class Select {
     WebElement _element;
     bool _isMulti;
  -  
  +
     /**
      * A check is made that the given [element] is, indeed, a SELECT tag.
      * If it is not, then an [UnexpectedTagNameException] is thrown.
      */
  -  SelectUtil(WebElement element) {
  +  Select(WebElement element) {
       var tagName = element.name;
   
       if (null == tagName || tagName.toLowerCase() != "select") {
  
positive.code:       matched = true;
      }
  
      if (!matched) {
        // TODO Exception management
        throw new NoSuchElementException(0, "Cannot locate option with value: $value");
      }
    }
  
    /**
     * Select all options that display [text] matching the argument.
     * That is, when given "Bar" this would select an option like:
     * 
     * &lt;option value="foo"&gt;Bar&lt;/option&gt;
     */
    void selectByVisibleText(String text) {
      // try to find the option via XPATH ...
      var foundOptions =
          _element.findElements(new By.xpath(".//option[normalize-space(.) = "
              + _escapeQuotes(text) + "]"));
  
      var matched = false;
      for (var option in foundOptions) {
        _setSelected(option);
        if (!isMultiple) {
          return;
        }
        matched = true;
      }
  
      if (options.isEmpty && text.contains(" ")) {
        var subStringWithoutSpace = _getLongestSubstringWithoutSpace(text);
        var candidates;
        if (subStringWithoutSpace == "") {
          // hmm, text is either empty or contains only spaces - get all options ...
          candidates = _element.findElements(new By.tagName("option"));
        } else {
          // get candidates via XPATH ...
          candidates = _element.findElements(new By.xpath(".//option[contains(., " +
                  _escapeQuotes(subStringWithoutSpace) + ")]"));
        }
        for (var option in candidates) {
          if (option.text == text) {
            _setSelected(option);
            if (!isMultiple) {
  
negative.code:         matched = true;
        }
      }
  
      if (!matched) {
        // TODO Exception management
        throw new NoSuchElementException(0, "Cannot locate option with index: $index");
  