anchor.diff:  }
   
   main_wrapped() {
  -    String inp = "A First Level Header\n====================\n\nA Second Level Header\n---------------------\n\nNow is the time for all good men to come to\nthe aid of their `country`. This is just a\nre_gu_lar paragraph.\n\nThe quick brown fox jumped over the lazy\ndog's back.\n\n### Header 3\n\n> This is a blockquote.\n> \n> This is the second paragraph in the blockquote.\n>\n> ## This is an H2 in a blockquote\n\n    code block\n    second line code block\n- this is\n- elements in\n- a list";
  +    String inp = "A First Level Header\n====================\n\nA Second Level Header\n---------------------\n\nNow is the time for all good men to come to\nthe aid of their `country`. This is just a\nre_gu_lar paragraph.\n\nThe quick brown fox jumped over the lazy\ndog's back.\n\n### Header 3\n\n> This is a blockquote.\n> \n> This is the second paragraph in the blockquote.\n>\n> ## This is an H2 in a blockquote\n\n    code block\n    second line code block\n- this is\n- elements in\n- a list\n[Link Text](http://google.com)";
       print(markdown_to_html(inp));
   }
  
positive.code:     RegExp spaced_underscore = new RegExp(r" (_) ");
      RegExp backslash_asterix = new RegExp(r"\\(\*)");
      RegExp backslash_underscore = new RegExp(r"\\(_)");
      
      regular_expressions.add(new markdown_regex(single_asterix, (Match found) {
                  return new markdown_emphasis(found.group(1));
  
negative.code:     }, process: generate_markdown_emphasis));
      regular_expressions.add(new markdown_regex(backslash_underscore, (Match found) {
                  return new markdown_plaintext(found.group(1));
      }, process: generate_markdown_emphasis));
  
      regular_expressions.add(new markdown_regex(link, (Match found) {
                  return new markdown_link(found.group(2), found.group(1));
      }, process: generate_markdown_emphasis));
      
      bool found_match = false;
  