---
Fuzzer filename: '/src/nokogiri/gumbo-parser/fuzzer/parse_fuzzer.cc'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/nokogiri/gumbo-parser/fuzzer/parse_fuzzer.cc'
      linkageType:     externalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          76
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - _Z19SanityCheckPointersPKcmPK17GumboInternalNodei
        - gumbo_destroy_output
        - gumbo_parse_with_options
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzer/parse_fuzzer.cc:46,25'
          Dst:             gumbo_parse_with_options
        - Src:             'fuzzer/parse_fuzzer.cc:48,16'
          Dst:             _Z19SanityCheckPointersPKcmPK17GumboInternalNodei
        - Src:             'fuzzer/parse_fuzzer.cc:51,5'
          Dst:             gumbo_destroy_output
    - functionName:    _Z19SanityCheckPointersPKcmPK17GumboInternalNodei
      functionSourceFile: '/src/nokogiri/gumbo-parser/fuzzer/parse_fuzzer.cc'
      linkageType:     InternalLinkage
      functionLinenumber: 4
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          157
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - _Z19SanityCheckPointersPKcmPK17GumboInternalNodei
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzer/parse_fuzzer.cc:26,7'
          Dst:             _Z19SanityCheckPointersPKcmPK17GumboInternalNodei
    - functionName:    destroy_node_callback
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          143
      EdgeCount:       22
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_destroy_attribute
        - gumbo_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'parser.c:412,3'
          Branch Sides:    []
      Callsites:
        - Src:             'parser.c:415,7'
          Dst:             gumbo_free
        - Src:             'parser.c:416,7'
          Dst:             gumbo_free
        - Src:             'parser.c:417,7'
          Dst:             gumbo_free
        - Src:             'parser.c:418,7'
          Dst:             gumbo_free
        - Src:             'parser.c:423,9'
          Dst:             gumbo_destroy_attribute
        - Src:             'parser.c:425,7'
          Dst:             gumbo_free
        - Src:             'parser.c:426,7'
          Dst:             gumbo_free
        - Src:             'parser.c:428,9'
          Dst:             gumbo_free
        - Src:             'parser.c:434,7'
          Dst:             gumbo_free
        - Src:             'parser.c:437,3'
          Dst:             gumbo_free
    - functionName:    tree_traverse
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          160
      EdgeCount:       30
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
      functionUses:    1
      BranchProfiles:
        - Branch String:   'parser.c:376,3'
          Branch Sides:    []
      Callsites:
        - Src:             'parser.c:385,9'
          Dst:             __assert_fail
        - Src:             'parser.c:397,7'
          Dst:             __assert_fail
    - functionName:    __assert_fail
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    169
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_fragment_ctx_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4623
      functionLinenumberEnd: 4634
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - destroy_node
        - gumbo_free
        - gumbo_vector_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4624,3'
          Dst:             __assert_fail
        - Src:             'parser.c:4628,5'
          Dst:             __assert_fail
        - Src:             'parser.c:4629,28'
          Dst:             gumbo_vector_pop
        - Src:             'parser.c:4631,5'
          Dst:             gumbo_free
        - Src:             'parser.c:4633,3'
          Dst:             destroy_node
    - functionName:    destroy_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_node_callback
        - tree_traverse
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:441,3'
          Dst:             tree_traverse
        - Src:             'parser.c:441,3'
          Dst:             destroy_node_callback
    - functionName:    node_tagname_is
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - node_qualified_tagname_is
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:627,3'
          Dst:             __assert_fail
        - Src:             'parser.c:628,10'
          Dst:             node_qualified_tagname_is
    - functionName:    node_qualified_tagname_is
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          165
      EdgeCount:       41
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - gumbo_ascii_strcasecmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:600,3'
          Dst:             __assert_fail
        - Src:             'parser.c:601,3'
          Dst:             __assert_fail
        - Src:             'parser.c:602,3'
          Dst:             __assert_fail
        - Src:             'parser.c:603,3'
          Dst:             __assert_fail
        - Src:             'parser.c:606,3'
          Dst:             __assert_fail
        - Src:             'parser.c:611,11'
          Dst:             gumbo_ascii_strcasecmp
    - functionName:    adjust_svg_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1988
      functionLinenumberEnd: 2004
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          108
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - gumbo_get_svg_tag_replacement
        - strcpy
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1989,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1991,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1994,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1997,7'
          Dst:             strlen
        - Src:             'parser.c:1995,44'
          Dst:             gumbo_get_svg_tag_replacement
        - Src:             'parser.c:2001,7'
          Dst:             strcpy
    - functionName:    strlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    close_current_select
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1811
      functionLinenumberEnd: 1817
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - node_html_tag_is
        - pop_current_node
        - reset_insertion_mode_appropriately
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1812,21'
          Dst:             pop_current_node
        - Src:             'parser.c:1813,11'
          Dst:             node_html_tag_is
        - Src:             'parser.c:1814,12'
          Dst:             pop_current_node
        - Src:             'parser.c:1816,3'
          Dst:             reset_insertion_mode_appropriately
    - functionName:    pop_current_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1046
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         41
      ICount:          222
      EdgeCount:       51
      CyclomaticComplexity: 12
      functionsReached:
        - __assert_fail
        - get_current_node
        - gumbo_debug
        - gumbo_normalized_tagname
        - gumbo_vector_pop
        - maybe_flush_text_node_buffer
        - node_html_tag_is
        - node_qualified_tagname_is
        - record_end_of_element
      functionUses:    67
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1002,3'
          Dst:             maybe_flush_text_node_buffer
        - Src:             'parser.c:1004,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:1004,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1007,32'
          Dst:             get_current_node
        - Src:             'parser.c:1007,7'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:1005,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:1010,29'
          Dst:             gumbo_vector_pop
        - Src:             'parser.c:1012,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1015,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1021,7'
          Dst:             node_html_tag_is
        - Src:             'parser.c:1024,7'
          Dst:             node_html_tag_is
        - Src:             'parser.c:1031,11'
          Dst:             node_qualified_tagname_is
        - Src:             'parser.c:1043,5'
          Dst:             record_end_of_element
    - functionName:    node_html_tag_is
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 646
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - node_qualified_tag_is
      functionUses:    58
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:647,10'
          Dst:             node_qualified_tag_is
    - functionName:    reset_insertion_mode_appropriately
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 735
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - get_appropriate_insertion_mode
        - set_insertion_mode
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:727,31'
          Dst:             get_appropriate_insertion_mode
        - Src:             'parser.c:729,7'
          Dst:             set_insertion_mode
        - Src:             'parser.c:735,3'
          Dst:             __assert_fail
    - functionName:    get_appropriate_insertion_mode
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 721
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         50
      ICount:          271
      EdgeCount:       59
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - get_current_template_insertion_mode
        - is_fragment_parser
        - node_html_tag_is
      functionUses:    1
      BranchProfiles:
        - Branch String:   'parser.c:672,3'
          Branch Sides:    []
      Callsites:
        - Src:             'parser.c:663,18'
          Dst:             is_fragment_parser
        - Src:             'parser.c:667,3'
          Dst:             __assert_fail
        - Src:             'parser.c:679,13'
          Dst:             node_html_tag_is
        - Src:             'parser.c:682,13'
          Dst:             node_html_tag_is
        - Src:             'parser.c:705,14'
          Dst:             get_current_template_insertion_mode
    - functionName:    set_insertion_mode
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    53
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_fragment_parser
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_current_template_insertion_mode
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          42
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    node_qualified_tag_is
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 636
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          86
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:637,3'
          Dst:             __assert_fail
        - Src:             'parser.c:638,3'
          Dst:             __assert_fail
        - Src:             'parser.c:639,3'
          Dst:             __assert_fail
    - functionName:    maybe_flush_text_node_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 987
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          177
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - create_node
        - destroy_node
        - get_appropriate_insertion_location
        - gumbo_debug
        - gumbo_string_buffer_clear
        - gumbo_string_buffer_to_string
        - insert_node
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:955,3'
          Dst:             __assert_fail
        - Src:             'parser.c:960,26'
          Dst:             create_node
        - Src:             'parser.c:962,26'
          Dst:             gumbo_string_buffer_to_string
        - Src:             'parser.c:969,3'
          Dst:             gumbo_debug
        - Src:             'parser.c:975,32'
          Dst:             get_appropriate_insertion_location
        - Src:             'parser.c:979,5'
          Dst:             destroy_node
        - Src:             'parser.c:981,5'
          Dst:             insert_node
        - Src:             'parser.c:984,3'
          Dst:             gumbo_string_buffer_clear
        - Src:             'parser.c:986,3'
          Dst:             __assert_fail
    - functionName:    get_current_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
      functionUses:    56
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:472,5'
          Dst:             __assert_fail
        - Src:             'parser.c:475,3'
          Dst:             __assert_fail
        - Src:             'parser.c:476,3'
          Dst:             __assert_fail
    - functionName:    gumbo_debug
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    42
      BranchProfiles:  []
      Callsites:       []
    - functionName:    record_end_of_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 992
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          38
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_alloc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:313,21'
          Dst:             gumbo_alloc
    - functionName:    get_appropriate_insertion_location
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 835
      functionLinenumberEnd: 887
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          240
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - get_current_node
        - get_document_node
        - node_html_tag_is
        - node_tag_in_set
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:842,9'
          Dst:             get_current_node
        - Src:             'parser.c:843,9'
          Dst:             get_document_node
        - Src:             'parser.c:848,9'
          Dst:             node_tag_in_set
        - Src:             'parser.c:860,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:863,9'
          Dst:             node_html_tag_is
    - functionName:    insert_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 913
      functionLinenumberEnd: 946
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          221
      EdgeCount:       44
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - append_node
        - gumbo_vector_insert_at
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:914,3'
          Dst:             __assert_fail
        - Src:             'parser.c:915,3'
          Dst:             __assert_fail
        - Src:             'parser.c:927,7'
          Dst:             __assert_fail
        - Src:             'parser.c:929,7'
          Dst:             __assert_fail
        - Src:             'parser.c:932,5'
          Dst:             __assert_fail
        - Src:             'parser.c:933,5'
          Dst:             __assert_fail
        - Src:             'parser.c:936,5'
          Dst:             gumbo_vector_insert_at
        - Src:             'parser.c:937,5'
          Dst:             __assert_fail
        - Src:             'parser.c:941,7'
          Dst:             __assert_fail
        - Src:             'parser.c:944,5'
          Dst:             append_node
    - functionName:    append_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 891
      functionLinenumberEnd: 908
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          115
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - gumbo_vector_add
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:892,3'
          Dst:             __assert_fail
        - Src:             'parser.c:893,3'
          Dst:             __assert_fail
        - Src:             'parser.c:901,5'
          Dst:             __assert_fail
        - Src:             'parser.c:906,3'
          Dst:             gumbo_vector_add
        - Src:             'parser.c:907,3'
          Dst:             __assert_fail
    - functionName:    get_document_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 460
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    node_tag_in_set
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 582
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - tagset_includes
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:583,3'
          Dst:             __assert_fail
        - Src:             'parser.c:587,10'
          Dst:             tagset_includes
    - functionName:    tagset_includes
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_an_element_in_select_scope
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1698
      functionLinenumberEnd: 1700
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - has_an_element_in_specific_scope
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1700,10'
          Dst:             has_an_element_in_specific_scope
    - functionName:    has_an_element_in_specific_scope
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1573
      functionLinenumberEnd: 1595
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          157
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - tagset_includes
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1589,18'
          Dst:             tagset_includes
    - functionName:    close_current_cell
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1795
      functionLinenumberEnd: 1805
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          51
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - close_table_cell
        - has_an_element_in_table_scope
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1797,7'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:1798,5'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:1798,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1801,5'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:1801,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1804,3'
          Dst:             close_table_cell
    - functionName:    has_an_element_in_table_scope
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1692
      functionLinenumberEnd: 1694
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - has_an_element_in_specific_scope
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1694,10'
          Dst:             has_an_element_in_specific_scope
    - functionName:    close_table_cell
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1780
      functionLinenumberEnd: 1791
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - clear_active_formatting_elements
        - generate_implied_end_tags
        - get_current_node
        - node_html_tag_is
        - parser_add_parse_error
        - pop_current_node
        - set_insertion_mode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1781,3'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:1782,27'
          Dst:             get_current_node
        - Src:             'parser.c:1783,8'
          Dst:             node_html_tag_is
        - Src:             'parser.c:1784,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:1786,12'
          Dst:             pop_current_node
        - Src:             'parser.c:1787,13'
          Dst:             node_html_tag_is
        - Src:             'parser.c:1789,3'
          Dst:             clear_active_formatting_elements
        - Src:             'parser.c:1790,3'
          Dst:             set_insertion_mode
    - functionName:    generate_implied_end_tags
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1710
      functionLinenumberEnd: 1721
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_current_node
        - node_html_tagname_is
        - node_tag_in_set
        - pop_current_node
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1716,21'
          Dst:             get_current_node
        - Src:             'parser.c:1716,5'
          Dst:             node_tag_in_set
        - Src:             'parser.c:1717,30'
          Dst:             get_current_node
        - Src:             'parser.c:1717,9'
          Dst:             node_html_tagname_is
        - Src:             'parser.c:1719,5'
          Dst:             pop_current_node
    - functionName:    parser_add_parse_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          274
      EdgeCount:       49
      CyclomaticComplexity: 13
      functionsReached:
        - __assert_fail
        - gumbo_add_error
        - gumbo_debug
        - gumbo_strdup
        - gumbo_vector_add
        - gumbo_vector_init
      functionUses:    114
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:742,3'
          Dst:             gumbo_debug
        - Src:             'parser.c:743,23'
          Dst:             gumbo_add_error
        - Src:             'parser.c:758,32'
          Dst:             gumbo_strdup
        - Src:             'parser.c:765,32'
          Dst:             gumbo_strdup
        - Src:             'parser.c:770,3'
          Dst:             gumbo_vector_init
        - Src:             'parser.c:773,5'
          Dst:             __assert_fail
        - Src:             'parser.c:779,13'
          Dst:             gumbo_strdup
        - Src:             'parser.c:783,5'
          Dst:             gumbo_vector_add
    - functionName:    clear_active_formatting_elements
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1489
      functionLinenumberEnd: 1501
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - gumbo_debug
        - gumbo_vector_pop
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1494,12'
          Dst:             gumbo_vector_pop
        - Src:             'parser.c:1497,3'
          Dst:             gumbo_debug
    - functionName:    node_html_tagname_is
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - node_qualified_tagname_is
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:619,10'
          Dst:             node_qualified_tagname_is
    - functionName:    clear_stack_to_table_row_context
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1064
      functionLinenumberEnd: 1069
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_current_node
        - node_tag_in_set
        - pop_current_node
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1066,27'
          Dst:             get_current_node
        - Src:             'parser.c:1066,11'
          Dst:             node_tag_in_set
        - Src:             'parser.c:1067,5'
          Dst:             pop_current_node
    - functionName:    clear_stack_to_table_body_context
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1080
      functionLinenumberEnd: 1087
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_current_node
        - node_tag_in_set
        - pop_current_node
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1084,27'
          Dst:             get_current_node
        - Src:             'parser.c:1084,11'
          Dst:             node_tag_in_set
        - Src:             'parser.c:1085,5'
          Dst:             pop_current_node
    - functionName:    close_table
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1761
      functionLinenumberEnd: 1772
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - has_an_element_in_table_scope
        - node_html_tag_is
        - pop_current_node
        - reset_insertion_mode_appropriately
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1762,8'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:1766,21'
          Dst:             pop_current_node
        - Src:             'parser.c:1767,11'
          Dst:             node_html_tag_is
        - Src:             'parser.c:1768,12'
          Dst:             pop_current_node
        - Src:             'parser.c:1770,3'
          Dst:             reset_insertion_mode_appropriately
    - functionName:    clear_stack_to_table_context
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1072
      functionLinenumberEnd: 1077
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_current_node
        - node_tag_in_set
        - pop_current_node
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1074,27'
          Dst:             get_current_node
        - Src:             'parser.c:1074,11'
          Dst:             node_tag_in_set
        - Src:             'parser.c:1075,5'
          Dst:             pop_current_node
    - functionName:    token_has_attribute
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - gumbo_get_attribute
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:264,3'
          Dst:             __assert_fail
        - Src:             'parser.c:265,10'
          Dst:             gumbo_get_attribute
    - functionName:    remove_from_parent
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2056
      functionLinenumberEnd: 2076
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          103
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - gumbo_vector_index_of
        - gumbo_vector_remove_at
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2064,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2066,15'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:2067,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2069,3'
          Dst:             gumbo_vector_remove_at
    - functionName:    is_special_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1821
      functionLinenumberEnd: 1823
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - node_tag_in_set
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1822,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1823,10'
          Dst:             node_tag_in_set
    - functionName:    clone_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1393
      functionLinenumberEnd: 1416
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          138
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - gumbo_alloc
        - gumbo_strdup
        - gumbo_vector_add
        - gumbo_vector_init
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1394,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1395,25'
          Dst:             gumbo_alloc
        - Src:             'parser.c:1404,3'
          Dst:             gumbo_vector_init
        - Src:             'parser.c:1407,3'
          Dst:             gumbo_vector_init
        - Src:             'parser.c:1410,28'
          Dst:             gumbo_alloc
        - Src:             'parser.c:1412,18'
          Dst:             gumbo_strdup
        - Src:             'parser.c:1413,19'
          Dst:             gumbo_strdup
        - Src:             'parser.c:1414,5'
          Dst:             gumbo_vector_add
    - functionName:    is_open_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1377
      functionLinenumberEnd: 1385
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in_body_any_other_end_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2101
      functionLinenumberEnd: 2144
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          179
      EdgeCount:       35
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - generate_implied_end_tags
        - get_current_node
        - ignore_token
        - is_special_node
        - node_html_tag_is
        - node_qualified_tagname_is
        - parser_add_parse_error
        - pop_current_node
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2110,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2115,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2116,3'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2116,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2125,9'
          Dst:             node_qualified_tagname_is
        - Src:             'parser.c:2126,7'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:2130,19'
          Dst:             get_current_node
        - Src:             'parser.c:2131,9'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2133,22'
          Dst:             pop_current_node
        - Src:             'parser.c:2136,16'
          Dst:             is_special_node
        - Src:             'parser.c:2137,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2138,7'
          Dst:             ignore_token
        - Src:             'parser.c:2143,3'
          Dst:             __assert_fail
    - functionName:    ignore_token
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2079
      functionLinenumberEnd: 2095
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_debug
        - gumbo_token_destroy
      functionUses:    75
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2080,3'
          Dst:             gumbo_debug
        - Src:             'parser.c:2086,3'
          Dst:             gumbo_token_destroy
    - functionName:    adjust_svg_attributes
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2008
      functionLinenumberEnd: 2023
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - gumbo_free
        - gumbo_get_svg_attr_replacement
        - gumbo_strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2009,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2013,44'
          Dst:             gumbo_get_svg_attr_replacement
        - Src:             'parser.c:2020,5'
          Dst:             gumbo_free
        - Src:             'parser.c:2021,18'
          Dst:             gumbo_strdup
    - functionName:    insert_foreign_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1217
      functionLinenumberEnd: 1248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - attribute_matches_case_sensitive
        - create_element_from_token
        - gumbo_debug
        - gumbo_normalized_tagname
        - insert_element
        - parser_add_parse_error
        - token_has_attribute
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1218,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1219,24'
          Dst:             create_element_from_token
        - Src:             'parser.c:1220,3'
          Dst:             insert_element
        - Src:             'parser.c:1223,5'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:1221,3'
          Dst:             gumbo_debug
        - Src:             'parser.c:1227,5'
          Dst:             token_has_attribute
        - Src:             'parser.c:1228,9'
          Dst:             attribute_matches_case_sensitive
        - Src:             'parser.c:1236,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:1239,5'
          Dst:             token_has_attribute
        - Src:             'parser.c:1240,9'
          Dst:             attribute_matches_case_sensitive
        - Src:             'parser.c:1246,5'
          Dst:             parser_add_parse_error
    - functionName:    create_element_from_token
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          196
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - create_node
        - gumbo_normalized_tagname
        - gumbo_vector_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1116,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1128,21'
          Dst:             create_node
        - Src:             'parser.c:1130,3'
          Dst:             gumbo_vector_init
        - Src:             'parser.c:1133,55'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:1136,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1137,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1138,3'
          Dst:             __assert_fail
    - functionName:    insert_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_appropriate_insertion_location
        - gumbo_vector_add
        - insert_node
        - maybe_flush_text_node_buffer
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1168,5'
          Dst:             maybe_flush_text_node_buffer
        - Src:             'parser.c:1170,32'
          Dst:             get_appropriate_insertion_location
        - Src:             'parser.c:1171,3'
          Dst:             insert_node
        - Src:             'parser.c:1172,3'
          Dst:             gumbo_vector_add
    - functionName:    attribute_matches_case_sensitive
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_get_attribute
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:286,32'
          Dst:             gumbo_get_attribute
        - Src:             'parser.c:287,17'
          Dst:             strcmp
    - functionName:    strcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    adjust_foreign_attributes
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1968
      functionLinenumberEnd: 1984
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          97
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - gumbo_free
        - gumbo_get_foreign_attr_replacement
        - gumbo_strdup
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1969,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1975,7'
          Dst:             strlen
        - Src:             'parser.c:1973,43'
          Dst:             gumbo_get_foreign_attr_replacement
        - Src:             'parser.c:1980,5'
          Dst:             gumbo_free
        - Src:             'parser.c:1982,18'
          Dst:             gumbo_strdup
    - functionName:    adjust_mathml_attributes
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2028
      functionLinenumberEnd: 2039
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - gumbo_free
        - gumbo_get_attribute
        - gumbo_strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2029,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2030,26'
          Dst:             gumbo_get_attribute
        - Src:             'parser.c:2037,3'
          Dst:             gumbo_free
        - Src:             'parser.c:2038,16'
          Dst:             gumbo_strdup
    - functionName:    adoption_agency_algorithm
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2150
      functionLinenumberEnd: 2441
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         129
      ICount:          831
      EdgeCount:       153
      CyclomaticComplexity: 26
      functionsReached:
        - __assert_fail
        - append_node
        - clone_node
        - get_appropriate_insertion_location
        - get_current_node
        - gumbo_debug
        - gumbo_normalized_tagname
        - gumbo_vector_index_of
        - gumbo_vector_insert_at
        - gumbo_vector_remove
        - gumbo_vector_remove_at
        - has_an_element_in_scope
        - in_body_any_other_end_tag
        - insert_node
        - is_special_node
        - node_html_tag_is
        - parser_add_parse_error
        - pop_current_node
        - remove_from_parent
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2152,3'
          Dst:             gumbo_debug
        - Src:             'parser.c:2158,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2161,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2164,29'
          Dst:             get_current_node
        - Src:             'parser.c:2166,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2167,14'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:2172,5'
          Dst:             pop_current_node
        - Src:             'parser.c:2184,9'
          Dst:             gumbo_debug
        - Src:             'parser.c:2189,11'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2192,44'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:2198,11'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:2196,9'
          Dst:             gumbo_debug
        - Src:             'parser.c:2208,7'
          Dst:             gumbo_debug
        - Src:             'parser.c:2209,7'
          Dst:             in_body_any_other_end_tag
        - Src:             'parser.c:2215,7'
          Dst:             gumbo_debug
        - Src:             'parser.c:2216,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2217,7'
          Dst:             gumbo_vector_remove
        - Src:             'parser.c:2225,10'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:2226,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2227,7'
          Dst:             gumbo_debug
        - Src:             'parser.c:2232,28'
          Dst:             get_current_node
        - Src:             'parser.c:2233,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2234,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2235,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2235,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2236,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2236,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2245,7'
          Dst:             __assert_fail
        - Src:             'parser.c:2247,11'
          Dst:             is_special_node
        - Src:             'parser.c:2254,14'
          Dst:             pop_current_node
        - Src:             'parser.c:2256,7'
          Dst:             gumbo_vector_remove
        - Src:             'parser.c:2262,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2262,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2272,7'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:2273,7'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:2270,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:2277,24'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:2281,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:2287,28'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:2288,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2294,24'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:2295,7'
          Dst:             gumbo_debug
        - Src:             'parser.c:2304,7'
          Dst:             __assert_fail
        - Src:             'parser.c:2305,7'
          Dst:             __assert_fail
        - Src:             'parser.c:2307,7'
          Dst:             __assert_fail
        - Src:             'parser.c:2312,30'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:2318,9'
          Dst:             gumbo_debug
        - Src:             'parser.c:2319,9'
          Dst:             gumbo_vector_remove_at
        - Src:             'parser.c:2327,11'
          Dst:             gumbo_debug
        - Src:             'parser.c:2333,9'
          Dst:             gumbo_vector_remove_at
        - Src:             'parser.c:2339,14'
          Dst:             clone_node
        - Src:             'parser.c:2340,7'
          Dst:             __assert_fail
        - Src:             'parser.c:2342,7'
          Dst:             __assert_fail
        - Src:             'parser.c:2347,9'
          Dst:             gumbo_debug
        - Src:             'parser.c:2348,9'
          Dst:             __assert_fail
        - Src:             'parser.c:2352,7'
          Dst:             remove_from_parent
        - Src:             'parser.c:2353,7'
          Dst:             append_node
        - Src:             'parser.c:2361,7'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:2359,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:2363,5'
          Dst:             remove_from_parent
        - Src:             'parser.c:2365,34'
          Dst:             get_appropriate_insertion_location
        - Src:             'parser.c:2371,7'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:2369,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:2373,5'
          Dst:             insert_node
        - Src:             'parser.c:2376,38'
          Dst:             clone_node
        - Src:             'parser.c:2397,5'
          Dst:             append_node
        - Src:             'parser.c:2403,33'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:2407,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2409,7'
          Dst:             gumbo_debug
        - Src:             'parser.c:2415,5'
          Dst:             gumbo_vector_remove_at
        - Src:             'parser.c:2419,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2420,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2421,5'
          Dst:             gumbo_vector_insert_at
        - Src:             'parser.c:2428,5'
          Dst:             gumbo_vector_remove
        - Src:             'parser.c:2429,25'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:2433,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2434,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2435,5'
          Dst:             gumbo_vector_insert_at
    - functionName:    has_an_element_in_scope
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1637
      functionLinenumberEnd: 1639
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - has_an_element_in_specific_scope
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1639,10'
          Dst:             has_an_element_in_specific_scope
    - functionName:    find_last_anchor_index
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1295
      functionLinenumberEnd: 1308
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - node_html_tag_is
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1302,9'
          Dst:             node_html_tag_is
    - functionName:    has_an_element_in_scope_with_tagname
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1674
      functionLinenumberEnd: 1676
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - has_an_element_in_specific_scope
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1676,10'
          Dst:             has_an_element_in_specific_scope
    - functionName:    has_an_element_in_list_scope
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1680
      functionLinenumberEnd: 1682
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - has_an_element_in_specific_scope
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1682,10'
          Dst:             has_an_element_in_specific_scope
    - functionName:    has_an_element_in_button_scope
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1686
      functionLinenumberEnd: 1688
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - has_an_element_in_specific_scope
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1688,10'
          Dst:             has_an_element_in_specific_scope
    - functionName:    has_node_in_scope
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1648
      functionLinenumberEnd: 1666
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          94
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - node_tag_in_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1660,9'
          Dst:             node_tag_in_set
        - Src:             'parser.c:1664,3'
          Dst:             __assert_fail
    - functionName:    implicitly_close_tags
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1866
      functionLinenumberEnd: 1879
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          80
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - generate_implied_end_tags
        - get_current_node
        - node_qualified_tag_is
        - parser_add_parse_error
        - pop_current_node
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1867,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1868,3'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:1869,30'
          Dst:             get_current_node
        - Src:             'parser.c:1869,8'
          Dst:             node_qualified_tag_is
        - Src:             'parser.c:1870,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:1872,30'
          Dst:             get_current_node
        - Src:             'parser.c:1872,8'
          Dst:             node_qualified_tag_is
        - Src:             'parser.c:1874,7'
          Dst:             pop_current_node
        - Src:             'parser.c:1877,3'
          Dst:             get_current_node
        - Src:             'parser.c:1877,3'
          Dst:             node_qualified_tag_is
        - Src:             'parser.c:1877,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1878,3'
          Dst:             pop_current_node
    - functionName:    maybe_implicitly_close_list_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1905
      functionLinenumberEnd: 1931
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          115
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - implicitly_close_tags
        - is_special_node
        - node_html_tag_is
        - node_tag_in_set
        - set_frameset_not_ok
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1907,3'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:1911,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:1912,9'
          Dst:             node_tag_in_set
        - Src:             'parser.c:1915,7'
          Dst:             implicitly_close_tags
        - Src:             'parser.c:1925,7'
          Dst:             is_special_node
        - Src:             'parser.c:1926,11'
          Dst:             node_tag_in_set
    - functionName:    set_frameset_not_ok
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_debug
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:308,3'
          Dst:             gumbo_debug
    - functionName:    maybe_implicitly_close_p_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1888
      functionLinenumberEnd: 1897
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - has_an_element_in_button_scope
        - implicitly_close_tags
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1889,7'
          Dst:             has_an_element_in_button_scope
        - Src:             'parser.c:1890,5'
          Dst:             implicitly_close_tags
    - functionName:    stack_contains_nonclosable_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1743
      functionLinenumberEnd: 1755
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - node_tag_in_set
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1751,10'
          Dst:             node_tag_in_set
    - functionName:    merge_attributes
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1936
      functionLinenumberEnd: 1963
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          117
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - gumbo_get_attribute
        - gumbo_token_destroy
        - gumbo_vector_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1937,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1938,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1944,10'
          Dst:             gumbo_get_attribute
        - Src:             'parser.c:1948,7'
          Dst:             gumbo_vector_add
        - Src:             'parser.c:1956,3'
          Dst:             gumbo_token_destroy
    - functionName:    reconstruct_active_formatting_elements
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1423
      functionLinenumberEnd: 1487
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          219
      EdgeCount:       41
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - clone_node
        - get_appropriate_insertion_location
        - get_current_node
        - gumbo_debug
        - gumbo_normalized_tagname
        - gumbo_vector_add
        - insert_node
        - is_open_element
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1435,8'
          Dst:             is_open_element
        - Src:             'parser.c:1451,9'
          Dst:             is_open_element
        - Src:             'parser.c:1458,30'
          Dst:             get_current_node
        - Src:             'parser.c:1458,5'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:1455,3'
          Dst:             gumbo_debug
        - Src:             'parser.c:1462,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1463,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1465,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1466,24'
          Dst:             clone_node
        - Src:             'parser.c:1472,9'
          Dst:             get_appropriate_insertion_location
        - Src:             'parser.c:1473,5'
          Dst:             insert_node
        - Src:             'parser.c:1474,5'
          Dst:             gumbo_vector_add
        - Src:             'parser.c:1483,7'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:1481,5'
          Dst:             gumbo_debug
    - functionName:    all_attributes_match
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - attribute_matches_case_sensitive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:298,9'
          Dst:             attribute_matches_case_sensitive
    - functionName:    count_formatting_elements_of_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1318
      functionLinenumberEnd: 1341
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          112
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - all_attributes_match
        - node_qualified_tagname_is
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1327,5'
          Dst:             __assert_fail
        - Src:             'parser.c:1329,7'
          Dst:             node_qualified_tagname_is
        - Src:             'parser.c:1335,10'
          Dst:             all_attributes_match
    - functionName:    pop_template_insertion_mode
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 530
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_vector_pop
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:529,3'
          Dst:             gumbo_vector_pop
    - functionName:    generate_all_implied_end_tags_thoroughly
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1725
      functionLinenumberEnd: 1734
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_current_node
        - node_tag_in_set
        - pop_current_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1731,26'
          Dst:             get_current_node
        - Src:             'parser.c:1731,10'
          Dst:             node_tag_in_set
        - Src:             'parser.c:1732,5'
          Dst:             pop_current_node
    - functionName:    has_open_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1600
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - has_an_element_in_specific_scope
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1600,10'
          Dst:             has_an_element_in_specific_scope
    - functionName:    add_formatting_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1345
      functionLinenumberEnd: 1375
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - count_formatting_elements_of_tag
        - gumbo_debug
        - gumbo_vector_add
        - gumbo_vector_remove_at
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1346,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1352,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:1354,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:1359,32'
          Dst:             count_formatting_elements_of_tag
        - Src:             'parser.c:1367,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:1371,5'
          Dst:             gumbo_vector_remove_at
        - Src:             'parser.c:1374,3'
          Dst:             gumbo_vector_add
    - functionName:    run_generic_parsing_algorithm
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1281
      functionLinenumberEnd: 1287
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_tokenizer_set_state
        - insert_element_from_token
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1282,3'
          Dst:             insert_element_from_token
        - Src:             'parser.c:1283,3'
          Dst:             gumbo_tokenizer_set_state
    - functionName:    insert_element_from_token
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1181
      functionLinenumberEnd: 1189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_element_from_token
        - gumbo_debug
        - gumbo_normalized_tagname
        - insert_element
      functionUses:    45
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1182,24'
          Dst:             create_element_from_token
        - Src:             'parser.c:1183,3'
          Dst:             insert_element
        - Src:             'parser.c:1186,5'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:1184,3'
          Dst:             gumbo_debug
    - functionName:    acknowledge_self_closing_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1289
      functionLinenumberEnd: 1291
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    insert_text_token
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1251
      functionLinenumberEnd: 1274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          135
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - gumbo_debug
        - gumbo_string_buffer_append_codepoint
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1252,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1264,3'
          Dst:             gumbo_string_buffer_append_codepoint
        - Src:             'parser.c:1273,3'
          Dst:             gumbo_debug
    - functionName:    maybe_add_doctype_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2044
      functionLinenumberEnd: 2054
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          67
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - parser_add_parse_error
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2047,5'
          Dst:             strcmp
        - Src:             'parser.c:2050,12'
          Dst:             strcmp
        - Src:             'parser.c:2052,5'
          Dst:             parser_add_parse_error
    - functionName:    compute_quirks_mode
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1546
      functionLinenumberEnd: 1554
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - gumbo_compute_quirks_mode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1549,10'
          Dst:             gumbo_compute_quirks_mode
    - functionName:    gumbo_compute_quirks_mode
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1508
      functionLinenumberEnd: 1544
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          146
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - is_in_static_list
        - strcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1512,26'
          Dst:             strlen
        - Src:             'parser.c:1516,26'
          Dst:             strlen
        - Src:             'parser.c:1521,8'
          Dst:             strcmp
        - Src:             'parser.c:1522,8'
          Dst:             is_in_static_list
        - Src:             'parser.c:1523,8'
          Dst:             is_in_static_list
        - Src:             'parser.c:1524,8'
          Dst:             is_in_static_list
        - Src:             'parser.c:1527,10'
          Dst:             is_in_static_list
        - Src:             'parser.c:1534,5'
          Dst:             is_in_static_list
        - Src:             'parser.c:1537,10'
          Dst:             is_in_static_list
    - functionName:    is_in_static_list
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          102
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - gumbo_string_equals_ignore_case
        - gumbo_string_prefix_ignore_case
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:502,11'
          Dst:             gumbo_string_equals_ignore_case
        - Src:             'parser.c:507,11'
          Dst:             gumbo_string_prefix_ignore_case
    - functionName:    append_comment_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1052
      functionLinenumberEnd: 1061
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - append_node
        - create_node
        - maybe_flush_text_node_buffer
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1053,3'
          Dst:             maybe_flush_text_node_buffer
        - Src:             'parser.c:1054,24'
          Dst:             create_node
        - Src:             'parser.c:1060,3'
          Dst:             append_node
    - functionName:    handle_after_after_frameset
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4347
      functionLinenumberEnd: 4369
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          90
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - append_comment_node
        - get_document_node
        - handle_in_body
        - handle_in_head
        - ignore_token
        - parser_add_parse_error
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4349,33'
          Dst:             get_document_node
        - Src:             'parser.c:4349,5'
          Dst:             append_comment_node
        - Src:             'parser.c:4355,8'
          Dst:             tag_is
        - Src:             'parser.c:4357,5'
          Dst:             handle_in_body
        - Src:             'parser.c:4363,7'
          Dst:             tag_is
        - Src:             'parser.c:4364,5'
          Dst:             handle_in_head
        - Src:             'parser.c:4367,3'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4368,3'
          Dst:             ignore_token
    - functionName:    tag_is
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    99
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_in_body
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2806
      functionLinenumberEnd: 3423
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         294
      ICount:          1733
      EdgeCount:       406
      CyclomaticComplexity: 114
      functionsReached:
        - __assert_fail
        - acknowledge_self_closing_tag
        - add_formatting_element
        - adjust_foreign_attributes
        - adjust_mathml_attributes
        - adjust_svg_attributes
        - adoption_agency_algorithm
        - append_comment_node
        - attribute_matches
        - clear_active_formatting_elements
        - destroy_node
        - find_last_anchor_index
        - generate_implied_end_tags
        - get_current_node
        - get_current_template_insertion_mode
        - get_document_node
        - gumbo_debug
        - gumbo_tokenizer_set_state
        - gumbo_vector_index_of
        - gumbo_vector_remove
        - gumbo_vector_remove_at
        - handle_in_head
        - handle_in_template
        - has_an_element_in_button_scope
        - has_an_element_in_list_scope
        - has_an_element_in_scope
        - has_an_element_in_scope_with_tagname
        - has_node_in_scope
        - has_open_element
        - ignore_token
        - implicitly_close_tags
        - in_body_any_other_end_tag
        - insert_element_from_token
        - insert_element_of_tag_type
        - insert_foreign_element
        - insert_text_token
        - maybe_flush_text_node_buffer
        - maybe_implicitly_close_list_tag
        - maybe_implicitly_close_p_tag
        - merge_attributes
        - node_html_tag_is
        - node_tag_in_set
        - parser_add_parse_error
        - pop_current_node
        - reconstruct_active_formatting_elements
        - record_end_of_element
        - run_generic_parsing_algorithm
        - set_frameset_not_ok
        - set_insertion_mode
        - stack_contains_nonclosable_element
        - tag_in
        - tag_is
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2808,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2810,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2811,5'
          Dst:             ignore_token
        - Src:             'parser.c:2815,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:2816,5'
          Dst:             insert_text_token
        - Src:             'parser.c:2823,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:2824,5'
          Dst:             insert_text_token
        - Src:             'parser.c:2825,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:2829,33'
          Dst:             get_current_node
        - Src:             'parser.c:2829,5'
          Dst:             append_comment_node
        - Src:             'parser.c:2833,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2834,5'
          Dst:             ignore_token
        - Src:             'parser.c:2837,7'
          Dst:             tag_is
        - Src:             'parser.c:2838,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2839,9'
          Dst:             has_open_element
        - Src:             'parser.c:2840,7'
          Dst:             ignore_token
        - Src:             'parser.c:2843,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2844,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2845,5'
          Dst:             merge_attributes
        - Src:             'parser.c:2849,5'
          Dst:             tag_in
        - Src:             'parser.c:2854,8'
          Dst:             tag_is
        - Src:             'parser.c:2856,5'
          Dst:             handle_in_head
        - Src:             'parser.c:2859,7'
          Dst:             tag_is
        - Src:             'parser.c:2860,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2863,11'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2864,10'
          Dst:             has_open_element
        - Src:             'parser.c:2866,7'
          Dst:             ignore_token
        - Src:             'parser.c:2868,7'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:2869,7'
          Dst:             merge_attributes
        - Src:             'parser.c:2873,7'
          Dst:             tag_is
        - Src:             'parser.c:2874,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2877,11'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2880,7'
          Dst:             ignore_token
        - Src:             'parser.c:2889,14'
          Dst:             pop_current_node
        - Src:             'parser.c:2897,5'
          Dst:             clear_active_formatting_elements
        - Src:             'parser.c:2904,9'
          Dst:             gumbo_vector_remove_at
        - Src:             'parser.c:2908,5'
          Dst:             destroy_node
        - Src:             'parser.c:2911,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2912,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2916,9'
          Dst:             get_current_template_insertion_mode
        - Src:             'parser.c:2918,7'
          Dst:             handle_in_template
        - Src:             'parser.c:2921,9'
          Dst:             stack_contains_nonclosable_element
        - Src:             'parser.c:2922,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2925,7'
          Dst:             tag_is
        - Src:             'parser.c:2926,10'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:2927,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2928,7'
          Dst:             ignore_token
        - Src:             'parser.c:2931,9'
          Dst:             stack_contains_nonclosable_element
        - Src:             'parser.c:2932,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2934,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2934,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2935,5'
          Dst:             record_end_of_element
        - Src:             'parser.c:2936,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2939,7'
          Dst:             tag_is
        - Src:             'parser.c:2940,10'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:2941,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2942,7'
          Dst:             ignore_token
        - Src:             'parser.c:2945,9'
          Dst:             stack_contains_nonclosable_element
        - Src:             'parser.c:2946,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2947,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2952,5'
          Dst:             tag_in
        - Src:             'parser.c:2960,5'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:2961,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2964,7'
          Dst:             tag_in
        - Src:             'parser.c:2965,5'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:2966,25'
          Dst:             get_current_node
        - Src:             'parser.c:2966,9'
          Dst:             node_tag_in_set
        - Src:             'parser.c:2967,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2968,7'
          Dst:             pop_current_node
        - Src:             'parser.c:2970,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2973,7'
          Dst:             tag_in
        - Src:             'parser.c:2974,5'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:2975,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2977,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:2980,7'
          Dst:             tag_is
        - Src:             'parser.c:2983,11'
          Dst:             has_open_element
        - Src:             'parser.c:2985,7'
          Dst:             gumbo_debug
        - Src:             'parser.c:2986,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2987,7'
          Dst:             ignore_token
        - Src:             'parser.c:2990,5'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:2991,31'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2992,10'
          Dst:             has_open_element
        - Src:             'parser.c:2997,7'
          Dst:             tag_is
        - Src:             'parser.c:2998,5'
          Dst:             maybe_implicitly_close_list_tag
        - Src:             'parser.c:2999,5'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:3000,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3003,7'
          Dst:             tag_in
        - Src:             'parser.c:3004,5'
          Dst:             maybe_implicitly_close_list_tag
        - Src:             'parser.c:3005,5'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:3006,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3009,7'
          Dst:             tag_is
        - Src:             'parser.c:3010,5'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:3011,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3012,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'parser.c:3015,7'
          Dst:             tag_is
        - Src:             'parser.c:3016,9'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:3017,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3020,7'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:3021,32'
          Dst:             pop_current_node
        - Src:             'parser.c:3021,15'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3024,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3025,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3026,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3030,5'
          Dst:             tag_in
        - Src:             'parser.c:3039,10'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:3040,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3041,7'
          Dst:             ignore_token
        - Src:             'parser.c:3044,12'
          Dst:             implicitly_close_tags
        - Src:             'parser.c:3051,7'
          Dst:             tag_is
        - Src:             'parser.c:3052,9'
          Dst:             has_open_element
        - Src:             'parser.c:3053,12'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:3054,9'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3055,9'
          Dst:             ignore_token
        - Src:             'parser.c:3058,7'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:3059,29'
          Dst:             get_current_node
        - Src:             'parser.c:3059,12'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3060,9'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3061,32'
          Dst:             pop_current_node
        - Src:             'parser.c:3061,15'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3066,7'
          Dst:             __assert_fail
        - Src:             'parser.c:3068,21'
          Dst:             has_node_in_scope
        - Src:             'parser.c:3069,9'
          Dst:             gumbo_debug
        - Src:             'parser.c:3070,9'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3071,9'
          Dst:             ignore_token
        - Src:             'parser.c:3076,7'
          Dst:             maybe_flush_text_node_buffer
        - Src:             'parser.c:3079,7'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:3080,11'
          Dst:             get_current_node
        - Src:             'parser.c:3081,9'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3083,9'
          Dst:             record_end_of_element
        - Src:             'parser.c:3086,19'
          Dst:             gumbo_vector_index_of
        - Src:             'parser.c:3087,7'
          Dst:             __assert_fail
        - Src:             'parser.c:3088,7'
          Dst:             gumbo_vector_remove_at
        - Src:             'parser.c:3092,7'
          Dst:             tag_is
        - Src:             'parser.c:3093,10'
          Dst:             has_an_element_in_button_scope
        - Src:             'parser.c:3094,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3096,7'
          Dst:             insert_element_of_tag_type
        - Src:             'parser.c:3102,5'
          Dst:             implicitly_close_tags
        - Src:             'parser.c:3110,7'
          Dst:             tag_is
        - Src:             'parser.c:3111,10'
          Dst:             has_an_element_in_list_scope
        - Src:             'parser.c:3112,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3113,7'
          Dst:             ignore_token
        - Src:             'parser.c:3116,5'
          Dst:             implicitly_close_tags
        - Src:             'parser.c:3124,7'
          Dst:             tag_in
        - Src:             'parser.c:3126,10'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:3127,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3128,7'
          Dst:             ignore_token
        - Src:             'parser.c:3131,5'
          Dst:             implicitly_close_tags
        - Src:             'parser.c:3139,7'
          Dst:             tag_in
        - Src:             'parser.c:3141,8'
          Dst:             has_an_element_in_scope_with_tagname
        - Src:             'parser.c:3147,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3148,7'
          Dst:             ignore_token
        - Src:             'parser.c:3151,5'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:3152,37'
          Dst:             get_current_node
        - Src:             'parser.c:3153,10'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3158,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3161,22'
          Dst:             pop_current_node
        - Src:             'parser.c:3162,15'
          Dst:             node_tag_in_set
        - Src:             'parser.c:3165,7'
          Dst:             tag_is
        - Src:             'parser.c:3167,26'
          Dst:             find_last_anchor_index
        - Src:             'parser.c:3169,7'
          Dst:             __assert_fail
        - Src:             'parser.c:3170,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3171,13'
          Dst:             adoption_agency_algorithm
        - Src:             'parser.c:3176,11'
          Dst:             find_last_anchor_index
        - Src:             'parser.c:3177,30'
          Dst:             gumbo_vector_remove_at
        - Src:             'parser.c:3181,9'
          Dst:             gumbo_vector_remove
        - Src:             'parser.c:3184,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3185,36'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3185,5'
          Dst:             add_formatting_element
        - Src:             'parser.c:3189,5'
          Dst:             tag_in
        - Src:             'parser.c:3194,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3195,36'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3195,5'
          Dst:             add_formatting_element
        - Src:             'parser.c:3198,7'
          Dst:             tag_is
        - Src:             'parser.c:3199,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3200,9'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:3201,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3202,7'
          Dst:             adoption_agency_algorithm
        - Src:             'parser.c:3203,7'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3205,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3206,36'
          Dst:             get_current_node
        - Src:             'parser.c:3206,5'
          Dst:             add_formatting_element
        - Src:             'parser.c:3210,5'
          Dst:             tag_in
        - Src:             'parser.c:3216,5'
          Dst:             adoption_agency_algorithm
        - Src:             'parser.c:3220,5'
          Dst:             tag_in
        - Src:             'parser.c:3222,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3223,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3224,5'
          Dst:             add_formatting_element
        - Src:             'parser.c:3225,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3229,5'
          Dst:             tag_in
        - Src:             'parser.c:3232,10'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:3233,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3234,7'
          Dst:             ignore_token
        - Src:             'parser.c:3237,5'
          Dst:             implicitly_close_tags
        - Src:             'parser.c:3238,5'
          Dst:             clear_active_formatting_elements
        - Src:             'parser.c:3241,7'
          Dst:             tag_is
        - Src:             'parser.c:3243,7'
          Dst:             get_document_node
        - Src:             'parser.c:3246,7'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:3248,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3249,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3250,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3253,7'
          Dst:             tag_is
        - Src:             'parser.c:3254,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3255,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3256,5'
          Dst:             insert_element_of_tag_type
        - Src:             'parser.c:3261,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3262,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3263,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3267,5'
          Dst:             tag_in
        - Src:             'parser.c:3272,21'
          Dst:             tag_is
        - Src:             'parser.c:3274,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3277,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3278,23'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3281,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3282,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3283,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3286,7'
          Dst:             tag_is
        - Src:             'parser.c:3287,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3288,24'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3289,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3290,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3291,10'
          Dst:             attribute_matches
        - Src:             'parser.c:3292,7'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3296,5'
          Dst:             tag_in
        - Src:             'parser.c:3298,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3299,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3300,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3303,7'
          Dst:             tag_is
        - Src:             'parser.c:3304,5'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:3305,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3306,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3307,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3308,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3311,7'
          Dst:             tag_is
        - Src:             'parser.c:3312,5'
          Dst:             run_generic_parsing_algorithm
        - Src:             'parser.c:3314,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3317,7'
          Dst:             tag_is
        - Src:             'parser.c:3318,5'
          Dst:             maybe_implicitly_close_p_tag
        - Src:             'parser.c:3319,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3320,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3321,5'
          Dst:             run_generic_parsing_algorithm
        - Src:             'parser.c:3324,7'
          Dst:             tag_is
        - Src:             'parser.c:3325,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3326,5'
          Dst:             run_generic_parsing_algorithm
        - Src:             'parser.c:3330,5'
          Dst:             tag_is
        - Src:             'parser.c:3331,9'
          Dst:             tag_is
        - Src:             'parser.c:3333,5'
          Dst:             run_generic_parsing_algorithm
        - Src:             'parser.c:3336,7'
          Dst:             tag_is
        - Src:             'parser.c:3337,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3338,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3339,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3348,7'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3350,7'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3355,5'
          Dst:             tag_in
        - Src:             'parser.c:3357,26'
          Dst:             get_current_node
        - Src:             'parser.c:3357,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3358,7'
          Dst:             pop_current_node
        - Src:             'parser.c:3360,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3361,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3364,7'
          Dst:             tag_in
        - Src:             'parser.c:3365,9'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:3366,7'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:3367,29'
          Dst:             get_current_node
        - Src:             'parser.c:3367,12'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3368,9'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3370,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3373,7'
          Dst:             tag_in
        - Src:             'parser.c:3374,9'
          Dst:             has_an_element_in_scope
        - Src:             'parser.c:3375,7'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:3376,28'
          Dst:             get_current_node
        - Src:             'parser.c:3377,12'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3378,12'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3379,9'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3382,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3385,7'
          Dst:             tag_is
        - Src:             'parser.c:3386,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3387,5'
          Dst:             adjust_mathml_attributes
        - Src:             'parser.c:3388,5'
          Dst:             adjust_foreign_attributes
        - Src:             'parser.c:3389,5'
          Dst:             insert_foreign_element
        - Src:             'parser.c:3391,7'
          Dst:             pop_current_node
        - Src:             'parser.c:3392,7'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3396,7'
          Dst:             tag_is
        - Src:             'parser.c:3397,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3398,5'
          Dst:             adjust_svg_attributes
        - Src:             'parser.c:3399,5'
          Dst:             adjust_foreign_attributes
        - Src:             'parser.c:3400,5'
          Dst:             insert_foreign_element
        - Src:             'parser.c:3402,7'
          Dst:             pop_current_node
        - Src:             'parser.c:3403,7'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3408,5'
          Dst:             tag_in
        - Src:             'parser.c:3413,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3414,5'
          Dst:             ignore_token
        - Src:             'parser.c:3418,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3419,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3422,3'
          Dst:             in_body_any_other_end_tag
    - functionName:    handle_in_head
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2580
      functionLinenumberEnd: 2688
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         54
      ICount:          314
      EdgeCount:       75
      CyclomaticComplexity: 23
      functionsReached:
        - __assert_fail
        - acknowledge_self_closing_tag
        - add_formatting_element
        - append_comment_node
        - clear_active_formatting_elements
        - generate_all_implied_end_tags_thoroughly
        - get_current_node
        - handle_in_body
        - has_open_element
        - ignore_token
        - insert_element_from_token
        - insert_text_token
        - node_html_tag_is
        - parser_add_parse_error
        - pop_current_node
        - pop_template_insertion_mode
        - push_template_insertion_mode
        - reset_insertion_mode_appropriately
        - run_generic_parsing_algorithm
        - set_frameset_not_ok
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2582,5'
          Dst:             insert_text_token
        - Src:             'parser.c:2586,33'
          Dst:             get_current_node
        - Src:             'parser.c:2586,5'
          Dst:             append_comment_node
        - Src:             'parser.c:2590,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2591,5'
          Dst:             ignore_token
        - Src:             'parser.c:2594,7'
          Dst:             tag_is
        - Src:             'parser.c:2595,12'
          Dst:             handle_in_body
        - Src:             'parser.c:2598,5'
          Dst:             tag_in
        - Src:             'parser.c:2602,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2603,5'
          Dst:             pop_current_node
        - Src:             'parser.c:2604,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:2607,7'
          Dst:             tag_is
        - Src:             'parser.c:2608,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2609,5'
          Dst:             pop_current_node
        - Src:             'parser.c:2610,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:2617,7'
          Dst:             tag_is
        - Src:             'parser.c:2618,5'
          Dst:             run_generic_parsing_algorithm
        - Src:             'parser.c:2622,5'
          Dst:             tag_in
        - Src:             'parser.c:2623,9'
          Dst:             tag_is
        - Src:             'parser.c:2625,5'
          Dst:             run_generic_parsing_algorithm
        - Src:             'parser.c:2628,7'
          Dst:             tag_is
        - Src:             'parser.c:2629,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2630,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2633,7'
          Dst:             tag_is
        - Src:             'parser.c:2634,5'
          Dst:             run_generic_parsing_algorithm
        - Src:             'parser.c:2637,7'
          Dst:             tag_is
        - Src:             'parser.c:2638,23'
          Dst:             pop_current_node
        - Src:             'parser.c:2640,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2640,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2641,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2645,5'
          Dst:             tag_in
        - Src:             'parser.c:2647,5'
          Dst:             pop_current_node
        - Src:             'parser.c:2648,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2652,7'
          Dst:             tag_is
        - Src:             'parser.c:2653,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2654,5'
          Dst:             add_formatting_element
        - Src:             'parser.c:2655,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:2656,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2657,5'
          Dst:             push_template_insertion_mode
        - Src:             'parser.c:2660,7'
          Dst:             tag_is
        - Src:             'parser.c:2661,10'
          Dst:             has_open_element
        - Src:             'parser.c:2662,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2663,7'
          Dst:             ignore_token
        - Src:             'parser.c:2666,5'
          Dst:             generate_all_implied_end_tags_thoroughly
        - Src:             'parser.c:2667,27'
          Dst:             get_current_node
        - Src:             'parser.c:2667,10'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2668,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2669,30'
          Dst:             pop_current_node
        - Src:             'parser.c:2669,13'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2671,5'
          Dst:             clear_active_formatting_elements
        - Src:             'parser.c:2672,5'
          Dst:             pop_template_insertion_mode
        - Src:             'parser.c:2673,5'
          Dst:             reset_insertion_mode_appropriately
        - Src:             'parser.c:2677,5'
          Dst:             tag_is
        - Src:             'parser.c:2680,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2681,5'
          Dst:             ignore_token
        - Src:             'parser.c:2684,3'
          Dst:             pop_current_node
        - Src:             'parser.c:2685,3'
          Dst:             set_insertion_mode
    - functionName:    tag_in
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 560
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          79
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    55
      BranchProfiles:  []
      Callsites:       []
    - functionName:    push_template_insertion_mode
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_vector_add
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:522,3'
          Dst:             gumbo_vector_add
    - functionName:    handle_in_template
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4093
      functionLinenumberEnd: 4175
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          217
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - clear_active_formatting_elements
        - handle_in_body
        - handle_in_head
        - has_open_element
        - ignore_token
        - node_html_tag_is
        - parser_add_parse_error
        - pop_current_node
        - pop_template_insertion_mode
        - push_template_insertion_mode
        - reset_insertion_mode_appropriately
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    1
      BranchProfiles:
        - Branch String:   'parser.c:4095,3'
          Branch Sides:    []
      Callsites:
        - Src:             'parser.c:4101,7'
          Dst:             handle_in_body
        - Src:             'parser.c:4107,5'
          Dst:             tag_in
        - Src:             'parser.c:4111,8'
          Dst:             tag_is
        - Src:             'parser.c:4113,5'
          Dst:             handle_in_head
        - Src:             'parser.c:4117,5'
          Dst:             tag_in
        - Src:             'parser.c:4121,5'
          Dst:             pop_template_insertion_mode
        - Src:             'parser.c:4122,5'
          Dst:             push_template_insertion_mode
        - Src:             'parser.c:4123,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:4127,7'
          Dst:             tag_is
        - Src:             'parser.c:4128,5'
          Dst:             pop_template_insertion_mode
        - Src:             'parser.c:4129,5'
          Dst:             push_template_insertion_mode
        - Src:             'parser.c:4130,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:4134,7'
          Dst:             tag_is
        - Src:             'parser.c:4135,5'
          Dst:             pop_template_insertion_mode
        - Src:             'parser.c:4136,5'
          Dst:             push_template_insertion_mode
        - Src:             'parser.c:4137,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:4141,7'
          Dst:             tag_in
        - Src:             'parser.c:4142,5'
          Dst:             pop_template_insertion_mode
        - Src:             'parser.c:4143,5'
          Dst:             push_template_insertion_mode
        - Src:             'parser.c:4144,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:4149,5'
          Dst:             pop_template_insertion_mode
        - Src:             'parser.c:4150,5'
          Dst:             push_template_insertion_mode
        - Src:             'parser.c:4151,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:4156,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4157,5'
          Dst:             ignore_token
        - Src:             'parser.c:4161,10'
          Dst:             has_open_element
        - Src:             'parser.c:4165,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4166,30'
          Dst:             pop_current_node
        - Src:             'parser.c:4166,13'
          Dst:             node_html_tag_is
        - Src:             'parser.c:4168,5'
          Dst:             clear_active_formatting_elements
        - Src:             'parser.c:4169,5'
          Dst:             pop_template_insertion_mode
        - Src:             'parser.c:4170,5'
          Dst:             reset_insertion_mode_appropriately
        - Src:             'parser.c:4174,3'
          Dst:             __assert_fail
    - functionName:    insert_element_of_tag_type
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1199
      functionLinenumberEnd: 1208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_element
        - gumbo_debug
        - gumbo_normalized_tagname
        - insert_element
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1200,24'
          Dst:             create_element
        - Src:             'parser.c:1202,3'
          Dst:             insert_element
        - Src:             'parser.c:1205,5'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:1203,3'
          Dst:             gumbo_debug
    - functionName:    attribute_matches
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_strcasecmp
        - gumbo_get_attribute
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:275,32'
          Dst:             gumbo_get_attribute
        - Src:             'parser.c:276,17'
          Dst:             gumbo_ascii_strcasecmp
    - functionName:    create_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1090
      functionLinenumberEnd: 1108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          105
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - create_node
        - gumbo_normalized_tagname
        - gumbo_vector_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:1093,3'
          Dst:             __assert_fail
        - Src:             'parser.c:1094,21'
          Dst:             create_node
        - Src:             'parser.c:1096,3'
          Dst:             gumbo_vector_init
        - Src:             'parser.c:1097,3'
          Dst:             gumbo_vector_init
        - Src:             'parser.c:1099,19'
          Dst:             gumbo_normalized_tagname
    - functionName:    handle_after_after_body
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4322
      functionLinenumberEnd: 4341
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - append_comment_node
        - get_document_node
        - handle_in_body
        - parser_add_parse_error
        - set_insertion_mode
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4324,33'
          Dst:             get_document_node
        - Src:             'parser.c:4324,5'
          Dst:             append_comment_node
        - Src:             'parser.c:4330,8'
          Dst:             tag_is
        - Src:             'parser.c:4332,5'
          Dst:             handle_in_body
        - Src:             'parser.c:4338,3'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4339,3'
          Dst:             set_insertion_mode
    - functionName:    handle_after_frameset
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4283
      functionLinenumberEnd: 4319
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          133
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - append_comment_node
        - get_current_node
        - handle_in_body
        - handle_in_head
        - ignore_token
        - insert_text_token
        - node_html_tag_is
        - parser_add_parse_error
        - record_end_of_element
        - set_insertion_mode
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4285,5'
          Dst:             insert_text_token
        - Src:             'parser.c:4289,33'
          Dst:             get_current_node
        - Src:             'parser.c:4289,5'
          Dst:             append_comment_node
        - Src:             'parser.c:4293,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4294,5'
          Dst:             ignore_token
        - Src:             'parser.c:4297,7'
          Dst:             tag_is
        - Src:             'parser.c:4298,5'
          Dst:             handle_in_body
        - Src:             'parser.c:4301,7'
          Dst:             tag_is
        - Src:             'parser.c:4303,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:4303,5'
          Dst:             __assert_fail
        - Src:             'parser.c:4304,5'
          Dst:             record_end_of_element
        - Src:             'parser.c:4308,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:4311,7'
          Dst:             tag_is
        - Src:             'parser.c:4312,12'
          Dst:             handle_in_head
        - Src:             'parser.c:4317,3'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4318,3'
          Dst:             ignore_token
    - functionName:    handle_in_frameset
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4226
      functionLinenumberEnd: 4280
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          173
      EdgeCount:       45
      CyclomaticComplexity: 15
      functionsReached:
        - acknowledge_self_closing_tag
        - append_comment_node
        - get_current_node
        - handle_in_body
        - handle_in_head
        - ignore_token
        - insert_element_from_token
        - insert_text_token
        - is_fragment_parser
        - node_html_tag_is
        - parser_add_parse_error
        - pop_current_node
        - set_insertion_mode
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4228,5'
          Dst:             insert_text_token
        - Src:             'parser.c:4232,33'
          Dst:             get_current_node
        - Src:             'parser.c:4232,5'
          Dst:             append_comment_node
        - Src:             'parser.c:4236,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4237,5'
          Dst:             ignore_token
        - Src:             'parser.c:4240,7'
          Dst:             tag_is
        - Src:             'parser.c:4241,5'
          Dst:             handle_in_body
        - Src:             'parser.c:4244,7'
          Dst:             tag_is
        - Src:             'parser.c:4245,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:4248,7'
          Dst:             tag_is
        - Src:             'parser.c:4249,26'
          Dst:             get_current_node
        - Src:             'parser.c:4249,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:4250,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4251,7'
          Dst:             ignore_token
        - Src:             'parser.c:4254,5'
          Dst:             pop_current_node
        - Src:             'parser.c:4256,8'
          Dst:             is_fragment_parser
        - Src:             'parser.c:4257,28'
          Dst:             get_current_node
        - Src:             'parser.c:4257,11'
          Dst:             node_html_tag_is
        - Src:             'parser.c:4259,7'
          Dst:             set_insertion_mode
        - Src:             'parser.c:4263,7'
          Dst:             tag_is
        - Src:             'parser.c:4264,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:4265,5'
          Dst:             pop_current_node
        - Src:             'parser.c:4266,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:4269,7'
          Dst:             tag_is
        - Src:             'parser.c:4270,5'
          Dst:             handle_in_head
        - Src:             'parser.c:4274,27'
          Dst:             get_current_node
        - Src:             'parser.c:4274,10'
          Dst:             node_html_tag_is
        - Src:             'parser.c:4275,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4278,3'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4279,3'
          Dst:             ignore_token
    - functionName:    handle_after_body
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4178
      functionLinenumberEnd: 4223
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          163
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - append_comment_node
        - handle_in_body
        - ignore_token
        - is_fragment_parser
        - node_html_tag_is
        - parser_add_parse_error
        - record_end_of_element
        - set_insertion_mode
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4181,8'
          Dst:             tag_is
        - Src:             'parser.c:4183,5'
          Dst:             handle_in_body
        - Src:             'parser.c:4188,5'
          Dst:             __assert_fail
        - Src:             'parser.c:4189,5'
          Dst:             append_comment_node
        - Src:             'parser.c:4193,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4194,5'
          Dst:             ignore_token
        - Src:             'parser.c:4197,7'
          Dst:             tag_is
        - Src:             'parser.c:4198,5'
          Dst:             handle_in_body
        - Src:             'parser.c:4201,7'
          Dst:             tag_is
        - Src:             'parser.c:4203,9'
          Dst:             is_fragment_parser
        - Src:             'parser.c:4204,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4205,7'
          Dst:             ignore_token
        - Src:             'parser.c:4208,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:4210,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:4210,5'
          Dst:             __assert_fail
        - Src:             'parser.c:4211,5'
          Dst:             record_end_of_element
        - Src:             'parser.c:4220,3'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4221,3'
          Dst:             set_insertion_mode
    - functionName:    handle_in_select_in_table
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4068
      functionLinenumberEnd: 4090
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - close_current_select
        - handle_in_select
        - has_an_element_in_table_scope
        - ignore_token
        - parser_add_parse_error
        - tag_in
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4073,7'
          Dst:             tag_in
        - Src:             'parser.c:4074,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4075,5'
          Dst:             close_current_select
        - Src:             'parser.c:4079,7'
          Dst:             tag_in
        - Src:             'parser.c:4080,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4081,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:4082,7'
          Dst:             ignore_token
        - Src:             'parser.c:4085,5'
          Dst:             close_current_select
        - Src:             'parser.c:4089,3'
          Dst:             handle_in_select
    - functionName:    handle_in_select
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3940
      functionLinenumberEnd: 4065
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         72
      ICount:          395
      EdgeCount:       101
      CyclomaticComplexity: 31
      functionsReached:
        - acknowledge_self_closing_tag
        - append_comment_node
        - close_current_select
        - get_current_node
        - handle_in_body
        - handle_in_head
        - has_an_element_in_select_scope
        - ignore_token
        - insert_element_from_token
        - insert_text_token
        - node_html_tag_is
        - parser_add_parse_error
        - pop_current_node
        - tag_in
        - tag_is
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:3942,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3943,5'
          Dst:             ignore_token
        - Src:             'parser.c:3950,5'
          Dst:             insert_text_token
        - Src:             'parser.c:3954,33'
          Dst:             get_current_node
        - Src:             'parser.c:3954,5'
          Dst:             append_comment_node
        - Src:             'parser.c:3958,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3959,5'
          Dst:             ignore_token
        - Src:             'parser.c:3962,7'
          Dst:             tag_is
        - Src:             'parser.c:3963,5'
          Dst:             handle_in_body
        - Src:             'parser.c:3966,7'
          Dst:             tag_is
        - Src:             'parser.c:3967,26'
          Dst:             get_current_node
        - Src:             'parser.c:3967,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3968,7'
          Dst:             pop_current_node
        - Src:             'parser.c:3970,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3973,7'
          Dst:             tag_is
        - Src:             'parser.c:3974,26'
          Dst:             get_current_node
        - Src:             'parser.c:3974,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3975,7'
          Dst:             pop_current_node
        - Src:             'parser.c:3977,26'
          Dst:             get_current_node
        - Src:             'parser.c:3977,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3978,7'
          Dst:             pop_current_node
        - Src:             'parser.c:3980,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3983,7'
          Dst:             tag_is
        - Src:             'parser.c:3984,26'
          Dst:             get_current_node
        - Src:             'parser.c:3984,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3985,7'
          Dst:             pop_current_node
        - Src:             'parser.c:3987,26'
          Dst:             get_current_node
        - Src:             'parser.c:3987,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3988,7'
          Dst:             pop_current_node
        - Src:             'parser.c:3990,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3991,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3992,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3995,7'
          Dst:             tag_is
        - Src:             'parser.c:3998,24'
          Dst:             get_current_node
        - Src:             'parser.c:3998,7'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3999,10'
          Dst:             node_html_tag_is
        - Src:             'parser.c:4004,7'
          Dst:             pop_current_node
        - Src:             'parser.c:4006,26'
          Dst:             get_current_node
        - Src:             'parser.c:4006,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:4007,7'
          Dst:             pop_current_node
        - Src:             'parser.c:4010,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4011,5'
          Dst:             ignore_token
        - Src:             'parser.c:4014,7'
          Dst:             tag_is
        - Src:             'parser.c:4015,26'
          Dst:             get_current_node
        - Src:             'parser.c:4015,9'
          Dst:             node_html_tag_is
        - Src:             'parser.c:4016,7'
          Dst:             pop_current_node
        - Src:             'parser.c:4019,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4020,5'
          Dst:             ignore_token
        - Src:             'parser.c:4023,7'
          Dst:             tag_is
        - Src:             'parser.c:4024,10'
          Dst:             has_an_element_in_select_scope
        - Src:             'parser.c:4025,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4026,7'
          Dst:             ignore_token
        - Src:             'parser.c:4029,5'
          Dst:             close_current_select
        - Src:             'parser.c:4032,7'
          Dst:             tag_is
        - Src:             'parser.c:4033,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4034,5'
          Dst:             ignore_token
        - Src:             'parser.c:4035,9'
          Dst:             has_an_element_in_select_scope
        - Src:             'parser.c:4036,7'
          Dst:             close_current_select
        - Src:             'parser.c:4041,5'
          Dst:             tag_in
        - Src:             'parser.c:4043,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4044,10'
          Dst:             has_an_element_in_select_scope
        - Src:             'parser.c:4045,7'
          Dst:             ignore_token
        - Src:             'parser.c:4047,7'
          Dst:             close_current_select
        - Src:             'parser.c:4053,5'
          Dst:             tag_in
        - Src:             'parser.c:4054,8'
          Dst:             tag_is
        - Src:             'parser.c:4056,5'
          Dst:             handle_in_head
        - Src:             'parser.c:4060,5'
          Dst:             handle_in_body
        - Src:             'parser.c:4063,3'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4064,3'
          Dst:             ignore_token
    - functionName:    handle_in_cell
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3882
      functionLinenumberEnd: 3937
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          141
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - close_current_cell
        - close_table_cell
        - gumbo_debug
        - handle_in_body
        - has_an_element_in_table_scope
        - ignore_token
        - parser_add_parse_error
        - tag_in
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:3883,7'
          Dst:             tag_in
        - Src:             'parser.c:3885,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3886,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3887,7'
          Dst:             ignore_token
        - Src:             'parser.c:3890,5'
          Dst:             close_table_cell
        - Src:             'parser.c:3894,5'
          Dst:             tag_in
        - Src:             'parser.c:3899,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:3901,8'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3902,11'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3904,7'
          Dst:             gumbo_debug
        - Src:             'parser.c:3905,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3906,7'
          Dst:             ignore_token
        - Src:             'parser.c:3910,5'
          Dst:             close_current_cell
        - Src:             'parser.c:3914,5'
          Dst:             tag_in
        - Src:             'parser.c:3918,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3919,5'
          Dst:             ignore_token
        - Src:             'parser.c:3923,5'
          Dst:             tag_in
        - Src:             'parser.c:3927,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3928,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3929,7'
          Dst:             ignore_token
        - Src:             'parser.c:3933,5'
          Dst:             close_current_cell
        - Src:             'parser.c:3936,3'
          Dst:             handle_in_body
    - functionName:    handle_in_row
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3813
      functionLinenumberEnd: 3879
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          168
      EdgeCount:       35
      CyclomaticComplexity: 12
      functionsReached:
        - add_formatting_element
        - clear_stack_to_table_row_context
        - handle_in_table
        - has_an_element_in_table_scope
        - ignore_token
        - insert_element_from_token
        - parser_add_parse_error
        - pop_current_node
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:3814,7'
          Dst:             tag_in
        - Src:             'parser.c:3815,5'
          Dst:             clear_stack_to_table_row_context
        - Src:             'parser.c:3816,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3817,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3818,5'
          Dst:             add_formatting_element
        - Src:             'parser.c:3821,7'
          Dst:             tag_is
        - Src:             'parser.c:3822,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3823,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3824,7'
          Dst:             ignore_token
        - Src:             'parser.c:3827,5'
          Dst:             clear_stack_to_table_row_context
        - Src:             'parser.c:3828,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3829,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3833,5'
          Dst:             tag_in
        - Src:             'parser.c:3837,8'
          Dst:             tag_is
        - Src:             'parser.c:3839,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3840,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3841,7'
          Dst:             ignore_token
        - Src:             'parser.c:3844,5'
          Dst:             clear_stack_to_table_row_context
        - Src:             'parser.c:3845,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3846,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3851,5'
          Dst:             tag_in
        - Src:             'parser.c:3853,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3854,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3855,7'
          Dst:             ignore_token
        - Src:             'parser.c:3858,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3859,7'
          Dst:             ignore_token
        - Src:             'parser.c:3862,5'
          Dst:             clear_stack_to_table_row_context
        - Src:             'parser.c:3863,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3864,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3869,5'
          Dst:             tag_in
        - Src:             'parser.c:3874,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3875,5'
          Dst:             ignore_token
        - Src:             'parser.c:3878,3'
          Dst:             handle_in_table
    - functionName:    handle_in_table
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3450
      functionLinenumberEnd: 3592
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         64
      ICount:          402
      EdgeCount:       88
      CyclomaticComplexity: 26
      functionsReached:
        - __assert_fail
        - acknowledge_self_closing_tag
        - add_formatting_element
        - append_comment_node
        - attribute_matches
        - clear_stack_to_table_context
        - close_table
        - get_current_node
        - handle_in_body
        - handle_in_head
        - has_open_element
        - ignore_token
        - insert_element_from_token
        - insert_element_of_tag_type
        - node_tag_in_set
        - parser_add_parse_error
        - pop_current_node
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:3456,24'
          Dst:             get_current_node
        - Src:             'parser.c:3456,8'
          Dst:             node_tag_in_set
        - Src:             'parser.c:3465,5'
          Dst:             __assert_fail
        - Src:             'parser.c:3466,5'
          Dst:             __assert_fail
        - Src:             'parser.c:3469,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3473,33'
          Dst:             get_current_node
        - Src:             'parser.c:3473,5'
          Dst:             append_comment_node
        - Src:             'parser.c:3477,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3478,5'
          Dst:             ignore_token
        - Src:             'parser.c:3481,7'
          Dst:             tag_is
        - Src:             'parser.c:3482,5'
          Dst:             clear_stack_to_table_context
        - Src:             'parser.c:3483,5'
          Dst:             add_formatting_element
        - Src:             'parser.c:3484,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3485,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3488,7'
          Dst:             tag_is
        - Src:             'parser.c:3489,5'
          Dst:             clear_stack_to_table_context
        - Src:             'parser.c:3490,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3491,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3494,7'
          Dst:             tag_is
        - Src:             'parser.c:3495,5'
          Dst:             clear_stack_to_table_context
        - Src:             'parser.c:3496,5'
          Dst:             insert_element_of_tag_type
        - Src:             'parser.c:3502,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3506,5'
          Dst:             tag_in
        - Src:             'parser.c:3510,5'
          Dst:             clear_stack_to_table_context
        - Src:             'parser.c:3511,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3512,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3516,5'
          Dst:             tag_in
        - Src:             'parser.c:3520,5'
          Dst:             clear_stack_to_table_context
        - Src:             'parser.c:3521,5'
          Dst:             insert_element_of_tag_type
        - Src:             'parser.c:3526,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3530,7'
          Dst:             tag_is
        - Src:             'parser.c:3531,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3532,9'
          Dst:             close_table
        - Src:             'parser.c:3535,7'
          Dst:             ignore_token
        - Src:             'parser.c:3539,7'
          Dst:             tag_is
        - Src:             'parser.c:3540,10'
          Dst:             close_table
        - Src:             'parser.c:3541,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3547,5'
          Dst:             tag_in
        - Src:             'parser.c:3552,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3553,5'
          Dst:             ignore_token
        - Src:             'parser.c:3557,5'
          Dst:             tag_in
        - Src:             'parser.c:3558,9'
          Dst:             tag_is
        - Src:             'parser.c:3560,5'
          Dst:             handle_in_head
        - Src:             'parser.c:3564,5'
          Dst:             tag_is
        - Src:             'parser.c:3565,8'
          Dst:             attribute_matches
        - Src:             'parser.c:3567,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3568,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3569,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3570,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3573,7'
          Dst:             tag_is
        - Src:             'parser.c:3574,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3575,33'
          Dst:             has_open_element
        - Src:             'parser.c:3576,7'
          Dst:             ignore_token
        - Src:             'parser.c:3579,28'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3580,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3584,5'
          Dst:             handle_in_body
        - Src:             'parser.c:3588,3'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3590,3'
          Dst:             handle_in_body
    - functionName:    handle_in_table_body
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3747
      functionLinenumberEnd: 3810
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          163
      EdgeCount:       36
      CyclomaticComplexity: 12
      functionsReached:
        - clear_stack_to_table_body_context
        - handle_in_table
        - has_an_element_in_table_scope
        - ignore_token
        - insert_element_from_token
        - insert_element_of_tag_type
        - parser_add_parse_error
        - pop_current_node
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:3748,7'
          Dst:             tag_is
        - Src:             'parser.c:3749,5'
          Dst:             clear_stack_to_table_body_context
        - Src:             'parser.c:3750,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3751,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3754,7'
          Dst:             tag_in
        - Src:             'parser.c:3755,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3756,5'
          Dst:             clear_stack_to_table_body_context
        - Src:             'parser.c:3757,5'
          Dst:             insert_element_of_tag_type
        - Src:             'parser.c:3758,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3763,5'
          Dst:             tag_in
        - Src:             'parser.c:3765,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3766,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3767,7'
          Dst:             ignore_token
        - Src:             'parser.c:3770,5'
          Dst:             clear_stack_to_table_body_context
        - Src:             'parser.c:3771,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3772,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3776,5'
          Dst:             tag_in
        - Src:             'parser.c:3780,8'
          Dst:             tag_is
        - Src:             'parser.c:3784,9'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3785,12'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3786,12'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3789,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3790,7'
          Dst:             ignore_token
        - Src:             'parser.c:3793,5'
          Dst:             clear_stack_to_table_body_context
        - Src:             'parser.c:3794,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3795,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3800,5'
          Dst:             tag_in
        - Src:             'parser.c:3805,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3806,5'
          Dst:             ignore_token
        - Src:             'parser.c:3809,3'
          Dst:             handle_in_table
    - functionName:    handle_in_column_group
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3686
      functionLinenumberEnd: 3744
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          175
      EdgeCount:       41
      CyclomaticComplexity: 14
      functionsReached:
        - acknowledge_self_closing_tag
        - append_comment_node
        - get_current_node
        - handle_in_body
        - handle_in_head
        - ignore_token
        - insert_element_from_token
        - insert_text_token
        - node_html_tag_is
        - parser_add_parse_error
        - pop_current_node
        - set_insertion_mode
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:3688,5'
          Dst:             insert_text_token
        - Src:             'parser.c:3692,33'
          Dst:             get_current_node
        - Src:             'parser.c:3692,5'
          Dst:             append_comment_node
        - Src:             'parser.c:3696,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3697,5'
          Dst:             ignore_token
        - Src:             'parser.c:3700,7'
          Dst:             tag_is
        - Src:             'parser.c:3701,5'
          Dst:             handle_in_body
        - Src:             'parser.c:3704,7'
          Dst:             tag_is
        - Src:             'parser.c:3705,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:3706,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3707,5'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:3710,7'
          Dst:             tag_is
        - Src:             'parser.c:3711,27'
          Dst:             get_current_node
        - Src:             'parser.c:3711,10'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3712,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3713,7'
          Dst:             ignore_token
        - Src:             'parser.c:3716,5'
          Dst:             pop_current_node
        - Src:             'parser.c:3717,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3720,7'
          Dst:             tag_is
        - Src:             'parser.c:3721,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3722,5'
          Dst:             ignore_token
        - Src:             'parser.c:3726,5'
          Dst:             tag_is
        - Src:             'parser.c:3727,8'
          Dst:             tag_is
        - Src:             'parser.c:3729,5'
          Dst:             handle_in_head
        - Src:             'parser.c:3733,5'
          Dst:             handle_in_body
        - Src:             'parser.c:3736,25'
          Dst:             get_current_node
        - Src:             'parser.c:3736,8'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3737,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3738,5'
          Dst:             ignore_token
        - Src:             'parser.c:3741,3'
          Dst:             pop_current_node
        - Src:             'parser.c:3742,3'
          Dst:             set_insertion_mode
    - functionName:    handle_in_caption
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3634
      functionLinenumberEnd: 3683
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          156
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - clear_active_formatting_elements
        - generate_implied_end_tags
        - get_current_node
        - handle_in_body
        - has_an_element_in_table_scope
        - ignore_token
        - node_html_tag_is
        - parser_add_parse_error
        - pop_current_node
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:3635,7'
          Dst:             tag_is
        - Src:             'parser.c:3636,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3637,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3638,7'
          Dst:             ignore_token
        - Src:             'parser.c:3641,5'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:3642,27'
          Dst:             get_current_node
        - Src:             'parser.c:3642,10'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3643,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3644,30'
          Dst:             pop_current_node
        - Src:             'parser.c:3644,13'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3646,5'
          Dst:             clear_active_formatting_elements
        - Src:             'parser.c:3647,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3651,5'
          Dst:             tag_in
        - Src:             'parser.c:3655,9'
          Dst:             tag_is
        - Src:             'parser.c:3657,10'
          Dst:             has_an_element_in_table_scope
        - Src:             'parser.c:3658,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3659,7'
          Dst:             ignore_token
        - Src:             'parser.c:3662,5'
          Dst:             generate_implied_end_tags
        - Src:             'parser.c:3663,27'
          Dst:             get_current_node
        - Src:             'parser.c:3663,10'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3664,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3665,30'
          Dst:             pop_current_node
        - Src:             'parser.c:3665,13'
          Dst:             node_html_tag_is
        - Src:             'parser.c:3667,5'
          Dst:             clear_active_formatting_elements
        - Src:             'parser.c:3668,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:3673,5'
          Dst:             tag_in
        - Src:             'parser.c:3678,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3679,5'
          Dst:             ignore_token
        - Src:             'parser.c:3682,3'
          Dst:             handle_in_body
    - functionName:    handle_in_table_text
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3595
      functionLinenumberEnd: 3631
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          133
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - gumbo_character_token_buffer_append
        - gumbo_character_token_buffer_clear
        - gumbo_character_token_buffer_get
        - ignore_token
        - insert_text_token
        - maybe_flush_text_node_buffer
        - parser_add_parse_error
        - reconstruct_active_formatting_elements
        - set_frameset_not_ok
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:3597,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3598,5'
          Dst:             ignore_token
        - Src:             'parser.c:3607,5'
          Dst:             insert_text_token
        - Src:             'parser.c:3608,5'
          Dst:             gumbo_character_token_buffer_append
        - Src:             'parser.c:3618,7'
          Dst:             gumbo_character_token_buffer_get
        - Src:             'parser.c:3620,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3623,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:3624,5'
          Dst:             reconstruct_active_formatting_elements
        - Src:             'parser.c:3626,3'
          Dst:             maybe_flush_text_node_buffer
        - Src:             'parser.c:3627,3'
          Dst:             gumbo_character_token_buffer_clear
    - functionName:    handle_text
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3426
      functionLinenumberEnd: 3447
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - insert_text_token
        - parser_add_parse_error
        - pop_current_node
        - set_insertion_mode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:3431,5'
          Dst:             insert_text_token
        - Src:             'parser.c:3442,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:3445,3'
          Dst:             pop_current_node
        - Src:             'parser.c:3446,3'
          Dst:             set_insertion_mode
    - functionName:    handle_after_head
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2739
      functionLinenumberEnd: 2803
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          195
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - __assert_fail
        - append_comment_node
        - get_current_node
        - gumbo_vector_add
        - gumbo_vector_remove
        - handle_in_body
        - handle_in_head
        - ignore_token
        - insert_element_from_token
        - insert_element_of_tag_type
        - insert_text_token
        - maybe_flush_text_node_buffer
        - parser_add_parse_error
        - set_frameset_not_ok
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2742,5'
          Dst:             insert_text_token
        - Src:             'parser.c:2746,33'
          Dst:             get_current_node
        - Src:             'parser.c:2746,5'
          Dst:             append_comment_node
        - Src:             'parser.c:2750,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2751,5'
          Dst:             ignore_token
        - Src:             'parser.c:2754,7'
          Dst:             tag_is
        - Src:             'parser.c:2755,5'
          Dst:             handle_in_body
        - Src:             'parser.c:2758,7'
          Dst:             tag_is
        - Src:             'parser.c:2759,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2760,5'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:2761,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2764,7'
          Dst:             tag_is
        - Src:             'parser.c:2765,5'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2766,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2770,5'
          Dst:             tag_in
        - Src:             'parser.c:2775,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2776,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2779,5'
          Dst:             maybe_flush_text_node_buffer
        - Src:             'parser.c:2780,5'
          Dst:             gumbo_vector_add
        - Src:             'parser.c:2781,5'
          Dst:             handle_in_head
        - Src:             'parser.c:2782,5'
          Dst:             gumbo_vector_remove
        - Src:             'parser.c:2785,7'
          Dst:             tag_is
        - Src:             'parser.c:2786,5'
          Dst:             handle_in_head
        - Src:             'parser.c:2790,5'
          Dst:             tag_is
        - Src:             'parser.c:2793,11'
          Dst:             tag_in
        - Src:             'parser.c:2796,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2797,5'
          Dst:             ignore_token
        - Src:             'parser.c:2800,3'
          Dst:             insert_element_of_tag_type
        - Src:             'parser.c:2801,3'
          Dst:             set_insertion_mode
    - functionName:    handle_in_head_noscript
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2691
      functionLinenumberEnd: 2736
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          169
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - handle_in_body
        - handle_in_head
        - ignore_token
        - node_html_tag_is
        - parser_add_parse_error
        - pop_current_node
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2693,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2694,5'
          Dst:             ignore_token
        - Src:             'parser.c:2697,7'
          Dst:             tag_is
        - Src:             'parser.c:2698,5'
          Dst:             handle_in_body
        - Src:             'parser.c:2701,7'
          Dst:             tag_is
        - Src:             'parser.c:2702,29'
          Dst:             pop_current_node
        - Src:             'parser.c:2703,5'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2703,5'
          Dst:             __assert_fail
        - Src:             'parser.c:2705,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2711,8'
          Dst:             tag_in
        - Src:             'parser.c:2716,5'
          Dst:             handle_in_head
        - Src:             'parser.c:2720,5'
          Dst:             tag_in
        - Src:             'parser.c:2723,11'
          Dst:             tag_is
        - Src:             'parser.c:2726,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2727,5'
          Dst:             ignore_token
        - Src:             'parser.c:2730,3'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2731,27'
          Dst:             pop_current_node
        - Src:             'parser.c:2732,3'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2732,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2734,3'
          Dst:             set_insertion_mode
    - functionName:    handle_before_head
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2537
      functionLinenumberEnd: 2577
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          134
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - append_comment_node
        - get_current_node
        - handle_in_body
        - ignore_token
        - insert_element_from_token
        - insert_element_of_tag_type
        - parser_add_parse_error
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2539,5'
          Dst:             ignore_token
        - Src:             'parser.c:2543,33'
          Dst:             get_current_node
        - Src:             'parser.c:2543,5'
          Dst:             append_comment_node
        - Src:             'parser.c:2547,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2548,5'
          Dst:             ignore_token
        - Src:             'parser.c:2551,7'
          Dst:             tag_is
        - Src:             'parser.c:2552,5'
          Dst:             handle_in_body
        - Src:             'parser.c:2555,7'
          Dst:             tag_is
        - Src:             'parser.c:2556,23'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2558,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2563,9'
          Dst:             tag_in
        - Src:             'parser.c:2565,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2566,5'
          Dst:             ignore_token
        - Src:             'parser.c:2569,21'
          Dst:             insert_element_of_tag_type
        - Src:             'parser.c:2575,3'
          Dst:             set_insertion_mode
    - functionName:    handle_before_html
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2492
      functionLinenumberEnd: 2529
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          136
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - append_comment_node
        - get_document_node
        - ignore_token
        - insert_element_from_token
        - insert_element_of_tag_type
        - parser_add_parse_error
        - set_insertion_mode
        - tag_in
        - tag_is
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2494,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2495,5'
          Dst:             ignore_token
        - Src:             'parser.c:2499,33'
          Dst:             get_document_node
        - Src:             'parser.c:2499,5'
          Dst:             append_comment_node
        - Src:             'parser.c:2503,5'
          Dst:             ignore_token
        - Src:             'parser.c:2506,7'
          Dst:             tag_is
        - Src:             'parser.c:2507,28'
          Dst:             insert_element_from_token
        - Src:             'parser.c:2509,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2514,9'
          Dst:             tag_in
        - Src:             'parser.c:2516,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2517,5'
          Dst:             ignore_token
        - Src:             'parser.c:2520,26'
          Dst:             insert_element_of_tag_type
        - Src:             'parser.c:2525,3'
          Dst:             __assert_fail
        - Src:             'parser.c:2527,3'
          Dst:             set_insertion_mode
    - functionName:    handle_initial
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2465
      functionLinenumberEnd: 2489
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          109
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - append_comment_node
        - compute_quirks_mode
        - get_document_node
        - ignore_token
        - maybe_add_doctype_error
        - parser_add_parse_error
        - set_insertion_mode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2466,30'
          Dst:             get_document_node
        - Src:             'parser.c:2468,5'
          Dst:             ignore_token
        - Src:             'parser.c:2472,33'
          Dst:             get_document_node
        - Src:             'parser.c:2472,5'
          Dst:             append_comment_node
        - Src:             'parser.c:2480,38'
          Dst:             compute_quirks_mode
        - Src:             'parser.c:2481,5'
          Dst:             set_insertion_mode
        - Src:             'parser.c:2482,5'
          Dst:             maybe_add_doctype_error
        - Src:             'parser.c:2485,3'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:2487,3'
          Dst:             set_insertion_mode
    - functionName:    handle_in_foreign_content
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4407
      functionLinenumberEnd: 4529
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         71
      ICount:          396
      EdgeCount:       89
      CyclomaticComplexity: 20
      functionsReached:
        - __assert_fail
        - acknowledge_self_closing_tag
        - adjust_foreign_attributes
        - adjust_mathml_attributes
        - adjust_svg_attributes
        - adjust_svg_tag
        - append_comment_node
        - get_adjusted_current_node
        - get_current_node
        - gumbo_debug
        - handle_html_content
        - ignore_token
        - insert_foreign_element
        - insert_text_token
        - is_html_integration_point
        - is_mathml_integration_point
        - node_tagname_is
        - parser_add_parse_error
        - pop_current_node
        - set_frameset_not_ok
        - tag_in
        - tag_is
        - token_has_attribute
      functionUses:    1
      BranchProfiles:
        - Branch String:   'parser.c:4409,3'
          Branch Sides:    []
      Callsites:
        - Src:             'parser.c:4408,3'
          Dst:             gumbo_debug
        - Src:             'parser.c:4411,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4413,7'
          Dst:             insert_text_token
        - Src:             'parser.c:4416,7'
          Dst:             insert_text_token
        - Src:             'parser.c:4420,7'
          Dst:             insert_text_token
        - Src:             'parser.c:4421,7'
          Dst:             set_frameset_not_ok
        - Src:             'parser.c:4424,35'
          Dst:             get_current_node
        - Src:             'parser.c:4424,7'
          Dst:             append_comment_node
        - Src:             'parser.c:4427,7'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4428,7'
          Dst:             ignore_token
        - Src:             'parser.c:4436,5'
          Dst:             tag_in
        - Src:             'parser.c:4446,7'
          Dst:             tag_is
        - Src:             'parser.c:4448,9'
          Dst:             token_has_attribute
        - Src:             'parser.c:4449,12'
          Dst:             token_has_attribute
        - Src:             'parser.c:4450,12'
          Dst:             token_has_attribute
        - Src:             'parser.c:4453,8'
          Dst:             tag_in
        - Src:             'parser.c:4456,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4460,37'
          Dst:             get_current_node
        - Src:             'parser.c:4460,9'
          Dst:             is_mathml_integration_point
        - Src:             'parser.c:4461,38'
          Dst:             get_current_node
        - Src:             'parser.c:4461,12'
          Dst:             is_html_integration_point
        - Src:             'parser.c:4462,12'
          Dst:             get_current_node
        - Src:             'parser.c:4465,7'
          Dst:             pop_current_node
        - Src:             'parser.c:4467,5'
          Dst:             handle_html_content
        - Src:             'parser.c:4473,9'
          Dst:             get_adjusted_current_node
        - Src:             'parser.c:4475,7'
          Dst:             adjust_mathml_attributes
        - Src:             'parser.c:4478,7'
          Dst:             adjust_svg_tag
        - Src:             'parser.c:4479,7'
          Dst:             adjust_svg_attributes
        - Src:             'parser.c:4481,5'
          Dst:             adjust_foreign_attributes
        - Src:             'parser.c:4482,5'
          Dst:             insert_foreign_element
        - Src:             'parser.c:4484,7'
          Dst:             pop_current_node
        - Src:             'parser.c:4485,7'
          Dst:             acknowledge_self_closing_tag
        - Src:             'parser.c:4491,3'
          Dst:             __assert_fail
        - Src:             'parser.c:4492,21'
          Dst:             get_current_node
        - Src:             'parser.c:4495,3'
          Dst:             __assert_fail
        - Src:             'parser.c:4497,8'
          Dst:             node_tagname_is
        - Src:             'parser.c:4498,5'
          Dst:             parser_add_parse_error
        - Src:             'parser.c:4505,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:4506,9'
          Dst:             node_tagname_is
        - Src:             'parser.c:4507,7'
          Dst:             gumbo_debug
        - Src:             'parser.c:4508,22'
          Dst:             pop_current_node
        - Src:             'parser.c:4522,3'
          Dst:             __assert_fail
        - Src:             'parser.c:4528,3'
          Dst:             handle_html_content
    - functionName:    is_mathml_integration_point
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - node_tag_in_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:793,10'
          Dst:             node_tag_in_set
    - functionName:    is_html_integration_point
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 822
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          62
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - attribute_matches
        - node_qualified_tag_is
        - node_tag_in_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:801,7'
          Dst:             node_tag_in_set
        - Src:             'parser.c:805,49'
          Dst:             node_qualified_tag_is
        - Src:             'parser.c:814,7'
          Dst:             attribute_matches
        - Src:             'parser.c:815,10'
          Dst:             attribute_matches
    - functionName:    handle_html_content
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4400
      functionLinenumberEnd: 4404
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_adjusted_current_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_current_node
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:485,10'
          Dst:             get_current_node
    - functionName:    create_fragment_ctx_element
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4591
      functionLinenumberEnd: 4620
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          180
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - create_node
        - gumbo_alloc
        - gumbo_tagn_enum
        - gumbo_vector_add
        - gumbo_vector_init
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4592,3'
          Dst:             __assert_fail
        - Src:             'parser.c:4593,44'
          Dst:             strlen
        - Src:             'parser.c:4593,18'
          Dst:             gumbo_tagn_enum
        - Src:             'parser.c:4597,21'
          Dst:             create_node
        - Src:             'parser.c:4601,5'
          Dst:             gumbo_vector_init
        - Src:             'parser.c:4602,28'
          Dst:             gumbo_alloc
        - Src:             'parser.c:4609,5'
          Dst:             gumbo_vector_add
    - functionName:    new_document_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_node
        - gumbo_vector_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:322,30'
          Dst:             create_node
        - Src:             'parser.c:324,3'
          Dst:             gumbo_vector_init
    - functionName:    gumbo_destroy_output
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4917
      functionLinenumberEnd: 4924
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - destroy_node
        - gumbo_error_destroy
        - gumbo_free
        - gumbo_vector_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4918,3'
          Dst:             destroy_node
        - Src:             'parser.c:4920,5'
          Dst:             gumbo_error_destroy
        - Src:             'parser.c:4922,3'
          Dst:             gumbo_vector_destroy
        - Src:             'parser.c:4923,3'
          Dst:             gumbo_free
    - functionName:    gumbo_destroy_node
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4913
      functionLinenumberEnd: 4915
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_node
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4914,3'
          Dst:             destroy_node
    - functionName:    gumbo_status_to_string
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4898
      functionLinenumberEnd: 4911
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'parser.c:4899,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    parser_state_destroy
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy_fragment_ctx_element
        - gumbo_character_token_buffer_destroy
        - gumbo_free
        - gumbo_string_buffer_destroy
        - gumbo_vector_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:449,5'
          Dst:             destroy_fragment_ctx_element
        - Src:             'parser.c:451,3'
          Dst:             gumbo_vector_destroy
        - Src:             'parser.c:452,3'
          Dst:             gumbo_vector_destroy
        - Src:             'parser.c:453,3'
          Dst:             gumbo_vector_destroy
        - Src:             'parser.c:454,3'
          Dst:             gumbo_string_buffer_destroy
        - Src:             'parser.c:455,3'
          Dst:             gumbo_character_token_buffer_destroy
        - Src:             'parser.c:456,3'
          Dst:             gumbo_free
    - functionName:    finish_parsing
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2444
      functionLinenumberEnd: 2463
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          92
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - gumbo_debug
        - maybe_flush_text_node_buffer
        - node_html_tag_is
        - pop_current_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:2445,3'
          Dst:             gumbo_debug
        - Src:             'parser.c:2446,3'
          Dst:             maybe_flush_text_node_buffer
        - Src:             'parser.c:2449,23'
          Dst:             pop_current_node
        - Src:             'parser.c:2454,8'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2455,11'
          Dst:             node_html_tag_is
        - Src:             'parser.c:2451,12'
          Dst:             pop_current_node
        - Src:             'parser.c:2461,10'
          Dst:             pop_current_node
    - functionName:    handle_token
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4532
      functionLinenumberEnd: 4585
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         66
      ICount:          327
      EdgeCount:       91
      CyclomaticComplexity: 27
      functionsReached:
        - __assert_fail
        - get_adjusted_current_node
        - gumbo_debug
        - handle_html_content
        - handle_in_foreign_content
        - ignore_token
        - is_html_integration_point
        - is_mathml_integration_point
        - node_qualified_tag_is
        - tag_in
        - tag_is
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4538,5'
          Dst:             ignore_token
        - Src:             'parser.c:4547,7'
          Dst:             tag_is
        - Src:             'parser.c:4550,7'
          Dst:             tag_is
        - Src:             'parser.c:4554,35'
          Dst:             get_adjusted_current_node
        - Src:             'parser.c:4555,3'
          Dst:             __assert_fail
        - Src:             'parser.c:4561,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:4564,8'
          Dst:             is_mathml_integration_point
        - Src:             'parser.c:4569,20'
          Dst:             tag_in
        - Src:             'parser.c:4572,11'
          Dst:             node_qualified_tag_is
        - Src:             'parser.c:4574,11'
          Dst:             tag_is
        - Src:             'parser.c:4575,8'
          Dst:             is_html_integration_point
        - Src:             'parser.c:4581,5'
          Dst:             handle_html_content
        - Src:             'parser.c:4583,5'
          Dst:             handle_in_foreign_content
    - functionName:    fragment_parser_init
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4639
      functionLinenumberEnd: 4741
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          216
      EdgeCount:       42
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - create_fragment_ctx_element
        - get_document_node
        - gumbo_tokenizer_set_state
        - insert_element_of_tag_type
        - push_template_insertion_mode
        - reset_insertion_mode_appropriately
      functionUses:    1
      BranchProfiles:
        - Branch String:   'parser.c:4667,5'
          Branch Sides:    []
      Callsites:
        - Src:             'parser.c:4640,3'
          Dst:             __assert_fail
        - Src:             'parser.c:4654,3'
          Dst:             get_document_node
        - Src:             'parser.c:4661,5'
          Dst:             create_fragment_ctx_element
        - Src:             'parser.c:4670,9'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'parser.c:4678,9'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'parser.c:4682,9'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'parser.c:4687,11'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'parser.c:4691,9'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'parser.c:4701,10'
          Dst:             insert_element_of_tag_type
        - Src:             'parser.c:4710,5'
          Dst:             push_template_insertion_mode
        - Src:             'parser.c:4714,3'
          Dst:             reset_insertion_mode_appropriately
    - functionName:    parser_state_init
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          73
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_alloc
        - gumbo_character_token_buffer_init
        - gumbo_string_buffer_init
        - gumbo_vector_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:348,36'
          Dst:             gumbo_alloc
        - Src:             'parser.c:355,3'
          Dst:             gumbo_string_buffer_init
        - Src:             'parser.c:356,3'
          Dst:             gumbo_character_token_buffer_init
        - Src:             'parser.c:357,3'
          Dst:             gumbo_vector_init
        - Src:             'parser.c:358,3'
          Dst:             gumbo_vector_init
        - Src:             'parser.c:359,3'
          Dst:             gumbo_vector_init
    - functionName:    output_init
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_alloc
        - gumbo_init_errors
        - new_document_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:338,25'
          Dst:             gumbo_alloc
        - Src:             'parser.c:340,22'
          Dst:             new_document_node
        - Src:             'parser.c:344,3'
          Dst:             gumbo_init_errors
    - functionName:    gumbo_parse_with_options
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4755
      functionLinenumberEnd: 4895
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         78
      ICount:          452
      EdgeCount:       99
      CyclomaticComplexity: 23
      functionsReached:
        - __assert_fail
        - finish_parsing
        - fragment_parser_init
        - get_adjusted_current_node
        - gumbo_add_error
        - gumbo_debug
        - gumbo_free
        - gumbo_lex
        - gumbo_normalized_tagname
        - gumbo_strdup
        - gumbo_tokenizer_set_is_adjusted_current_node_foreign
        - gumbo_tokenizer_state_destroy
        - gumbo_tokenizer_state_init
        - handle_token
        - output_init
        - parser_state_destroy
        - parser_state_init
      functionUses:    2
      BranchProfiles:
        - Branch String:   'parser.c:4804,5'
          Branch Sides:    []
      Callsites:
        - Src:             'parser.c:4758,3'
          Dst:             output_init
        - Src:             'parser.c:4759,3'
          Dst:             gumbo_tokenizer_state_init
        - Src:             'parser.c:4760,3'
          Dst:             parser_state_init
        - Src:             'parser.c:4763,5'
          Dst:             fragment_parser_init
        - Src:             'parser.c:4766,3'
          Dst:             gumbo_debug
        - Src:             'parser.c:4783,42'
          Dst:             get_adjusted_current_node
        - Src:             'parser.c:4784,7'
          Dst:             gumbo_tokenizer_set_is_adjusted_current_node_foreign
        - Src:             'parser.c:4795,9'
          Dst:             gumbo_debug
        - Src:             'parser.c:4798,9'
          Dst:             gumbo_lex
        - Src:             'parser.c:4812,24'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:4815,22'
          Dst:             gumbo_normalized_tagname
        - Src:             'parser.c:4823,5'
          Dst:             gumbo_debug
        - Src:             'parser.c:4834,5'
          Dst:             handle_token
        - Src:             'parser.c:4838,5'
          Dst:             __assert_fail
        - Src:             'parser.c:4851,29'
          Dst:             gumbo_add_error
        - Src:             'parser.c:4865,9'
          Dst:             gumbo_free
        - Src:             'parser.c:4872,5'
          Dst:             __assert_fail
        - Src:             'parser.c:4879,3'
          Dst:             finish_parsing
        - Src:             'parser.c:4884,22'
          Dst:             gumbo_strdup
        - Src:             'parser.c:4887,35'
          Dst:             gumbo_strdup
        - Src:             'parser.c:4890,35'
          Dst:             gumbo_strdup
        - Src:             'parser.c:4893,3'
          Dst:             parser_state_destroy
        - Src:             'parser.c:4894,3'
          Dst:             gumbo_tokenizer_state_destroy
    - functionName:    gumbo_parse
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4743
      functionLinenumberEnd: 4747
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_parse_with_options
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'parser.c:4747,5'
          Dst:             strlen
        - Src:             'parser.c:4744,10'
          Dst:             gumbo_parse_with_options
    - functionName:    gumbo_string_buffer_destroy
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_free
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'string_buffer.c:102,3'
          Dst:             gumbo_free
    - functionName:    gumbo_string_buffer_clear
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_string_buffer_to_string
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_alloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'string_buffer.c:91,18'
          Dst:             gumbo_alloc
    - functionName:    gumbo_string_buffer_append_string
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - maybe_resize_string_buffer
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'string_buffer.c:85,3'
          Dst:             maybe_resize_string_buffer
    - functionName:    maybe_resize_string_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gumbo_realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'string_buffer.c:35,20'
          Dst:             gumbo_realloc
    - functionName:    gumbo_string_buffer_append_codepoint
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          114
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - maybe_resize_string_buffer
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'string_buffer.c:74,3'
          Dst:             maybe_resize_string_buffer
    - functionName:    gumbo_string_buffer_reserve
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - maybe_resize_string_buffer
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'string_buffer.c:50,3'
          Dst:             maybe_resize_string_buffer
    - functionName:    gumbo_string_buffer_init
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_alloc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'string_buffer.c:41,18'
          Dst:             gumbo_alloc
    - functionName:    gumbo_string_prefix_ignore_case
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_piece.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_strncasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'string_piece.c:47,9'
          Dst:             gumbo_ascii_strncasecmp
    - functionName:    gumbo_string_equals_ignore_case
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_piece.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_strncasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'string_piece.c:38,9'
          Dst:             gumbo_ascii_strncasecmp
    - functionName:    gumbo_string_equals
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_piece.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'string_piece.c:29,9'
          Dst:             memcmp
    - functionName:    memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/svg_attrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          93
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'svg_attrs.c:54,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    gumbo_get_svg_attr_replacement
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/svg_attrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          112
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - gumbo_ascii_strncasecmp
        - hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'svg_attrs.c:162,35'
          Dst:             hash
        - Src:             'svg_attrs.c:169,81'
          Dst:             gumbo_ascii_strncasecmp
    - functionName:    hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/svg_tags.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'svg_tags.c:54,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    gumbo_get_svg_tag_replacement
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/svg_tags.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          112
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - gumbo_ascii_strncasecmp
        - hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'svg_tags.c:125,35'
          Dst:             hash
        - Src:             'svg_tags.c:132,81'
          Dst:             gumbo_ascii_strncasecmp
    - functionName:    gumbo_tagn_enum
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tag.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_tag_lookup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'tag.c:221,31'
          Dst:             gumbo_tag_lookup
    - functionName:    gumbo_tag_from_original_text
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tag.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         31
      ICount:          178
      EdgeCount:       33
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tag.c:207,7'
          Branch Sides:    []
      Callsites:
        - Src:             'tag.c:193,3'
          Dst:             __assert_fail
        - Src:             'tag.c:194,3'
          Dst:             __assert_fail
        - Src:             'tag.c:195,3'
          Dst:             __assert_fail
        - Src:             'tag.c:199,5'
          Dst:             __assert_fail
    - functionName:    gumbo_normalized_tagname
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tag.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'tag.c:182,3'
          Dst:             __assert_fail
        - Src:             'tag.c:184,3'
          Dst:             __assert_fail
    - functionName:    hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tag_lookup.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'tag_lookup.c:54,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    gumbo_tag_lookup
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tag_lookup.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          112
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - gumbo_ascii_strncasecmp
        - hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tag_lookup.c:370,35'
          Dst:             hash
        - Src:             'tag_lookup.c:377,81'
          Dst:             gumbo_ascii_strncasecmp
    - functionName:    gumbo_ascii_isascii
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_character_token_buffer_destroy
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/token_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'token_buffer.c:75,3'
          Dst:             gumbo_free
    - functionName:    gumbo_character_token_buffer_clear
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/token_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_ascii_isspace
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isascii
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:46,10'
          Dst:             gumbo_ascii_isascii
    - functionName:    gumbo_character_token_buffer_get
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/token_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          73
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - gumbo_ascii_isspace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'token_buffer.c:61,3'
          Dst:             __assert_fail
        - Src:             'token_buffer.c:63,18'
          Dst:             gumbo_ascii_isspace
    - functionName:    gumbo_character_token_buffer_append
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/token_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          126
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - gumbo_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'token_buffer.c:40,3'
          Dst:             __assert_fail
        - Src:             'token_buffer.c:48,20'
          Dst:             gumbo_realloc
    - functionName:    gumbo_character_token_buffer_init
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/token_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_ascii_isspace
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isascii
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:46,10'
          Dst:             gumbo_ascii_isascii
    - functionName:    gumbo_ascii_isascii
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8_is_control
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          32
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8_is_noncharacter
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8_is_surrogate
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_ascii_islower_xdigit
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isascii
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:81,10'
          Dst:             gumbo_ascii_isascii
    - functionName:    gumbo_ascii_isupper_xdigit
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isascii
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:75,10'
          Dst:             gumbo_ascii_isascii
    - functionName:    gumbo_ascii_isdigit
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_ascii_isxdigit
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isascii
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:69,10'
          Dst:             gumbo_ascii_isascii
    - functionName:    utf8iterator_get_mark_position
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flush_char_ref
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - append_char_to_tag_buffer
        - character_reference_part_of_attribute
        - emit_char
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:669,7'
          Dst:             character_reference_part_of_attribute
        - Src:             'tokenizer.c:671,5'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:673,7'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:677,10'
          Dst:             emit_char
    - functionName:    character_reference_part_of_attribute
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          38
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'tokenizer.c:620,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    append_char_to_tag_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - gumbo_string_buffer_append_codepoint
        - reset_tag_buffer_start_point
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:589,5'
          Dst:             reset_tag_buffer_start_point
        - Src:             'tokenizer.c:591,3'
          Dst:             gumbo_string_buffer_append_codepoint
    - functionName:    emit_char
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - finish_token
        - get_char_token_type
      functionUses:    37
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:418,18'
          Dst:             get_char_token_type
        - Src:             'tokenizer.c:420,3'
          Dst:             finish_token
    - functionName:    get_char_token_type
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          80
      EdgeCount:       19
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_debug
      functionUses:    1
      BranchProfiles:
        - Branch String:   'tokenizer.c:273,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:281,7'
          Dst:             gumbo_debug
    - functionName:    finish_token
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          104
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - reset_token_start_point
        - utf8iterator_next
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:377,5'
          Dst:             utf8iterator_next
        - Src:             'tokenizer.c:382,3'
          Dst:             reset_token_start_point
    - functionName:    reset_token_start_point
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - utf8iterator_get_char_pointer
        - utf8iterator_get_position
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:342,29'
          Dst:             utf8iterator_get_char_pointer
        - Src:             'tokenizer.c:343,3'
          Dst:             utf8iterator_get_position
    - functionName:    utf8iterator_get_char_pointer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8iterator_get_position
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_debug
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reset_tag_buffer_start_point
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - utf8iterator_get_char_pointer
        - utf8iterator_get_position
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:354,3'
          Dst:             utf8iterator_get_position
        - Src:             'tokenizer.c:355,31'
          Dst:             utf8iterator_get_char_pointer
    - functionName:    tokenizer_add_char_ref_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          82
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_add_error
        - utf8iterator_get_char_pointer
        - utf8iterator_get_mark_pointer
        - utf8iterator_get_mark_position
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:228,23'
          Dst:             gumbo_add_error
        - Src:             'tokenizer.c:233,21'
          Dst:             utf8iterator_get_mark_position
        - Src:             'tokenizer.c:234,22'
          Dst:             utf8iterator_get_mark_pointer
        - Src:             'tokenizer.c:236,33'
          Dst:             utf8iterator_get_char_pointer
    - functionName:    utf8iterator_get_mark_pointer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8iterator_get_end_pointer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    append_string_to_tag_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - gumbo_string_buffer_append_string
        - reset_tag_buffer_start_point
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:602,5'
          Dst:             reset_tag_buffer_start_point
        - Src:             'tokenizer.c:604,3'
          Dst:             gumbo_string_buffer_append_string
    - functionName:    flush_code_points_consumed_as_character_reference
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - append_string_to_tag_buffer
        - character_reference_part_of_attribute
        - emit_from_mark
        - utf8iterator_get_char_pointer
        - utf8iterator_get_mark_pointer
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:639,7'
          Dst:             character_reference_part_of_attribute
        - Src:             'tokenizer.c:640,25'
          Dst:             utf8iterator_get_mark_pointer
        - Src:             'tokenizer.c:641,5'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:644,17'
          Dst:             utf8iterator_get_char_pointer
        - Src:             'tokenizer.c:647,5'
          Dst:             append_string_to_tag_buffer
        - Src:             'tokenizer.c:650,10'
          Dst:             emit_from_mark
    - functionName:    emit_from_mark
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 566
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - maybe_emit_from_mark
        - utf8iterator_get_char_pointer
        - utf8iterator_reset
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:568,28'
          Dst:             utf8iterator_get_char_pointer
        - Src:             'tokenizer.c:569,3'
          Dst:             utf8iterator_reset
        - Src:             'tokenizer.c:572,24'
          Dst:             maybe_emit_from_mark
        - Src:             'tokenizer.c:573,3'
          Dst:             __assert_fail
    - functionName:    maybe_emit_from_mark
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 560
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - emit_char
        - utf8iterator_current
        - utf8iterator_get_char_pointer
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:550,7'
          Dst:             utf8iterator_get_char_pointer
        - Src:             'tokenizer.c:558,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:559,28'
          Dst:             utf8iterator_current
        - Src:             'tokenizer.c:559,10'
          Dst:             emit_char
    - functionName:    utf8iterator_current
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_ascii_isalnum
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isascii
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:98,10'
          Dst:             gumbo_ascii_isascii
    - functionName:    finish_doctype_system_id
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - finish_temporary_buffer
        - gumbo_free
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:411,3'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:412,3'
          Dst:             finish_temporary_buffer
    - functionName:    finish_temporary_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clear_temporary_buffer
        - gumbo_string_buffer_to_string
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:362,13'
          Dst:             gumbo_string_buffer_to_string
        - Src:             'tokenizer.c:363,3'
          Dst:             clear_temporary_buffer
    - functionName:    clear_temporary_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_string_buffer_clear
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:293,3'
          Dst:             gumbo_string_buffer_clear
    - functionName:    finish_doctype_public_id
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - finish_temporary_buffer
        - gumbo_free
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:401,3'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:402,3'
          Dst:             finish_temporary_buffer
    - functionName:    emit_doctype
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - doc_type_state_init
        - finish_token
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:443,3'
          Dst:             finish_token
        - Src:             'tokenizer.c:444,3'
          Dst:             doc_type_state_init
    - functionName:    doc_type_state_init
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    append_string_to_temporary_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_string_buffer_append_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:311,3'
          Dst:             gumbo_string_buffer_append_string
    - functionName:    emit_comment
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - finish_temporary_buffer
        - finish_token
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:527,3'
          Dst:             finish_temporary_buffer
        - Src:             'tokenizer.c:528,3'
          Dst:             finish_token
    - functionName:    finish_attribute_value
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 874
      functionLinenumberEnd: 891
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - copy_over_original_tag_text
        - copy_over_tag_buffer
        - gumbo_free
        - reinitialize_tag_buffer
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:880,5'
          Dst:             reinitialize_tag_buffer
        - Src:             'tokenizer.c:886,3'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:887,3'
          Dst:             copy_over_tag_buffer
        - Src:             'tokenizer.c:888,3'
          Dst:             copy_over_original_tag_text
        - Src:             'tokenizer.c:890,3'
          Dst:             reinitialize_tag_buffer
    - functionName:    reinitialize_tag_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_free
        - initialize_tag_buffer
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:748,3'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:749,3'
          Dst:             initialize_tag_buffer
    - functionName:    copy_over_tag_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_string_buffer_to_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:711,13'
          Dst:             gumbo_string_buffer_to_string
    - functionName:    copy_over_original_tag_text
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 725
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          90
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - utf8iterator_get_char_pointer
        - utf8iterator_get_position
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:730,27'
          Dst:             utf8iterator_get_char_pointer
        - Src:             'tokenizer.c:743,3'
          Dst:             utf8iterator_get_position
    - functionName:    initialize_tag_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_string_buffer_init
        - reset_tag_buffer_start_point
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:613,3'
          Dst:             gumbo_string_buffer_init
        - Src:             'tokenizer.c:614,3'
          Dst:             reset_tag_buffer_start_point
    - functionName:    add_duplicate_attr_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 771
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_add_error
        - utf8iterator_get_char_pointer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:773,23'
          Dst:             gumbo_add_error
        - Src:             'tokenizer.c:782,5'
          Dst:             utf8iterator_get_char_pointer
    - functionName:    finish_attribute_name
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 791
      functionLinenumberEnd: 870
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         45
      ICount:          329
      EdgeCount:       57
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - add_duplicate_attr_error
        - copy_over_original_tag_text
        - copy_over_tag_buffer
        - gumbo_alloc
        - gumbo_debug
        - gumbo_free
        - gumbo_strdup
        - gumbo_string_buffer_to_string
        - gumbo_string_set_contains
        - gumbo_string_set_insert
        - gumbo_string_set_new
        - gumbo_vector_add
        - memcmp
        - reinitialize_tag_buffer
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:801,5'
          Dst:             gumbo_debug
        - Src:             'tokenizer.c:802,5'
          Dst:             reinitialize_tag_buffer
        - Src:             'tokenizer.c:809,57'
          Dst:             gumbo_string_set_new
        - Src:             'tokenizer.c:812,7'
          Dst:             gumbo_string_set_insert
        - Src:             'tokenizer.c:818,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:819,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:824,11'
          Dst:             strlen
        - Src:             'tokenizer.c:825,19'
          Dst:             memcmp
        - Src:             'tokenizer.c:830,17'
          Dst:             gumbo_string_buffer_to_string
        - Src:             'tokenizer.c:831,9'
          Dst:             gumbo_string_set_contains
        - Src:             'tokenizer.c:836,26'
          Dst:             gumbo_alloc
        - Src:             'tokenizer.c:841,5'
          Dst:             copy_over_tag_buffer
        - Src:             'tokenizer.c:843,3'
          Dst:             copy_over_original_tag_text
        - Src:             'tokenizer.c:849,17'
          Dst:             gumbo_strdup
        - Src:             'tokenizer.c:850,3'
          Dst:             copy_over_original_tag_text
        - Src:             'tokenizer.c:856,3'
          Dst:             gumbo_vector_add
        - Src:             'tokenizer.c:858,5'
          Dst:             gumbo_string_set_insert
        - Src:             'tokenizer.c:860,3'
          Dst:             reinitialize_tag_buffer
        - Src:             'tokenizer.c:865,3'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:866,3'
          Dst:             add_duplicate_attr_error
        - Src:             'tokenizer.c:867,3'
          Dst:             reinitialize_tag_buffer
    - functionName:    append_char_to_temporary_buffer
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_string_buffer_append_codepoint
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:301,3'
          Dst:             gumbo_string_buffer_append_codepoint
    - functionName:    temporary_buffer_is_empty
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_appropriate_end_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 894
      functionLinenumberEnd: 899
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - gumbo_tagn_enum
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:896,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:898,40'
          Dst:             gumbo_tagn_enum
    - functionName:    tokenizer_add_token_parse_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_add_error
        - utf8iterator_get_char_pointer
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:247,23'
          Dst:             gumbo_add_error
        - Src:             'tokenizer.c:255,5'
          Dst:             utf8iterator_get_char_pointer
    - functionName:    abandon_current_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          69
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_debug
        - gumbo_destroy_attribute
        - gumbo_free
        - gumbo_string_buffer_destroy
        - gumbo_string_set_free
        - mark_tag_state_as_empty
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:512,5'
          Dst:             gumbo_destroy_attribute
        - Src:             'tokenizer.c:514,3'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:515,3'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:516,3'
          Dst:             gumbo_string_set_free
        - Src:             'tokenizer.c:517,3'
          Dst:             mark_tag_state_as_empty
        - Src:             'tokenizer.c:518,3'
          Dst:             gumbo_string_buffer_destroy
        - Src:             'tokenizer.c:519,3'
          Dst:             gumbo_debug
    - functionName:    mark_tag_state_as_empty
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emit_current_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 502
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          245
      EdgeCount:       29
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - finish_token
        - gumbo_debug
        - gumbo_destroy_attribute
        - gumbo_free
        - gumbo_normalized_tagname
        - gumbo_string_buffer_destroy
        - gumbo_string_set_free
        - mark_tag_state_as_empty
        - tokenizer_add_token_parse_error
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:467,5'
          Dst:             gumbo_string_set_free
        - Src:             'tokenizer.c:468,5'
          Dst:             mark_tag_state_as_empty
        - Src:             'tokenizer.c:470,36'
          Dst:             gumbo_normalized_tagname
        - Src:             'tokenizer.c:469,5'
          Dst:             gumbo_debug
        - Src:             'tokenizer.c:476,7'
          Dst:             tokenizer_add_token_parse_error
        - Src:             'tokenizer.c:478,7'
          Dst:             tokenizer_add_token_parse_error
        - Src:             'tokenizer.c:484,7'
          Dst:             gumbo_destroy_attribute
        - Src:             'tokenizer.c:486,5'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:487,5'
          Dst:             gumbo_string_set_free
        - Src:             'tokenizer.c:488,5'
          Dst:             mark_tag_state_as_empty
        - Src:             'tokenizer.c:490,34'
          Dst:             gumbo_normalized_tagname
        - Src:             'tokenizer.c:489,5'
          Dst:             gumbo_debug
        - Src:             'tokenizer.c:492,3'
          Dst:             gumbo_string_buffer_destroy
        - Src:             'tokenizer.c:493,3'
          Dst:             finish_token
        - Src:             'tokenizer.c:494,3'
          Dst:             gumbo_debug
        - Src:             'tokenizer.c:499,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:500,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:501,3'
          Dst:             __assert_fail
    - functionName:    finish_tag_name
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 768
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          73
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_alloc
        - gumbo_tagn_enum
        - reinitialize_tag_buffer
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:760,21'
          Dst:             gumbo_tagn_enum
        - Src:             'tokenizer.c:762,18'
          Dst:             gumbo_alloc
        - Src:             'tokenizer.c:767,3'
          Dst:             reinitialize_tag_buffer
    - functionName:    gumbo_ascii_isupper
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_ascii_tolower
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isupper
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:105,7'
          Dst:             gumbo_ascii_isupper
    - functionName:    ensure_lowercase
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_ascii_tolower
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:265,10'
          Dst:             gumbo_ascii_tolower
    - functionName:    gumbo_ascii_isalpha
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isascii
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:63,10'
          Dst:             gumbo_ascii_isascii
    - functionName:    start_new_tag
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 705
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       15
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - ensure_lowercase
        - gumbo_debug
        - gumbo_vector_init
        - initialize_tag_buffer
        - is_alpha
        - utf8iterator_current
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:687,11'
          Dst:             utf8iterator_current
        - Src:             'tokenizer.c:688,3'
          Dst:             is_alpha
        - Src:             'tokenizer.c:688,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:689,7'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:690,3'
          Dst:             is_alpha
        - Src:             'tokenizer.c:690,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:692,3'
          Dst:             initialize_tag_buffer
        - Src:             'tokenizer.c:694,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:695,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:700,3'
          Dst:             gumbo_vector_init
        - Src:             'tokenizer.c:704,3'
          Dst:             gumbo_debug
    - functionName:    is_alpha
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_ascii_isalpha
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:261,10'
          Dst:             gumbo_ascii_isalpha
    - functionName:    reconsume_in_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 958
      functionLinenumberEnd: 962
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    99
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emit_replacement_char
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - emit_char
        - tokenizer_add_parse_error
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:429,3'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:430,3'
          Dst:             emit_char
    - functionName:    tokenizer_add_parse_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_add_error
        - utf8iterator_current
        - utf8iterator_get_char_pointer
        - utf8iterator_get_position
        - utf8iterator_get_width
      functionUses:    91
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:208,23'
          Dst:             gumbo_add_error
        - Src:             'tokenizer.c:213,3'
          Dst:             utf8iterator_get_position
        - Src:             'tokenizer.c:214,31'
          Dst:             utf8iterator_get_char_pointer
        - Src:             'tokenizer.c:215,33'
          Dst:             utf8iterator_get_width
        - Src:             'tokenizer.c:218,34'
          Dst:             utf8iterator_current
    - functionName:    utf8iterator_get_width
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emit_eof
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - emit_char
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:436,10'
          Dst:             emit_char
    - functionName:    set_mark
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - utf8iterator_mark
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:534,3'
          Dst:             utf8iterator_mark
    - functionName:    handle_numeric_character_reference_end_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3247
      functionLinenumberEnd: 3313
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          256
      EdgeCount:       58
      CyclomaticComplexity: 8
      functionsReached:
        - flush_char_ref
        - gumbo_ascii_isspace
        - reconsume_in_state
        - tokenizer_add_char_ref_error
        - utf8_is_control
        - utf8_is_noncharacter
        - utf8_is_surrogate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:3282,5'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:3250,5'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3257,5'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3263,14'
          Dst:             utf8_is_surrogate
        - Src:             'tokenizer.c:3264,5'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3270,14'
          Dst:             utf8_is_noncharacter
        - Src:             'tokenizer.c:3271,5'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3276,28'
          Dst:             utf8_is_control
        - Src:             'tokenizer.c:3276,51'
          Dst:             gumbo_ascii_isspace
        - Src:             'tokenizer.c:3277,5'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3312,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3313,10'
          Dst:             flush_char_ref
    - functionName:    handle_decimal_character_reference_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3220
      functionLinenumberEnd: 3239
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          78
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - gumbo_ascii_isdigit
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_char_ref_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:3221,7'
          Dst:             gumbo_ascii_isdigit
        - Src:             'tokenizer.c:3229,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:3232,3'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3237,3'
          Dst:             reconsume_in_state
    - functionName:    gumbo_tokenizer_set_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 941
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    144
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_hexadecimal_character_reference_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3179
      functionLinenumberEnd: 3212
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          146
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - gumbo_ascii_isdigit
        - gumbo_ascii_islower_xdigit
        - gumbo_ascii_isupper_xdigit
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_char_ref_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:3180,7'
          Dst:             gumbo_ascii_isdigit
        - Src:             'tokenizer.c:3187,7'
          Dst:             gumbo_ascii_isupper_xdigit
        - Src:             'tokenizer.c:3194,7'
          Dst:             gumbo_ascii_islower_xdigit
        - Src:             'tokenizer.c:3202,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:3205,3'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3210,3'
          Dst:             reconsume_in_state
    - functionName:    handle_decimal_character_reference_start_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3159
      functionLinenumberEnd: 3171
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flush_code_points_consumed_as_character_reference
        - gumbo_ascii_isdigit
        - reconsume_in_state
        - tokenizer_add_char_ref_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:3160,7'
          Dst:             gumbo_ascii_isdigit
        - Src:             'tokenizer.c:3161,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3164,3'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3169,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3170,10'
          Dst:             flush_code_points_consumed_as_character_reference
    - functionName:    handle_hexadecimal_character_reference_start_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3139
      functionLinenumberEnd: 3151
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flush_code_points_consumed_as_character_reference
        - gumbo_ascii_isxdigit
        - reconsume_in_state
        - tokenizer_add_char_ref_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:3140,7'
          Dst:             gumbo_ascii_isxdigit
        - Src:             'tokenizer.c:3141,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3144,3'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3149,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3150,10'
          Dst:             flush_code_points_consumed_as_character_reference
    - functionName:    handle_numeric_character_reference_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3120
      functionLinenumberEnd: 3131
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:3122,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:3125,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:3128,5'
          Dst:             reconsume_in_state
    - functionName:    handle_ambiguous_ampersand_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3098
      functionLinenumberEnd: 3112
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - append_char_to_tag_buffer
        - character_reference_part_of_attribute
        - emit_char
        - gumbo_ascii_isalnum
        - reconsume_in_state
        - tokenizer_add_char_ref_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:3099,7'
          Dst:             gumbo_ascii_isalnum
        - Src:             'tokenizer.c:3100,9'
          Dst:             character_reference_part_of_attribute
        - Src:             'tokenizer.c:3101,7'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:3104,12'
          Dst:             emit_char
        - Src:             'tokenizer.c:3107,7'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3110,3'
          Dst:             reconsume_in_state
    - functionName:    handle_named_character_reference_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3066
      functionLinenumberEnd: 3090
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          159
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - append_string_to_temporary_buffer
        - character_reference_part_of_attribute
        - flush_char_ref
        - flush_code_points_consumed_as_character_reference
        - gumbo_ascii_isalnum
        - match_named_char_ref
        - reconsume_in_state
        - tokenizer_add_char_ref_error
        - utf8iterator_current
        - utf8iterator_get_char_pointer
        - utf8iterator_get_end_pointer
        - utf8iterator_maybe_consume_match
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:3067,21'
          Dst:             utf8iterator_get_char_pointer
        - Src:             'tokenizer.c:3068,21'
          Dst:             utf8iterator_get_end_pointer
        - Src:             'tokenizer.c:3070,17'
          Dst:             match_named_char_ref
        - Src:             'tokenizer.c:3073,5'
          Dst:             utf8iterator_maybe_consume_match
        - Src:             'tokenizer.c:3074,16'
          Dst:             utf8iterator_current
        - Src:             'tokenizer.c:3075,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3076,9'
          Dst:             character_reference_part_of_attribute
        - Src:             'tokenizer.c:3078,28'
          Dst:             gumbo_ascii_isalnum
        - Src:             'tokenizer.c:3080,7'
          Dst:             append_string_to_temporary_buffer
        - Src:             'tokenizer.c:3081,14'
          Dst:             flush_code_points_consumed_as_character_reference
        - Src:             'tokenizer.c:3084,7'
          Dst:             tokenizer_add_char_ref_error
        - Src:             'tokenizer.c:3085,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3086,12'
          Dst:             flush_char_ref
        - Src:             'tokenizer.c:3088,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3089,10'
          Dst:             flush_code_points_consumed_as_character_reference
    - functionName:    handle_character_reference_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3047
      functionLinenumberEnd: 3058
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - flush_code_points_consumed_as_character_reference
        - gumbo_ascii_isalnum
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:3048,7'
          Dst:             gumbo_ascii_isalnum
        - Src:             'tokenizer.c:3049,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3053,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:3056,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3057,10'
          Dst:             flush_code_points_consumed_as_character_reference
    - functionName:    handle_cdata_section_end_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3011
      functionLinenumberEnd: 3039
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          68
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - emit_from_mark
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - reset_token_start_point
        - set_mark
        - utf8iterator_next
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:3012,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:3021,26'
          Dst:             emit_from_mark
        - Src:             'tokenizer.c:3023,5'
          Dst:             set_mark
        - Src:             'tokenizer.c:3024,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:3030,5'
          Dst:             utf8iterator_next
        - Src:             'tokenizer.c:3031,5'
          Dst:             reset_token_start_point
        - Src:             'tokenizer.c:3032,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3036,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3037,12'
          Dst:             emit_from_mark
    - functionName:    handle_cdata_section_bracket_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2993
      functionLinenumberEnd: 3003
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached:
        - emit_from_mark
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2994,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2996,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2999,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:3001,12'
          Dst:             emit_from_mark
    - functionName:    handle_cdata_section_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2973
      functionLinenumberEnd: 2985
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - emit_char
        - emit_eof
        - gumbo_tokenizer_set_state
        - set_mark
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2974,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2976,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2977,5'
          Dst:             set_mark
        - Src:             'tokenizer.c:2980,5'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2981,12'
          Dst:             emit_eof
        - Src:             'tokenizer.c:2983,12'
          Dst:             emit_char
    - functionName:    handle_bogus_doctype_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2951
      functionLinenumberEnd: 2965
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2952,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2954,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2955,12'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2957,5'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2960,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2961,12'
          Dst:             emit_doctype
    - functionName:    handle_after_doctype_system_id_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2923
      functionLinenumberEnd: 2943
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       23
      CyclomaticComplexity: 13
      functionsReached:
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2924,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2931,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2932,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2934,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2935,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2937,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2939,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2940,7'
          Dst:             reconsume_in_state
    - functionName:    handle_doctype_system_id_single_quoted_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2889
      functionLinenumberEnd: 2915
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_doctype
        - finish_doctype_system_id
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2890,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2892,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2893,7'
          Dst:             finish_doctype_system_id
        - Src:             'tokenizer.c:2896,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2897,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2900,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2901,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2903,7'
          Dst:             finish_doctype_system_id
        - Src:             'tokenizer.c:2904,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2906,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2907,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2909,7'
          Dst:             finish_doctype_system_id
        - Src:             'tokenizer.c:2910,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2912,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_doctype_system_id_double_quoted_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2855
      functionLinenumberEnd: 2881
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_doctype
        - finish_doctype_system_id
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2856,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2858,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2859,7'
          Dst:             finish_doctype_system_id
        - Src:             'tokenizer.c:2862,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2863,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2866,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2867,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2869,7'
          Dst:             finish_doctype_system_id
        - Src:             'tokenizer.c:2870,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2872,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2873,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2875,7'
          Dst:             finish_doctype_system_id
        - Src:             'tokenizer.c:2876,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2878,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_before_doctype_system_id_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2814
      functionLinenumberEnd: 2847
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          120
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - __assert_fail
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - temporary_buffer_is_empty
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2815,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2822,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2822,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2823,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2827,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2827,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2828,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2832,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2833,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2835,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2837,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2838,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2840,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2842,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2843,7'
          Dst:             reconsume_in_state
    - functionName:    handle_after_doctype_system_keyword_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2770
      functionLinenumberEnd: 2806
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          126
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - __assert_fail
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - temporary_buffer_is_empty
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2771,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2776,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2779,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2780,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2780,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2781,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2785,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2786,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2786,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2787,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2791,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2792,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2794,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2796,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2797,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2799,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2801,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2802,7'
          Dst:             reconsume_in_state
    - functionName:    handle_between_doctype_public_system_id_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2731
      functionLinenumberEnd: 2762
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          114
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - __assert_fail
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - temporary_buffer_is_empty
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2732,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2739,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2740,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2742,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2742,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2743,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2747,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2747,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2748,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2752,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2753,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2755,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2757,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2758,7'
          Dst:             reconsume_in_state
    - functionName:    handle_after_doctype_public_id_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2682
      functionLinenumberEnd: 2723
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          120
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - __assert_fail
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - temporary_buffer_is_empty
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2683,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2688,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2692,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2693,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2695,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2699,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2699,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2700,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2704,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2708,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2708,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2709,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2713,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2714,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2716,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2718,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2719,7'
          Dst:             reconsume_in_state
    - functionName:    handle_doctype_public_id_single_quoted_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2648
      functionLinenumberEnd: 2674
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_doctype
        - finish_doctype_public_id
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2649,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2651,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2652,7'
          Dst:             finish_doctype_public_id
        - Src:             'tokenizer.c:2655,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2656,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2659,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2660,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2662,7'
          Dst:             finish_doctype_public_id
        - Src:             'tokenizer.c:2663,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2665,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2666,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2668,7'
          Dst:             finish_doctype_public_id
        - Src:             'tokenizer.c:2669,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2671,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_doctype_public_id_double_quoted_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2614
      functionLinenumberEnd: 2640
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_doctype
        - finish_doctype_public_id
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2615,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2617,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2618,7'
          Dst:             finish_doctype_public_id
        - Src:             'tokenizer.c:2621,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2622,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2625,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2626,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2628,7'
          Dst:             finish_doctype_public_id
        - Src:             'tokenizer.c:2629,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2631,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2632,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2634,7'
          Dst:             finish_doctype_public_id
        - Src:             'tokenizer.c:2635,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2637,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_before_doctype_public_id_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2573
      functionLinenumberEnd: 2606
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          120
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - __assert_fail
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - temporary_buffer_is_empty
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2574,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2581,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2581,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2582,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2586,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2586,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2587,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2591,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2592,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2594,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2596,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2597,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2599,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2601,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2602,7'
          Dst:             reconsume_in_state
    - functionName:    handle_after_doctype_public_keyword_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2529
      functionLinenumberEnd: 2565
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          126
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - __assert_fail
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - temporary_buffer_is_empty
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2530,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2535,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2538,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2539,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2539,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2540,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2544,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2545,7'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2545,7'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2546,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2550,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2551,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2553,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2555,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2556,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2558,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2560,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2561,7'
          Dst:             reconsume_in_state
    - functionName:    handle_after_doctype_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2491
      functionLinenumberEnd: 2521
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 3
      functionsReached:
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
        - utf8iterator_maybe_consume_match
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2492,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2499,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2500,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2502,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2503,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2505,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2507,11'
          Dst:             utf8iterator_maybe_consume_match
        - Src:             'tokenizer.c:2509,9'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2510,18'
          Dst:             utf8iterator_maybe_consume_match
        - Src:             'tokenizer.c:2512,9'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2514,9'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2516,9'
          Dst:             reconsume_in_state
    - functionName:    handle_doctype_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2453
      functionLinenumberEnd: 2483
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          119
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_doctype
        - ensure_lowercase
        - finish_temporary_buffer
        - gumbo_free
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2454,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2459,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2460,7'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:2461,7'
          Dst:             finish_temporary_buffer
        - Src:             'tokenizer.c:2464,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2465,7'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:2466,7'
          Dst:             finish_temporary_buffer
        - Src:             'tokenizer.c:2467,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2469,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2470,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2473,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2474,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2476,7'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:2477,7'
          Dst:             finish_temporary_buffer
        - Src:             'tokenizer.c:2478,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2480,47'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:2480,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_before_doctype_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2417
      functionLinenumberEnd: 2445
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          97
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_doctype
        - ensure_lowercase
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2418,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2425,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2426,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2427,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2430,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2431,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2433,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2435,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2438,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2439,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2441,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2442,47'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:2442,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_doctype_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2386
      functionLinenumberEnd: 2409
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          86
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached:
        - __assert_fail
        - emit_doctype
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - temporary_buffer_is_empty
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2388,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2387,3'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:2387,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:2393,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2396,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2399,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2402,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2403,14'
          Dst:             emit_doctype
        - Src:             'tokenizer.c:2405,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2406,7'
          Dst:             reconsume_in_state
    - functionName:    handle_comment_end_bang_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2354
      functionLinenumberEnd: 2378
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_comment
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2355,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2357,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2358,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2359,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2360,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2363,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2364,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2365,14'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2367,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2369,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2370,14'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2372,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2373,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2374,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2375,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_comment_end_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2324
      functionLinenumberEnd: 2346
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_comment
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2325,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2327,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2328,14'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2330,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2333,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2336,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2338,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2339,14'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2341,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2342,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2343,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_comment_end_dash_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2316
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_comment
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2302,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2304,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2307,5'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2309,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2310,12'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2312,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2313,5'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_comment_lt_bang_dash_dash_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2282
      functionLinenumberEnd: 2293
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2283,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2286,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2289,5'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2290,5'
          Dst:             reconsume_in_state
    - functionName:    handle_comment_lt_bang_dash_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2265
      functionLinenumberEnd: 2274
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached:
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2266,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2268,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2271,5'
          Dst:             reconsume_in_state
    - functionName:    handle_comment_lt_bang_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2257
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached:
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2249,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2251,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2254,5'
          Dst:             reconsume_in_state
    - functionName:    handle_comment_lt_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2227
      functionLinenumberEnd: 2240
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - append_char_to_temporary_buffer
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2228,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2230,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2231,5'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2234,5'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2237,5'
          Dst:             reconsume_in_state
    - functionName:    handle_comment_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2197
      functionLinenumberEnd: 2219
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_comment
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2198,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2200,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2201,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2204,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2207,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2208,7'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2211,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2213,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2214,14'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2216,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_comment_start_dash_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2170
      functionLinenumberEnd: 2189
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_comment
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2171,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2173,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2176,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2177,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2178,14'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2180,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2182,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2183,14'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2185,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2186,7'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_comment_start_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2149
      functionLinenumberEnd: 2162
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          51
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - emit_comment
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2150,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2152,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2155,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2156,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2157,14'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2159,7'
          Dst:             reconsume_in_state
    - functionName:    handle_markup_declaration_open_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2084
      functionLinenumberEnd: 2141
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          108
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - append_string_to_temporary_buffer
        - clear_temporary_buffer
        - gumbo_strdup
        - reconsume_in_state
        - reset_token_start_point
        - tokenizer_add_parse_error
        - tokenizer_add_token_parse_error
        - utf8iterator_maybe_consume_match
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:2086,5'
          Dst:             utf8iterator_maybe_consume_match
        - Src:             'tokenizer.c:2093,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2097,5'
          Dst:             utf8iterator_maybe_consume_match
        - Src:             'tokenizer.c:2104,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2109,39'
          Dst:             gumbo_strdup
        - Src:             'tokenizer.c:2110,52'
          Dst:             gumbo_strdup
        - Src:             'tokenizer.c:2111,52'
          Dst:             gumbo_strdup
        - Src:             'tokenizer.c:2115,5'
          Dst:             utf8iterator_maybe_consume_match
        - Src:             'tokenizer.c:2122,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2125,7'
          Dst:             reset_token_start_point
        - Src:             'tokenizer.c:2127,7'
          Dst:             tokenizer_add_token_parse_error
        - Src:             'tokenizer.c:2128,7'
          Dst:             clear_temporary_buffer
        - Src:             'tokenizer.c:2129,7'
          Dst:             append_string_to_temporary_buffer
        - Src:             'tokenizer.c:2133,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2137,3'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2138,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2139,3'
          Dst:             clear_temporary_buffer
    - functionName:    handle_bogus_comment_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2058
      functionLinenumberEnd: 2076
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_comment
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2059,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2061,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2062,12'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2066,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:2067,12'
          Dst:             emit_comment
        - Src:             'tokenizer.c:2069,5'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2070,5'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:2073,5'
          Dst:             append_char_to_temporary_buffer
    - functionName:    handle_self_closing_start_tag_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2035
      functionLinenumberEnd: 2050
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - abandon_current_tag
        - emit_current_tag
        - emit_eof
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2036,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2038,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2040,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:2042,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2043,7'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:2044,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:2046,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2047,7'
          Dst:             reconsume_in_state
    - functionName:    handle_after_attr_value_quoted_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2003
      functionLinenumberEnd: 2027
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - abandon_current_tag
        - emit_current_tag
        - emit_eof
        - finish_attribute_value
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:2005,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:2004,3'
          Dst:             finish_attribute_value
        - Src:             'tokenizer.c:2010,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2013,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2016,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:2017,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:2019,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2020,7'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:2021,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:2023,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:2024,7'
          Dst:             reconsume_in_state
    - functionName:    handle_attr_value_unquoted_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1958
      functionLinenumberEnd: 1995
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          124
      EdgeCount:       41
      CyclomaticComplexity: 22
      functionsReached:
        - abandon_current_tag
        - append_char_to_tag_buffer
        - emit_current_tag
        - emit_eof
        - finish_attribute_value
        - gumbo_tokenizer_set_state
        - set_mark
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1959,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1964,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1965,7'
          Dst:             finish_attribute_value
        - Src:             'tokenizer.c:1968,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1969,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1973,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1974,7'
          Dst:             finish_attribute_value
        - Src:             'tokenizer.c:1975,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:1977,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1978,7'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1981,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1982,7'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:1983,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1989,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1992,7'
          Dst:             append_char_to_tag_buffer
    - functionName:    handle_attr_value_single_quoted_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1928
      functionLinenumberEnd: 1950
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - abandon_current_tag
        - append_char_to_tag_buffer
        - emit_eof
        - gumbo_tokenizer_set_state
        - set_mark
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1929,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1931,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1934,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1935,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1939,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1940,7'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1943,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1944,7'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:1945,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1947,7'
          Dst:             append_char_to_tag_buffer
    - functionName:    handle_attr_value_double_quoted_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1898
      functionLinenumberEnd: 1920
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - abandon_current_tag
        - append_char_to_tag_buffer
        - emit_eof
        - gumbo_tokenizer_set_state
        - set_mark
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1899,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1901,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1904,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1905,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1909,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1910,7'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1913,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1914,7'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:1915,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1917,7'
          Dst:             append_char_to_tag_buffer
    - functionName:    handle_before_attr_value_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1868
      functionLinenumberEnd: 1890
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          80
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - emit_current_tag
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - reset_tag_buffer_start_point
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1869,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1876,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1877,7'
          Dst:             reset_tag_buffer_start_point
        - Src:             'tokenizer.c:1880,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1881,7'
          Dst:             reset_tag_buffer_start_point
        - Src:             'tokenizer.c:1884,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1885,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1886,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:1888,3'
          Dst:             reconsume_in_state
    - functionName:    handle_after_attr_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1836
      functionLinenumberEnd: 1860
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          86
      EdgeCount:       27
      CyclomaticComplexity: 15
      functionsReached:
        - abandon_current_tag
        - emit_current_tag
        - emit_eof
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1837,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1844,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1847,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1850,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1851,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:1853,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1854,7'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:1855,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1857,7'
          Dst:             reconsume_in_state
    - functionName:    handle_attr_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1799
      functionLinenumberEnd: 1828
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          102
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - append_char_to_tag_buffer
        - ensure_lowercase
        - finish_attribute_name
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1800,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1808,7'
          Dst:             finish_attribute_name
        - Src:             'tokenizer.c:1809,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1812,7'
          Dst:             finish_attribute_name
        - Src:             'tokenizer.c:1813,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1816,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1817,7'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1822,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1825,41'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:1825,7'
          Dst:             append_char_to_tag_buffer
    - functionName:    handle_before_attr_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1770
      functionLinenumberEnd: 1791
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          78
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached:
        - append_char_to_tag_buffer
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1771,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1780,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1783,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1784,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1785,7'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1788,7'
          Dst:             reconsume_in_state
    - functionName:    handle_script_data_double_escaped_end_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1741
      functionLinenumberEnd: 1762
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_char
        - ensure_lowercase
        - gumbo_string_equals
        - gumbo_tokenizer_set_state
        - is_alpha
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1742,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1750,19'
          Dst:             gumbo_string_equals
        - Src:             'tokenizer.c:1749,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1754,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1756,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1757,45'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:1757,5'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:1758,12'
          Dst:             emit_char
        - Src:             'tokenizer.c:1760,3'
          Dst:             reconsume_in_state
    - functionName:    handle_script_data_double_escaped_lt_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1724
      functionLinenumberEnd: 1733
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - clear_temporary_buffer
        - emit_char
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1726,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1727,5'
          Dst:             clear_temporary_buffer
        - Src:             'tokenizer.c:1728,12'
          Dst:             emit_char
        - Src:             'tokenizer.c:1730,5'
          Dst:             reconsume_in_state
    - functionName:    handle_script_data_double_escaped_dash_dash_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1696
      functionLinenumberEnd: 1716
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - emit_char
        - emit_eof
        - emit_replacement_char
        - gumbo_tokenizer_set_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1697,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1699,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1701,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1702,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1704,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1705,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1707,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1708,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1710,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1711,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1713,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1714,14'
          Dst:             emit_char
    - functionName:    handle_script_data_double_escaped_dash_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1669
      functionLinenumberEnd: 1688
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          78
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - emit_char
        - emit_eof
        - emit_replacement_char
        - gumbo_tokenizer_set_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1670,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1672,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1674,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1676,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1677,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1679,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1680,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1682,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1683,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1685,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1686,14'
          Dst:             emit_char
    - functionName:    handle_script_data_double_escaped_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1645
      functionLinenumberEnd: 1661
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - emit_char
        - emit_eof
        - emit_replacement_char
        - gumbo_tokenizer_set_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1646,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1648,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1649,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1651,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1652,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1654,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1656,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1657,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1659,14'
          Dst:             emit_char
    - functionName:    handle_script_data_double_escaped_start_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1612
      functionLinenumberEnd: 1637
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - append_char_to_temporary_buffer
        - emit_char
        - ensure_lowercase
        - gumbo_string_equals
        - gumbo_tokenizer_set_state
        - is_alpha
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1613,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1622,9'
          Dst:             gumbo_string_equals
        - Src:             'tokenizer.c:1620,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1629,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1631,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1632,45'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:1632,5'
          Dst:             append_char_to_temporary_buffer
        - Src:             'tokenizer.c:1633,12'
          Dst:             emit_char
        - Src:             'tokenizer.c:1635,3'
          Dst:             reconsume_in_state
    - functionName:    handle_script_data_escaped_end_tag_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1604
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          117
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - abandon_current_tag
        - append_char_to_tag_buffer
        - emit_current_tag
        - emit_from_mark
        - ensure_lowercase
        - finish_tag_name
        - gumbo_tokenizer_set_state
        - is_alpha
        - is_appropriate_end_tag
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1575,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1571,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1572,39'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:1572,5'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1580,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1581,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1582,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1587,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1588,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1589,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1594,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1595,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1596,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1597,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:1601,3'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:1602,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1603,10'
          Dst:             emit_from_mark
    - functionName:    handle_script_data_escaped_end_tag_open_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1554
      functionLinenumberEnd: 1562
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_from_mark
        - is_alpha
        - reconsume_in_state
        - start_new_tag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1555,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1556,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1557,5'
          Dst:             start_new_tag
        - Src:             'tokenizer.c:1560,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1561,10'
          Dst:             emit_from_mark
    - functionName:    handle_script_data_escaped_lt_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1534
      functionLinenumberEnd: 1546
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - emit_from_mark
        - gumbo_tokenizer_set_state
        - is_alpha
        - reconsume_in_state
        - temporary_buffer_is_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1535,3'
          Dst:             temporary_buffer_is_empty
        - Src:             'tokenizer.c:1535,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:1537,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1540,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1541,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1542,12'
          Dst:             emit_from_mark
        - Src:             'tokenizer.c:1544,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1545,10'
          Dst:             emit_from_mark
    - functionName:    handle_script_data_escaped_dash_dash_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1504
      functionLinenumberEnd: 1526
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - clear_temporary_buffer
        - emit_char
        - emit_eof
        - emit_replacement_char
        - gumbo_tokenizer_set_state
        - set_mark
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1505,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1507,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1509,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1510,7'
          Dst:             clear_temporary_buffer
        - Src:             'tokenizer.c:1511,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1514,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1515,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1517,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1518,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1520,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1521,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1523,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1524,14'
          Dst:             emit_char
    - functionName:    handle_script_data_escaped_dash_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1476
      functionLinenumberEnd: 1496
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          78
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - clear_temporary_buffer
        - emit_char
        - emit_eof
        - emit_replacement_char
        - gumbo_tokenizer_set_state
        - set_mark
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1477,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1479,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1480,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1482,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1483,7'
          Dst:             clear_temporary_buffer
        - Src:             'tokenizer.c:1484,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1487,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1488,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1490,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1491,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1493,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1494,14'
          Dst:             emit_char
    - functionName:    handle_script_data_escaped_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1450
      functionLinenumberEnd: 1468
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - clear_temporary_buffer
        - emit_char
        - emit_eof
        - emit_replacement_char
        - gumbo_tokenizer_set_state
        - set_mark
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1451,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1453,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1454,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:1456,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1457,7'
          Dst:             clear_temporary_buffer
        - Src:             'tokenizer.c:1458,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1461,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1463,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1464,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1466,14'
          Dst:             emit_char
    - functionName:    handle_script_data_escaped_start_dash_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1434
      functionLinenumberEnd: 1442
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_char
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1436,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1437,12'
          Dst:             emit_char
        - Src:             'tokenizer.c:1439,5'
          Dst:             reconsume_in_state
    - functionName:    handle_script_data_escaped_start_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1419
      functionLinenumberEnd: 1426
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_char
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1421,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1422,12'
          Dst:             emit_char
        - Src:             'tokenizer.c:1424,3'
          Dst:             reconsume_in_state
    - functionName:    handle_script_data_end_tag_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1377
      functionLinenumberEnd: 1411
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          117
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - abandon_current_tag
        - append_char_to_tag_buffer
        - emit_current_tag
        - emit_from_mark
        - ensure_lowercase
        - finish_tag_name
        - gumbo_tokenizer_set_state
        - is_alpha
        - is_appropriate_end_tag
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1382,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1378,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1379,39'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:1379,5'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1387,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1388,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1389,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1394,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1395,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1396,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1401,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1402,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1403,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1404,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:1408,3'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:1409,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1410,10'
          Dst:             emit_from_mark
    - functionName:    handle_script_data_end_tag_open_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1361
      functionLinenumberEnd: 1369
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_from_mark
        - is_alpha
        - reconsume_in_state
        - start_new_tag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1362,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1363,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1364,5'
          Dst:             start_new_tag
        - Src:             'tokenizer.c:1367,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1368,10'
          Dst:             emit_from_mark
    - functionName:    handle_script_data_lt_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1337
      functionLinenumberEnd: 1353
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - emit_from_mark
        - gumbo_tokenizer_set_state
        - reconsume_in_state
        - utf8iterator_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1339,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1347,5'
          Dst:             utf8iterator_next
        - Src:             'tokenizer.c:1348,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1349,12'
          Dst:             emit_from_mark
        - Src:             'tokenizer.c:1351,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1352,10'
          Dst:             emit_from_mark
    - functionName:    handle_rawtext_end_tag_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1295
      functionLinenumberEnd: 1329
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          117
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - abandon_current_tag
        - append_char_to_tag_buffer
        - emit_current_tag
        - emit_from_mark
        - ensure_lowercase
        - finish_tag_name
        - gumbo_tokenizer_set_state
        - is_alpha
        - is_appropriate_end_tag
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1300,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1296,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1297,39'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:1297,5'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1305,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1306,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1307,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1312,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1313,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1314,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1319,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1320,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1321,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1322,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:1326,3'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:1327,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1328,10'
          Dst:             emit_from_mark
    - functionName:    handle_rawtext_end_tag_open_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1287
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_from_mark
        - is_alpha
        - reconsume_in_state
        - start_new_tag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1279,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1280,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1281,5'
          Dst:             start_new_tag
        - Src:             'tokenizer.c:1284,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1285,12'
          Dst:             emit_from_mark
    - functionName:    handle_rawtext_lt_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1270
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_from_mark
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1264,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1267,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1268,12'
          Dst:             emit_from_mark
    - functionName:    handle_rcdata_end_tag_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1219
      functionLinenumberEnd: 1254
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          117
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - abandon_current_tag
        - append_char_to_tag_buffer
        - emit_current_tag
        - emit_from_mark
        - ensure_lowercase
        - finish_tag_name
        - gumbo_tokenizer_set_state
        - is_alpha
        - is_appropriate_end_tag
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1225,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1221,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1222,39'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:1222,5'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1230,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1231,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1232,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1237,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1238,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1239,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1244,9'
          Dst:             is_appropriate_end_tag
        - Src:             'tokenizer.c:1245,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1246,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1247,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:1251,3'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:1252,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1253,10'
          Dst:             emit_from_mark
    - functionName:    handle_rcdata_end_tag_open_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1203
      functionLinenumberEnd: 1211
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_from_mark
        - is_alpha
        - reconsume_in_state
        - start_new_tag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1204,7'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1205,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1206,5'
          Dst:             start_new_tag
        - Src:             'tokenizer.c:1209,3'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1210,10'
          Dst:             emit_from_mark
    - functionName:    handle_rcdata_lt_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1187
      functionLinenumberEnd: 1195
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_from_mark
        - gumbo_tokenizer_set_state
        - reconsume_in_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:1189,5'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1192,5'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1193,12'
          Dst:             emit_from_mark
    - functionName:    handle_tag_name_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1150
      functionLinenumberEnd: 1179
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          98
      EdgeCount:       27
      CyclomaticComplexity: 15
      functionsReached:
        - abandon_current_tag
        - append_char_to_tag_buffer
        - emit_current_tag
        - emit_eof
        - ensure_lowercase
        - finish_tag_name
        - gumbo_tokenizer_set_state
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1151,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1156,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1157,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1160,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1161,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1164,7'
          Dst:             finish_tag_name
        - Src:             'tokenizer.c:1165,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1166,14'
          Dst:             emit_current_tag
        - Src:             'tokenizer.c:1168,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1169,7'
          Dst:             append_char_to_tag_buffer
        - Src:             'tokenizer.c:1172,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1173,7'
          Dst:             abandon_current_tag
        - Src:             'tokenizer.c:1174,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1176,41'
          Dst:             ensure_lowercase
        - Src:             'tokenizer.c:1176,7'
          Dst:             append_char_to_tag_buffer
    - functionName:    handle_end_tag_open_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1142
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - clear_temporary_buffer
        - emit_from_mark
        - gumbo_tokenizer_set_state
        - is_alpha
        - reconsume_in_state
        - start_new_tag
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1120,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1122,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1123,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1126,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1129,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1130,14'
          Dst:             emit_from_mark
        - Src:             'tokenizer.c:1132,11'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1133,9'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1134,9'
          Dst:             start_new_tag
        - Src:             'tokenizer.c:1136,9'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1137,9'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1138,9'
          Dst:             clear_temporary_buffer
    - functionName:    handle_tag_open_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1082
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - clear_temporary_buffer
        - emit_from_mark
        - gumbo_tokenizer_set_state
        - is_alpha
        - reconsume_in_state
        - start_new_tag
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1083,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1085,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1086,7'
          Dst:             clear_temporary_buffer
        - Src:             'tokenizer.c:1089,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1092,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1093,7'
          Dst:             clear_temporary_buffer
        - Src:             'tokenizer.c:1094,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1097,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1099,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1100,14'
          Dst:             emit_from_mark
        - Src:             'tokenizer.c:1102,11'
          Dst:             is_alpha
        - Src:             'tokenizer.c:1103,9'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1104,9'
          Dst:             start_new_tag
        - Src:             'tokenizer.c:1107,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:1108,7'
          Dst:             reconsume_in_state
        - Src:             'tokenizer.c:1109,14'
          Dst:             emit_from_mark
    - functionName:    handle_plaintext_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1065
      functionLinenumberEnd: 1074
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - emit_char
        - emit_eof
        - emit_replacement_char
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1066,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1068,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1070,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1072,14'
          Dst:             emit_char
    - functionName:    handle_script_data_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1044
      functionLinenumberEnd: 1057
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - emit_char
        - emit_eof
        - emit_replacement_char
        - gumbo_tokenizer_set_state
        - set_mark
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1045,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1047,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1048,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1051,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1053,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1055,14'
          Dst:             emit_char
    - functionName:    handle_rawtext_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1023
      functionLinenumberEnd: 1036
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - emit_char
        - emit_eof
        - emit_replacement_char
        - gumbo_tokenizer_set_state
        - set_mark
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:1024,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1026,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1027,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1030,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1032,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1034,14'
          Dst:             emit_char
    - functionName:    handle_rcdata_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 1015
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - emit_char
        - emit_eof
        - emit_replacement_char
        - gumbo_tokenizer_set_state
        - set_mark
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:998,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:1000,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1001,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1005,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:1006,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:1009,14'
          Dst:             emit_replacement_char
        - Src:             'tokenizer.c:1011,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:1013,14'
          Dst:             emit_char
    - functionName:    handle_data_state
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 970
      functionLinenumberEnd: 989
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - emit_char
        - emit_eof
        - gumbo_tokenizer_set_state
        - set_mark
        - tokenizer_add_parse_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'tokenizer.c:971,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:973,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:974,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:978,7'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:979,7'
          Dst:             set_mark
        - Src:             'tokenizer.c:982,7'
          Dst:             tokenizer_add_parse_error
        - Src:             'tokenizer.c:983,14'
          Dst:             emit_char
        - Src:             'tokenizer.c:985,14'
          Dst:             emit_eof
        - Src:             'tokenizer.c:987,14'
          Dst:             emit_char
    - functionName:    gumbo_token_destroy
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3459
      functionLinenumberEnd: 3494
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          157
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - gumbo_destroy_attribute
        - gumbo_free
      functionUses:    2
      BranchProfiles:
        - Branch String:   'tokenizer.c:3462,3'
          Branch Sides:    []
      Callsites:
        - Src:             'tokenizer.c:3464,7'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:3465,7'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:3466,7'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:3473,11'
          Dst:             gumbo_destroy_attribute
        - Src:             'tokenizer.c:3476,7'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:3478,9'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:3484,9'
          Dst:             gumbo_free
        - Src:             'tokenizer.c:3489,7'
          Dst:             gumbo_free
    - functionName:    gumbo_lex
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3406
      functionLinenumberEnd: 3457
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          140
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - emit_char
        - gumbo_debug
        - maybe_emit_from_mark
        - utf8iterator_current
        - utf8iterator_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:3425,5'
          Dst:             emit_char
        - Src:             'tokenizer.c:3434,7'
          Dst:             maybe_emit_from_mark
        - Src:             'tokenizer.c:3439,5'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:3440,5'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:3441,13'
          Dst:             utf8iterator_current
        - Src:             'tokenizer.c:3443,5'
          Dst:             gumbo_debug
        - Src:             'tokenizer.c:3454,7'
          Dst:             utf8iterator_next
    - functionName:    gumbo_tokenizer_set_is_adjusted_current_node_foreign
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 956
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_debug
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:950,5'
          Dst:             gumbo_debug
    - functionName:    gumbo_tokenizer_state_destroy
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 939
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          87
      EdgeCount:       18
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - gumbo_free
        - gumbo_string_buffer_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:932,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:933,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:934,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:935,3'
          Dst:             gumbo_string_buffer_destroy
        - Src:             'tokenizer.c:936,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:937,3'
          Dst:             __assert_fail
        - Src:             'tokenizer.c:938,3'
          Dst:             gumbo_free
    - functionName:    gumbo_tokenizer_state_init
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/tokenizer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 906
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          80
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - doc_type_state_init
        - gumbo_alloc
        - gumbo_string_buffer_init
        - gumbo_tokenizer_set_state
        - mark_tag_state_as_empty
        - utf8iterator_get_char_pointer
        - utf8iterator_get_position
        - utf8iterator_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tokenizer.c:907,36'
          Dst:             gumbo_alloc
        - Src:             'tokenizer.c:909,3'
          Dst:             gumbo_tokenizer_set_state
        - Src:             'tokenizer.c:919,3'
          Dst:             gumbo_string_buffer_init
        - Src:             'tokenizer.c:922,3'
          Dst:             mark_tag_state_as_empty
        - Src:             'tokenizer.c:924,3'
          Dst:             utf8iterator_init
        - Src:             'tokenizer.c:925,3'
          Dst:             utf8iterator_get_position
        - Src:             'tokenizer.c:926,29'
          Dst:             utf8iterator_get_char_pointer
        - Src:             'tokenizer.c:927,3'
          Dst:             doc_type_state_init
    - functionName:    gumbo_ascii_isascii
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_ascii_isspace
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isascii
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:46,10'
          Dst:             gumbo_ascii_isascii
    - functionName:    utf8_is_control
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          32
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8_is_noncharacter
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_add_error
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'utf8.c:95,23'
          Dst:             gumbo_add_error
    - functionName:    utf8_is_surrogate
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./utf8.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          56
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8iterator_reset
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_char
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utf8.c:244,3'
          Dst:             read_char
    - functionName:    read_char
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         39
      ICount:          243
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - __assert_fail
        - add_error
        - decode
        - gumbo_ascii_isspace
        - utf8_is_control
        - utf8_is_noncharacter
        - utf8_is_surrogate
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'utf8.c:121,5'
          Dst:             decode
        - Src:             'utf8.c:130,9'
          Dst:             __assert_fail
        - Src:             'utf8.c:142,11'
          Dst:             utf8_is_surrogate
        - Src:             'utf8.c:143,2'
          Dst:             add_error
        - Src:             'utf8.c:144,18'
          Dst:             utf8_is_noncharacter
        - Src:             'utf8.c:145,9'
          Dst:             add_error
        - Src:             'utf8.c:146,18'
          Dst:             utf8_is_control
        - Src:             'utf8.c:147,23'
          Dst:             gumbo_ascii_isspace
        - Src:             'utf8.c:148,9'
          Dst:             add_error
        - Src:             'utf8.c:156,7'
          Dst:             add_error
        - Src:             'utf8.c:167,3'
          Dst:             add_error
    - functionName:    utf8iterator_mark
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8iterator_maybe_consume_match
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          106
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - gumbo_ascii_strncasecmp
        - strncmp
        - utf8iterator_next
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'utf8.c:221,12'
          Dst:             strncmp
        - Src:             'utf8.c:222,12'
          Dst:             gumbo_ascii_strncasecmp
        - Src:             'utf8.c:227,7'
          Dst:             utf8iterator_next
    - functionName:    strncmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8iterator_next
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_char
        - update_position
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'utf8.c:206,3'
          Dst:             update_position
        - Src:             'utf8.c:208,3'
          Dst:             read_char
    - functionName:    update_position
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8iterator_init
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/utf8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - read_char
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utf8.c:195,3'
          Dst:             read_char
        - Src:             'utf8.c:199,5'
          Dst:             read_char
    - functionName:    gumbo_strdup
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_alloc
        - strlen
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'util.c:47,23'
          Dst:             strlen
        - Src:             'util.c:51,18'
          Dst:             gumbo_alloc
    - functionName:    gumbo_alloc
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          30
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - perror
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'util.c:27,5'
          Dst:             perror
        - Src:             'util.c:28,5'
          Dst:             abort
    - functionName:    perror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    abort
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_free
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    44
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_realloc
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          32
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - perror
        - realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'util.c:34,9'
          Dst:             realloc
        - Src:             'util.c:36,5'
          Dst:             perror
        - Src:             'util.c:37,5'
          Dst:             abort
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_vector_remove_at
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/vector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'vector.c:102,3'
          Dst:             __assert_fail
    - functionName:    gumbo_vector_remove
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/vector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_vector_index_of
        - gumbo_vector_remove_at
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'vector.c:94,15'
          Dst:             gumbo_vector_index_of
        - Src:             'vector.c:98,3'
          Dst:             gumbo_vector_remove_at
    - functionName:    gumbo_vector_index_of
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/vector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_vector_insert_at
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/vector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - enlarge_vector_if_full
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'vector.c:82,3'
          Dst:             __assert_fail
        - Src:             'vector.c:83,3'
          Dst:             enlarge_vector_if_full
    - functionName:    enlarge_vector_if_full
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/vector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gumbo_alloc
        - gumbo_realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vector.c:45,22'
          Dst:             gumbo_realloc
        - Src:             'vector.c:49,22'
          Dst:             gumbo_alloc
    - functionName:    gumbo_vector_pop
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/vector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          35
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_vector_add
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/vector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - enlarge_vector_if_full
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'vector.c:55,3'
          Dst:             enlarge_vector_if_full
        - Src:             'vector.c:56,3'
          Dst:             __assert_fail
        - Src:             'vector.c:57,3'
          Dst:             __assert_fail
    - functionName:    gumbo_vector_destroy
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/vector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_free
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'vector.c:36,5'
          Dst:             gumbo_free
    - functionName:    gumbo_vector_init
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/vector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_alloc
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'vector.c:28,20'
          Dst:             gumbo_alloc
    - functionName:    gumbo_ascii_isupper
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_ascii_strncasecmp
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/ascii.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          111
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - gumbo_ascii_tolower
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'ascii.c:21,31'
          Dst:             gumbo_ascii_tolower
        - Src:             'ascii.c:22,31'
          Dst:             gumbo_ascii_tolower
    - functionName:    gumbo_ascii_tolower
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isupper
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:105,7'
          Dst:             gumbo_ascii_isupper
    - functionName:    gumbo_ascii_strcasecmp
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/ascii.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3
      functionLinenumberEnd: 15
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - gumbo_ascii_tolower
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ascii.c:6,31'
          Dst:             gumbo_ascii_tolower
        - Src:             'ascii.c:7,31'
          Dst:             gumbo_ascii_tolower
    - functionName:    gumbo_destroy_attribute
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'attribute.c:39,3'
          Dst:             gumbo_free
        - Src:             'attribute.c:40,3'
          Dst:             gumbo_free
        - Src:             'attribute.c:41,3'
          Dst:             gumbo_free
    - functionName:    gumbo_get_attribute
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - gumbo_ascii_strcasecmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'attribute.c:31,10'
          Dst:             gumbo_ascii_strcasecmp
    - functionName:    match_named_char_ref
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/src/char_ref.rl'
      linkageType:     InternalLinkage
      functionLinenumber: 2139
      functionLinenumberEnd: 22215
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         2280
      ICount:          29883
      EdgeCount:       2287
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/char_ref.c:13209,2'
          Branch Sides:    []
        - Branch String:   'src/char_ref.c:13231,2'
          Branch Sides:    []
        - Branch String:   'src/char_ref.c:22196,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    print_tag_stack
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          95
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - gumbo_normalized_tagname
        - gumbo_string_buffer_append_codepoint
        - print_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:101,3'
          Dst:             print_message
        - Src:             'error.c:104,7'
          Dst:             print_message
        - Src:             'error.c:111,18'
          Dst:             gumbo_normalized_tagname
        - Src:             'error.c:113,5'
          Dst:             print_message
        - Src:             'error.c:115,3'
          Dst:             gumbo_string_buffer_append_codepoint
    - functionName:    print_message
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          137
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - gumbo_string_buffer_reserve
        - vsnprintf
      functionUses:    63
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:42,23'
          Dst:             vsnprintf
        - Src:             'error.c:82,5'
          Dst:             gumbo_string_buffer_reserve
        - Src:             'error.c:85,21'
          Dst:             vsnprintf
    - functionName:    vsnprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_ascii_iscntrl
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_ascii_isascii
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './ascii.h:39,10'
          Dst:             gumbo_ascii_isascii
    - functionName:    gumbo_ascii_isascii
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/./ascii.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_parser_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          153
      EdgeCount:       29
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - gumbo_normalized_tagname
        - print_message
        - print_tag_stack
      functionUses:    1
      BranchProfiles:
        - Branch String:   'error.c:341,3'
          Branch Sides:    []
      Callsites:
        - Src:             'error.c:334,5'
          Dst:             print_message
        - Src:             'error.c:343,5'
          Dst:             print_message
        - Src:             'error.c:347,5'
          Dst:             __assert_fail
        - Src:             'error.c:354,5'
          Dst:             print_message
        - Src:             'error.c:357,5'
          Dst:             print_message
        - Src:             'error.c:361,7'
          Dst:             print_message
        - Src:             'error.c:363,7'
          Dst:             print_message
        - Src:             'error.c:364,7'
          Dst:             print_tag_stack
        - Src:             'error.c:375,18'
          Dst:             gumbo_normalized_tagname
        - Src:             'error.c:377,5'
          Dst:             print_message
        - Src:             'error.c:378,5'
          Dst:             print_tag_stack
    - functionName:    handle_tokenizer_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         63
      ICount:          508
      EdgeCount:       63
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - gumbo_ascii_isascii
        - gumbo_ascii_iscntrl
        - print_message
      functionUses:    1
      BranchProfiles:
        - Branch String:   'error.c:122,3'
          Branch Sides:    []
      Callsites:
        - Src:             'error.c:124,7'
          Dst:             print_message
        - Src:             'error.c:128,5'
          Dst:             print_message
        - Src:             'error.c:136,5'
          Dst:             print_message
        - Src:             'error.c:144,5'
          Dst:             print_message
        - Src:             'error.c:152,5'
          Dst:             print_message
        - Src:             'error.c:155,5'
          Dst:             print_message
        - Src:             'error.c:162,5'
          Dst:             print_message
        - Src:             'error.c:169,5'
          Dst:             print_message
        - Src:             'error.c:177,5'
          Dst:             print_message
        - Src:             'error.c:180,5'
          Dst:             print_message
        - Src:             'error.c:183,5'
          Dst:             print_message
        - Src:             'error.c:186,5'
          Dst:             print_message
        - Src:             'error.c:189,5'
          Dst:             print_message
        - Src:             'error.c:192,5'
          Dst:             print_message
        - Src:             'error.c:195,5'
          Dst:             print_message
        - Src:             'error.c:198,5'
          Dst:             print_message
        - Src:             'error.c:201,5'
          Dst:             print_message
        - Src:             'error.c:204,5'
          Dst:             print_message
        - Src:             'error.c:207,5'
          Dst:             print_message
        - Src:             'error.c:210,5'
          Dst:             print_message
        - Src:             'error.c:213,9'
          Dst:             gumbo_ascii_isascii
        - Src:             'error.c:214,13'
          Dst:             gumbo_ascii_iscntrl
        - Src:             'error.c:215,7'
          Dst:             print_message
        - Src:             'error.c:217,7'
          Dst:             print_message
        - Src:             'error.c:220,5'
          Dst:             print_message
        - Src:             'error.c:223,5'
          Dst:             print_message
        - Src:             'error.c:226,5'
          Dst:             print_message
        - Src:             'error.c:229,5'
          Dst:             print_message
        - Src:             'error.c:232,5'
          Dst:             print_message
        - Src:             'error.c:235,5'
          Dst:             print_message
        - Src:             'error.c:238,5'
          Dst:             print_message
        - Src:             'error.c:241,5'
          Dst:             print_message
        - Src:             'error.c:245,5'
          Dst:             print_message
        - Src:             'error.c:248,5'
          Dst:             print_message
        - Src:             'error.c:251,5'
          Dst:             print_message
        - Src:             'error.c:254,5'
          Dst:             print_message
        - Src:             'error.c:257,5'
          Dst:             print_message
        - Src:             'error.c:260,5'
          Dst:             print_message
        - Src:             'error.c:263,5'
          Dst:             print_message
        - Src:             'error.c:271,5'
          Dst:             print_message
        - Src:             'error.c:274,5'
          Dst:             print_message
        - Src:             'error.c:277,5'
          Dst:             print_message
        - Src:             'error.c:281,5'
          Dst:             print_message
        - Src:             'error.c:289,5'
          Dst:             print_message
        - Src:             'error.c:292,5'
          Dst:             print_message
        - Src:             'error.c:295,5'
          Dst:             print_message
        - Src:             'error.c:298,5'
          Dst:             print_message
        - Src:             'error.c:301,5'
          Dst:             print_message
        - Src:             'error.c:304,5'
          Dst:             print_message
        - Src:             'error.c:307,5'
          Dst:             print_message
        - Src:             'error.c:310,5'
          Dst:             print_message
        - Src:             'error.c:313,5'
          Dst:             print_message
        - Src:             'error.c:317,5'
          Dst:             print_message
        - Src:             'error.c:320,5'
          Dst:             print_message
        - Src:             'error.c:323,5'
          Dst:             __assert_fail
    - functionName:    gumbo_destroy_errors
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 658
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - gumbo_error_destroy
        - gumbo_vector_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:655,5'
          Dst:             gumbo_error_destroy
        - Src:             'error.c:657,3'
          Dst:             gumbo_vector_destroy
    - functionName:    gumbo_error_destroy
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          106
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - gumbo_free
        - gumbo_vector_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:635,7'
          Dst:             gumbo_free
        - Src:             'error.c:641,9'
          Dst:             gumbo_free
        - Src:             'error.c:644,5'
          Dst:             gumbo_vector_destroy
        - Src:             'error.c:646,3'
          Dst:             gumbo_free
    - functionName:    gumbo_init_errors
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gumbo_vector_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:650,3'
          Dst:             gumbo_vector_init
    - functionName:    gumbo_print_caret_diagnostic
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - caret_diagnostic_to_string
        - gumbo_string_buffer_destroy
        - gumbo_string_buffer_init
        - print_message
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:618,3'
          Dst:             gumbo_string_buffer_init
        - Src:             'error.c:619,3'
          Dst:             print_message
        - Src:             'error.c:626,3'
          Dst:             caret_diagnostic_to_string
        - Src:             'error.c:627,3'
          Dst:             printf
        - Src:             'error.c:628,3'
          Dst:             gumbo_string_buffer_destroy
    - functionName:    caret_diagnostic_to_string
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          108
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - error_to_string
        - find_next_newline
        - find_prev_newline
        - gumbo_string_buffer_append_codepoint
        - gumbo_string_buffer_append_string
        - gumbo_string_buffer_reserve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:577,3'
          Dst:             error_to_string
        - Src:             'error.c:580,28'
          Dst:             find_prev_newline
        - Src:             'error.c:581,26'
          Dst:             find_next_newline
        - Src:             'error.c:586,3'
          Dst:             gumbo_string_buffer_append_codepoint
        - Src:             'error.c:587,3'
          Dst:             gumbo_string_buffer_append_string
        - Src:             'error.c:588,3'
          Dst:             gumbo_string_buffer_append_codepoint
        - Src:             'error.c:589,3'
          Dst:             gumbo_string_buffer_reserve
        - Src:             'error.c:595,3'
          Dst:             gumbo_string_buffer_append_codepoint
        - Src:             'error.c:596,3'
          Dst:             gumbo_string_buffer_append_codepoint
    - functionName:    printf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    error_to_string
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - handle_parser_error
        - handle_tokenizer_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:558,5'
          Dst:             handle_tokenizer_error
        - Src:             'error.c:560,5'
          Dst:             handle_parser_error
    - functionName:    find_prev_newline
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          122
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:393,3'
          Dst:             __assert_fail
        - Src:             'error.c:394,3'
          Dst:             __assert_fail
    - functionName:    find_next_newline
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          76
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:412,3'
          Dst:             __assert_fail
        - Src:             'error.c:413,3'
          Dst:             __assert_fail
    - functionName:    gumbo_caret_diagnostic_to_string
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - caret_diagnostic_to_string
        - gumbo_string_buffer_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:606,3'
          Dst:             gumbo_string_buffer_init
        - Src:             'error.c:607,3'
          Dst:             caret_diagnostic_to_string
    - functionName:    gumbo_error_to_string
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - error_to_string
        - gumbo_string_buffer_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:565,3'
          Dst:             gumbo_string_buffer_init
        - Src:             'error.c:566,3'
          Dst:             error_to_string
    - functionName:    gumbo_error_code
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 551
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         55
      ICount:          279
      EdgeCount:       108
      CyclomaticComplexity: 55
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'error.c:437,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    gumbo_error_position
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gumbo_add_error
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - gumbo_alloc
        - gumbo_vector_add
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'error.c:427,23'
          Dst:             gumbo_alloc
        - Src:             'error.c:428,3'
          Dst:             gumbo_vector_add
    - functionName:    hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/foreign_attrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'foreign_attrs.c:51,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    gumbo_get_foreign_attr_replacement
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/foreign_attrs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          113
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - hash
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'foreign_attrs.c:91,35'
          Dst:             hash
        - Src:             'foreign_attrs.c:98,37'
          Dst:             memcmp
    - functionName:    gumbo_string_set_contains
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashmap_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'string_set.c:40,10'
          Dst:             hashmap_get
    - functionName:    gumbo_string_set_insert
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashmap_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'string_set.c:34,3'
          Dst:             hashmap_set
    - functionName:    gumbo_string_set_free
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashmap_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'string_set.c:28,3'
          Dst:             hashmap_free
    - functionName:    string_compare
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10
      functionLinenumberEnd: 11
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'string_set.c:11,10'
          Dst:             strcmp
    - functionName:    string_hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashmap_xxhash3
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'string_set.c:17,31'
          Dst:             strlen
        - Src:             'string_set.c:17,10'
          Dst:             hashmap_xxhash3
    - functionName:    gumbo_string_set_new
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/string_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 23
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashmap_new
        - string_compare
        - string_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'string_set.c:23,10'
          Dst:             hashmap_new
        - Src:             'string_set.c:23,10'
          Dst:             string_hash
        - Src:             'string_set.c:23,10'
          Dst:             string_compare
    - functionName:    XXH_read32
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    XXH_rotl64
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    XXH_read64
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 646
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bucket_at0
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resize0
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          238
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - bucket_at
        - hashmap_new_with_allocator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:227,28'
          Dst:             hashmap_new_with_allocator
        - Src:             'hashmap.c:232,32'
          Dst:             bucket_at
        - Src:             'hashmap.c:239,37'
          Dst:             bucket_at
    - functionName:    hashmap_new_with_allocator
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          327
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - clamp_load_factor
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:155,23'
          Dst:             clamp_load_factor
    - functionName:    bucket_at
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bucket_at0
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:86,12'
          Dst:             bucket_at0
    - functionName:    clamp_load_factor
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          41
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xxh3
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 755
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          321
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - XXH_read32
        - XXH_read64
        - XXH_rotl64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:675,19'
          Dst:             XXH_read64
        - Src:             'hashmap.c:676,18'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:679,19'
          Dst:             XXH_read64
        - Src:             'hashmap.c:680,18'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:683,19'
          Dst:             XXH_read64
        - Src:             'hashmap.c:684,18'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:687,19'
          Dst:             XXH_read64
        - Src:             'hashmap.c:688,18'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:694,15'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:694,35'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:694,55'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:695,13'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:698,14'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:704,14'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:710,14'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:716,14'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:728,23'
          Dst:             XXH_read64
        - Src:             'hashmap.c:730,14'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:733,15'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:738,27'
          Dst:             XXH_read32
        - Src:             'hashmap.c:739,15'
          Dst:             XXH_rotl64
        - Src:             'hashmap.c:745,15'
          Dst:             XXH_rotl64
    - functionName:    hashmap_xxhash3
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 775
      functionLinenumberEnd: 777
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xxh3
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:777,12'
          Dst:             xxh3
    - functionName:    MM86128
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          669
      EdgeCount:       71
      CyclomaticComplexity: 37
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hashmap.c:597,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hashmap_murmur
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MM86128
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:770,12'
          Dst:             MM86128
    - functionName:    SIP64
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 555
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          916
      EdgeCount:       41
      CyclomaticComplexity: 22
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hashmap.c:537,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hashmap_sip
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 761
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - SIP64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:762,12'
          Dst:             SIP64
    - functionName:    hashmap_iter
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bucket_at
        - bucket_item
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:471,18'
          Dst:             bucket_at
        - Src:             'hashmap.c:474,13'
          Dst:             bucket_item
    - functionName:    bucket_item
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hashmap_scan
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - bucket_at
        - bucket_item
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:441,33'
          Dst:             bucket_at
        - Src:             'hashmap.c:442,34'
          Dst:             bucket_item
    - functionName:    hashmap_oom
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hashmap_free
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - free_elements
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:423,5'
          Dst:             free_elements
    - functionName:    free_elements
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - bucket_at
        - bucket_item
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:195,37'
          Dst:             bucket_at
        - Src:             'hashmap.c:196,42'
          Dst:             bucket_item
    - functionName:    hashmap_count
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hashmap_delete
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_hash
        - hashmap_delete_with_hash
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:410,47'
          Dst:             get_hash
        - Src:             'hashmap.c:410,12'
          Dst:             hashmap_delete_with_hash
    - functionName:    get_hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clip_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:98,12'
          Dst:             clip_hash
    - functionName:    hashmap_delete_with_hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          209
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - bucket_at
        - bucket_item
        - clip_hash
        - resize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:369,12'
          Dst:             clip_hash
        - Src:             'hashmap.c:373,33'
          Dst:             bucket_at
        - Src:             'hashmap.c:377,23'
          Dst:             bucket_item
        - Src:             'hashmap.c:386,26'
          Dst:             bucket_at
        - Src:             'hashmap.c:399,17'
          Dst:             resize
    - functionName:    clip_hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resize
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - resize0
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:264,12'
          Dst:             resize0
    - functionName:    hashmap_probe
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bucket_at
        - bucket_item
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:356,29'
          Dst:             bucket_at
        - Src:             'hashmap.c:360,12'
          Dst:             bucket_item
    - functionName:    hashmap_get
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_hash
        - hashmap_get_with_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:348,44'
          Dst:             get_hash
        - Src:             'hashmap.c:348,12'
          Dst:             hashmap_get_with_hash
    - functionName:    hashmap_get_with_hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          103
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - bucket_at
        - bucket_item
        - clip_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:330,12'
          Dst:             clip_hash
        - Src:             'hashmap.c:333,33'
          Dst:             bucket_at
        - Src:             'hashmap.c:336,27'
          Dst:             bucket_item
    - functionName:    hashmap_set
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_hash
        - hashmap_set_with_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:321,45'
          Dst:             get_hash
        - Src:             'hashmap.c:321,12'
          Dst:             hashmap_set_with_hash
    - functionName:    hashmap_set_with_hash
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          259
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - bucket_at
        - bucket_item
        - clip_hash
        - resize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:273,12'
          Dst:             clip_hash
        - Src:             'hashmap.c:276,14'
          Dst:             resize
        - Src:             'hashmap.c:285,19'
          Dst:             bucket_item
        - Src:             'hashmap.c:291,33'
          Dst:             bucket_at
        - Src:             'hashmap.c:297,17'
          Dst:             bucket_item
        - Src:             'hashmap.c:309,21'
          Dst:             bucket_item
    - functionName:    hashmap_clear
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          136
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - free_elements
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:209,5'
          Dst:             free_elements
    - functionName:    hashmap_new
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashmap_new_with_allocator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:188,12'
          Dst:             hashmap_new_with_allocator
    - functionName:    hashmap_set_load_factor
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clamp_load_factor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hashmap.c:76,14'
          Dst:             clamp_load_factor
    - functionName:    hashmap_set_grow_by_power
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hashmap_set_allocator
      functionSourceFile: '/src/nokogiri/gumbo-parser/src/hashmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
...
