anchor.diff:      /// Create SVG object from responseText
       DocumentFragment svg = new DocumentFragment.svg(request.responseText);
       SvgSvgElement root = svg.querySelector('svg');
  +    // Append to DOM so we can query position and dimension of countries
  +    document.body.append(root);
       /// Get viewbox (dimension) from document
       var viewBox = root.getAttribute('viewBox').split(' ');
       Rectangle dimension = new Rectangle<double>(double.parse(viewBox[0]), double.parse(viewBox[1]), double.parse(viewBox[2]), double.parse(viewBox[3]));
  
positive.code: Point mouse_position = null;
  
  void loadCountries(GElement countriesElement) {
    countriesElement.children.where((Element e) => e is GElement).forEach((Element continentElement) {
      String continentName = continentElement.getAttribute('inkscape:label');
      Continent continent = new Continent(continentName);
      continentElement.children.where((Element e) => e is GElement).forEach((Element countryElement) {
        String countryName = countryElement.getAttribute('inkscape:label');
        String countryId = countryElement.getAttribute('id');
        List<CountryPart> parts = new List();
        String color;
        countryElement.children.where((Element e) => e is PathElement).forEach((Element pathElement) {
          Match match = regexp_stroke.firstMatch(pathElement.getAttribute('style'));
          if(match != null) {
            color = match.group(1);
  
negative.code:         ctx.stroke(part.path);
          ctx.restore();
        });
  
        if(highlightedCountry == null || highlightedCountry == country || (connectedCountries[highlightedCountry] != null && connectedCountries[highlightedCountry].contains(country))) {
          var dim = ctx.measureText(country.name);
          ctx.textBaseline="middle";
          ctx.fillStyle = 'rgba(255,255,255,0.75)';
          ctx.fillRect(country.middle.x - dim.width/2 - 10/2, country.middle.y-16/2, dim.width+10, 16);
          ctx.fillStyle = 'black';
          ctx.fillText(country.name, country.middle.x - dim.width/2, country.middle.y);
        }
      });
    });
    ctx.restore();
  