All classes:
- html5lib.constants.DataLossWarning
- html5lib.constants._ReparseException
- html5lib._utils.MethodDispatcher
- html5lib._utils.BoundMethodDispatcher
- html5lib._inputstream.BufferedStream
- html5lib._inputstream.HTMLUnicodeInputStream
- html5lib._inputstream.HTMLBinaryInputStream
- html5lib._inputstream.EncodingBytes
- html5lib._inputstream.EncodingParser
- html5lib._inputstream.ContentAttrParser
- html5lib._trie._base.Trie
- html5lib._trie.py.Trie
- html5lib._tokenizer.HTMLTokenizer
- html5lib.treebuilders.base.Node
- html5lib.treebuilders.base.ActiveFormattingElements
- html5lib.treebuilders.base.TreeBuilder
- html5lib.treebuilders.dom.getDomBuilder.AttrList
- html5lib.treebuilders.dom.getDomBuilder.NodeBuilder
- html5lib.treebuilders.dom.getDomBuilder.TreeBuilder
- html5lib.treebuilders.etree.getETreeBuilder.Element
- html5lib.treebuilders.etree.getETreeBuilder.Comment
- html5lib.treebuilders.etree.getETreeBuilder.DocumentType
- html5lib.treebuilders.etree.getETreeBuilder.Document
- html5lib.treebuilders.etree.getETreeBuilder.DocumentFragment
- html5lib.treebuilders.etree.getETreeBuilder.TreeBuilder
- html5lib.treebuilders.etree_lxml.DocumentType
- html5lib.treebuilders.etree_lxml.Document
- html5lib.treebuilders.etree_lxml.TreeBuilder
- html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes
- html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element
- html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment
- html5lib.html5parser.method_decorator_metaclass.Decorated
- html5lib.html5parser.HTMLParser
- html5lib.html5parser.getPhases.Phase
- html5lib.html5parser.getPhases.InitialPhase
- html5lib.html5parser.getPhases.BeforeHtmlPhase
- html5lib.html5parser.getPhases.BeforeHeadPhase
- html5lib.html5parser.getPhases.InHeadPhase
- html5lib.html5parser.getPhases.InHeadNoscriptPhase
- html5lib.html5parser.getPhases.AfterHeadPhase
- html5lib.html5parser.getPhases.InBodyPhase
- html5lib.html5parser.getPhases.TextPhase
- html5lib.html5parser.getPhases.InTablePhase
- html5lib.html5parser.getPhases.InTableTextPhase
- html5lib.html5parser.getPhases.InCaptionPhase
- html5lib.html5parser.getPhases.InColumnGroupPhase
- html5lib.html5parser.getPhases.InTableBodyPhase
- html5lib.html5parser.getPhases.InRowPhase
- html5lib.html5parser.getPhases.InCellPhase
- html5lib.html5parser.getPhases.InSelectPhase
- html5lib.html5parser.getPhases.InSelectInTablePhase
- html5lib.html5parser.getPhases.InForeignContentPhase
- html5lib.html5parser.getPhases.AfterBodyPhase
- html5lib.html5parser.getPhases.InFramesetPhase
- html5lib.html5parser.getPhases.AfterFramesetPhase
- html5lib.html5parser.getPhases.AfterAfterBodyPhase
- html5lib.html5parser.getPhases.AfterAfterFramesetPhase
- html5lib.html5parser.ParseError
- html5lib.treewalkers.base.TreeWalker
- html5lib.treewalkers.base.NonRecursiveTreeWalker
- html5lib.treewalkers.dom.TreeWalker
- html5lib.treewalkers.genshi.TreeWalker
- html5lib.treewalkers.etree_lxml.Root
- html5lib.treewalkers.etree_lxml.Doctype
- html5lib.treewalkers.etree_lxml.FragmentRoot
- html5lib.treewalkers.etree_lxml.FragmentWrapper
- html5lib.treewalkers.etree_lxml.TreeWalker
- html5lib.treewalkers.etree.getETreeBuilder.TreeWalker
- html5lib.serializer.HTMLSerializer
- html5lib.filters.base.Filter
- html5lib.filters.inject_meta_charset.Filter
- html5lib.filters.alphabeticalattributes.Filter
- html5lib.filters.whitespace.Filter
- html5lib.filters.sanitizer.Filter
- html5lib.filters.optionaltags.Filter
- html5lib.serializer.SerializeError
- html5lib._ihatexml.InfosetFilter
- html5lib.filters.lint.Filter
All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: '...fuzz_parse'
    functionSourceFile: '...fuzz_parse'
    functionUses: 0
    functionsReached:
    - atheris.instrument_all
    - atheris.Fuzz
    - atheris.Setup
    - '...fuzz_parse.main'
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 20
    functionName: '...fuzz_parse.TestOneInput'
    functionSourceFile: '...fuzz_parse'
    functionUses: 0
    functionsReached:
    - html5lib.parse
    - atheris.FuzzedDataProvider
    - fdp.ConsumeUnicodeNoSurrogates
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.FuzzedDataProvider
    functionSourceFile: atheris
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeUnicodeNoSurrogates
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.parse
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: '...fuzz_parse.main'
    functionSourceFile: '...fuzz_parse'
    functionUses: 1
    functionsReached:
    - atheris.instrument_all
    - atheris.Fuzz
    - atheris.Setup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.instrument_all
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib
    functionSourceFile: html5lib
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.html5parser
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib._utils.memoize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc44ef46580>
    - <ast.Constant object at 0x7fc44ef46550>
    argNames:
    - doc
    - treebuilder
    - namespaceHTMLElements
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 26
    functionName: html5lib.html5parser.parse
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - treeBuilderCache.get
    - chardet.universaldetector.UniversalDetector.close
    - html5lib.html5parser.HTMLParser.parseError
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._tokenizer.HTMLTokenizer.tagOpenState
    - io.BytesIO.tell
    - collections.deque.append
    - html5lib.html5parser.HTMLParser.parse
    - html5lib._inputstream.HTMLBinaryInputStream.__init__
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.bogusDoctypeState
    - html5lib.html5parser.HTMLParser.mainLoop
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeStartState
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeValueState
    - html5lib._utils.isSurrogatePair
    - html5lib.html5parser.HTMLParser.__init__
    - <builtin>.hasattr
    - html5lib.html5parser.HTMLParser.resetInsertionMode
    - match.start
    - io.StringIO
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedLessThanSignState
    - chunk.rfind
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashState
    - html5lib._inputstream.EncodingParser.getEncoding
    - html5lib._tokenizer.HTMLTokenizer.commentEndState
    - webencodings.lookup
    - html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    - html5lib._tokenizer.HTMLTokenizer.scriptDataLessThanSignState
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemKeywordState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeEndState
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagNameState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueUnQuotedState
    - html5lib._inputstream.EncodingBytes.jumpTo
    - match.group
    - <builtin>.sum
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.bogusCommentState
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeValueState
    - phase.processDoctype
    - html5lib._tokenizer.HTMLTokenizer.commentEndDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - chardet.universaldetector.UniversalDetector.feed
    - collections.OrderedDict
    - html5lib._tokenizer.HTMLTokenizer.commentState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedState
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.attributeValueSingleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.rawtextLessThanSignState
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.commentEndBangState
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - six.unichr
    - html5lib._inputstream.BufferedStream.tell
    - html5lib._inputstream.BufferedStream.seek
    - <builtin>.super
    - phase.processStartTag
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - html5lib._tokenizer.HTMLTokenizer.closeTagOpenState
    - html5lib.treebuilders.getTreeBuilder
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierSingleQuotedState
    - html5lib._inputstream.lookupEncoding
    - html5lib._inputstream.HTMLInputStream
    - <builtin>.int
    - buffers.append
    - html5lib._tokenizer.HTMLTokenizer.doctypeNameState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagNameState
    - html5lib._inputstream.EncodingBytes.__iter__
    - phase.processSpaceCharacters
    - html5lib._tokenizer.HTMLTokenizer.__init__
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartDashState
    - encoding.decode
    - html5lib._tokenizer.HTMLTokenizer.commentStartState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashDashState
    - <builtin>.isinstance
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeNameState
    - rv.append
    - io.BytesIO.seek
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierSingleQuotedState
    - data.count
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagOpenState
    - html5lib._inputstream.HTMLBinaryInputStream.determineEncoding
    - html5lib._inputstream.HTMLBinaryInputStream.openStream
    - html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartState
    - html5lib.html5parser.HTMLParser.reset
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - bomDict.get
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueDoubleQuotedState
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - html5lib._tokenizer.HTMLTokenizer.rawtextState
    - html5lib._tokenizer.HTMLTokenizer.entityDataState
    - chardet.universaldetector.UniversalDetector
    - html5lib._tokenizer.HTMLTokenizer.plaintextState
    - html5lib.html5parser.HTMLParser.isHTMLIntegrationPoint
    - html5lib._tokenizer.HTMLTokenizer.selfClosingStartTagState
    - phases.append
    - re.compile
    - <builtin>.ord
    - phase.processComment
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - html5lib._inputstream.HTMLUnicodeInputStream.position
    - collections.deque.popleft
    - phase.processEndTag
    - html5lib._tokenizer.HTMLTokenizer.rcdataState
    - html5lib._tokenizer.HTMLTokenizer.doctypeState
    - html5lib._utils.surrogatePairToCodepoint
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - source.read
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._tokenizer.HTMLTokenizer.cdataSectionState
    - html5lib._inputstream.HTMLUnicodeInputStream.openStream
    - data.append
    - invalid_unicode_re.findall
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._tokenizer.HTMLTokenizer.attributeNameState
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagNameState
    - bisect.bisect_left
    - m.end
    - html5lib._inputstream.HTMLUnicodeInputStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.markupDeclarationOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagNameState
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - new_token.get
    - charStack.pop
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeSystemIdentifierState
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib.html5parser.HTMLParser._parse
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeNameState
    - data.replace
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataState
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeNameState
    - html5lib._inputstream.BufferedStream._readStream
    - phase.processCharacters
    - io.BytesIO
    - html5lib._tokenizer.HTMLTokenizer.__iter__
    - html5lib._tokenizer.HTMLTokenizer.characterReferenceInRcdata
    - prefix.startswith
    - html5lib._tokenizer.HTMLTokenizer.dataState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedLessThanSignState
    - x.endswith
    - html5lib.html5parser.getPhases
    - html5lib._tokenizer.HTMLTokenizer.rcdataLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashDashState
    - html5lib.html5parser.HTMLParser.isMathMLTextIntegrationPoint
    - html5lib._inputstream.BufferedStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicKeywordState
    - chars.match
    - treeType.lower
    - html5lib._tokenizer.HTMLTokenizer.tagNameState
    - html5lib._tokenizer.HTMLTokenizer.commentStartDashState
    - chunk.count
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.betweenDoctypePublicAndSystemIdentifiersState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeNameState
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc4509a3d00>
    argNames:
    - treeType
    - implementation
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: html5lib.treebuilders.getTreeBuilder
    functionSourceFile: html5lib.treebuilders
    functionUses: 3
    functionsReached:
    - treeType.lower
    - treeBuilderCache.get
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc44e26d700>
    - <ast.Constant object at 0x7fc44e26d6d0>
    - <ast.Constant object at 0x7fc44e26d6a0>
    - <ast.Constant object at 0x7fc44e26d670>
    argNames:
    - self
    - tree
    - strict
    - namespaceHTMLElements
    - debug
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 93
    functionName: html5lib.html5parser.HTMLParser.__init__
    functionSourceFile: html5lib.html5parser
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - treeType.lower
    - html5lib.treebuilders.getTreeBuilder
    - treeBuilderCache.get
    - html5lib.html5parser.getPhases
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 265
    functionName: html5lib.html5parser.HTMLParser.parse
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached:
    - chardet.universaldetector.UniversalDetector.close
    - html5lib.html5parser.HTMLParser.parseError
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._tokenizer.HTMLTokenizer.tagOpenState
    - io.BytesIO.tell
    - collections.deque.append
    - html5lib._inputstream.HTMLBinaryInputStream.__init__
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.bogusDoctypeState
    - html5lib.html5parser.HTMLParser.mainLoop
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeStartState
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeValueState
    - html5lib._utils.isSurrogatePair
    - <builtin>.hasattr
    - html5lib.html5parser.HTMLParser.resetInsertionMode
    - match.start
    - io.StringIO
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedLessThanSignState
    - chunk.rfind
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashState
    - html5lib._inputstream.EncodingParser.getEncoding
    - html5lib._tokenizer.HTMLTokenizer.commentEndState
    - webencodings.lookup
    - html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    - html5lib._tokenizer.HTMLTokenizer.scriptDataLessThanSignState
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemKeywordState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeEndState
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagNameState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueUnQuotedState
    - html5lib._inputstream.EncodingBytes.jumpTo
    - match.group
    - <builtin>.sum
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.bogusCommentState
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeValueState
    - phase.processDoctype
    - html5lib._tokenizer.HTMLTokenizer.commentEndDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - chardet.universaldetector.UniversalDetector.feed
    - collections.OrderedDict
    - html5lib._tokenizer.HTMLTokenizer.commentState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedState
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.attributeValueSingleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.rawtextLessThanSignState
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.commentEndBangState
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - six.unichr
    - html5lib._inputstream.BufferedStream.tell
    - html5lib._inputstream.BufferedStream.seek
    - <builtin>.super
    - phase.processStartTag
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - html5lib._tokenizer.HTMLTokenizer.closeTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierSingleQuotedState
    - html5lib._inputstream.lookupEncoding
    - html5lib._inputstream.HTMLInputStream
    - <builtin>.int
    - buffers.append
    - html5lib._tokenizer.HTMLTokenizer.doctypeNameState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagNameState
    - html5lib._inputstream.EncodingBytes.__iter__
    - phase.processSpaceCharacters
    - html5lib._tokenizer.HTMLTokenizer.__init__
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartDashState
    - encoding.decode
    - html5lib._tokenizer.HTMLTokenizer.commentStartState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashDashState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedState
    - <builtin>.isinstance
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeNameState
    - rv.append
    - io.BytesIO.seek
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierSingleQuotedState
    - data.count
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagOpenState
    - html5lib._inputstream.HTMLBinaryInputStream.determineEncoding
    - html5lib._inputstream.HTMLBinaryInputStream.openStream
    - html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartState
    - html5lib.html5parser.HTMLParser.reset
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - bomDict.get
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueDoubleQuotedState
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - html5lib._tokenizer.HTMLTokenizer.rawtextState
    - html5lib._tokenizer.HTMLTokenizer.entityDataState
    - chardet.universaldetector.UniversalDetector
    - html5lib._tokenizer.HTMLTokenizer.plaintextState
    - html5lib.html5parser.HTMLParser.isHTMLIntegrationPoint
    - html5lib._tokenizer.HTMLTokenizer.selfClosingStartTagState
    - phases.append
    - re.compile
    - <builtin>.ord
    - phase.processComment
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - html5lib._inputstream.HTMLUnicodeInputStream.position
    - collections.deque.popleft
    - phase.processEndTag
    - html5lib._tokenizer.HTMLTokenizer.rcdataState
    - html5lib._tokenizer.HTMLTokenizer.doctypeState
    - html5lib._utils.surrogatePairToCodepoint
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - source.read
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._tokenizer.HTMLTokenizer.cdataSectionState
    - html5lib._inputstream.HTMLUnicodeInputStream.openStream
    - data.append
    - invalid_unicode_re.findall
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._tokenizer.HTMLTokenizer.attributeNameState
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagNameState
    - bisect.bisect_left
    - m.end
    - html5lib._inputstream.HTMLUnicodeInputStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.markupDeclarationOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagNameState
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - new_token.get
    - charStack.pop
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeSystemIdentifierState
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib.html5parser.HTMLParser._parse
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeNameState
    - data.replace
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataState
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeNameState
    - html5lib._inputstream.BufferedStream._readStream
    - phase.processCharacters
    - io.BytesIO
    - html5lib._tokenizer.HTMLTokenizer.__iter__
    - html5lib._tokenizer.HTMLTokenizer.characterReferenceInRcdata
    - prefix.startswith
    - html5lib._tokenizer.HTMLTokenizer.dataState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedLessThanSignState
    - x.endswith
    - html5lib._tokenizer.HTMLTokenizer.rcdataLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashDashState
    - html5lib.html5parser.HTMLParser.isMathMLTextIntegrationPoint
    - html5lib._inputstream.BufferedStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicKeywordState
    - chars.match
    - html5lib._tokenizer.HTMLTokenizer.tagNameState
    - html5lib._tokenizer.HTMLTokenizer.commentStartDashState
    - chunk.count
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.betweenDoctypePublicAndSystemIdentifiersState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeNameState
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc44ef572e0>
    - <ast.Constant object at 0x7fc44ef572b0>
    - <ast.Constant object at 0x7fc44ef57280>
    argNames:
    - doc
    - container
    - treebuilder
    - namespaceHTMLElements
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 49
    functionName: html5lib.html5parser.parseFragment
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - treeBuilderCache.get
    - chardet.universaldetector.UniversalDetector.close
    - html5lib.html5parser.HTMLParser.parseError
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._tokenizer.HTMLTokenizer.tagOpenState
    - io.BytesIO.tell
    - collections.deque.append
    - html5lib._inputstream.HTMLBinaryInputStream.__init__
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.bogusDoctypeState
    - html5lib.html5parser.HTMLParser.mainLoop
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeStartState
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeValueState
    - html5lib._utils.isSurrogatePair
    - html5lib.html5parser.HTMLParser.__init__
    - <builtin>.hasattr
    - html5lib.html5parser.HTMLParser.resetInsertionMode
    - match.start
    - io.StringIO
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedLessThanSignState
    - chunk.rfind
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashState
    - html5lib._inputstream.EncodingParser.getEncoding
    - html5lib._tokenizer.HTMLTokenizer.commentEndState
    - webencodings.lookup
    - html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    - html5lib._tokenizer.HTMLTokenizer.scriptDataLessThanSignState
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemKeywordState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeEndState
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagNameState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueUnQuotedState
    - html5lib._inputstream.EncodingBytes.jumpTo
    - html5lib.html5parser.HTMLParser.parseFragment
    - match.group
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicIdentifierState
    - <builtin>.sum
    - html5lib._tokenizer.HTMLTokenizer.bogusCommentState
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeValueState
    - phase.processDoctype
    - html5lib._tokenizer.HTMLTokenizer.commentEndDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - chardet.universaldetector.UniversalDetector.feed
    - collections.OrderedDict
    - html5lib._tokenizer.HTMLTokenizer.commentState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedState
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.attributeValueSingleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.rawtextLessThanSignState
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.commentEndBangState
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - six.unichr
    - html5lib._inputstream.BufferedStream.tell
    - html5lib._inputstream.BufferedStream.seek
    - <builtin>.super
    - phase.processStartTag
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - html5lib._tokenizer.HTMLTokenizer.closeTagOpenState
    - html5lib.treebuilders.getTreeBuilder
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierSingleQuotedState
    - html5lib._inputstream.lookupEncoding
    - html5lib._inputstream.HTMLInputStream
    - <builtin>.int
    - buffers.append
    - html5lib._tokenizer.HTMLTokenizer.doctypeNameState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagNameState
    - html5lib._inputstream.EncodingBytes.__iter__
    - phase.processSpaceCharacters
    - html5lib._tokenizer.HTMLTokenizer.__init__
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartDashState
    - encoding.decode
    - html5lib._tokenizer.HTMLTokenizer.commentStartState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashDashState
    - <builtin>.isinstance
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeNameState
    - rv.append
    - io.BytesIO.seek
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierSingleQuotedState
    - data.count
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagOpenState
    - html5lib._inputstream.HTMLBinaryInputStream.determineEncoding
    - html5lib._inputstream.HTMLBinaryInputStream.openStream
    - html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartState
    - html5lib.html5parser.HTMLParser.reset
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - bomDict.get
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueDoubleQuotedState
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - html5lib._tokenizer.HTMLTokenizer.rawtextState
    - html5lib._tokenizer.HTMLTokenizer.entityDataState
    - chardet.universaldetector.UniversalDetector
    - html5lib._tokenizer.HTMLTokenizer.plaintextState
    - html5lib.html5parser.HTMLParser.isHTMLIntegrationPoint
    - html5lib._tokenizer.HTMLTokenizer.selfClosingStartTagState
    - phases.append
    - re.compile
    - <builtin>.ord
    - phase.processComment
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - html5lib._inputstream.HTMLUnicodeInputStream.position
    - collections.deque.popleft
    - phase.processEndTag
    - html5lib._tokenizer.HTMLTokenizer.rcdataState
    - html5lib._tokenizer.HTMLTokenizer.doctypeState
    - html5lib._utils.surrogatePairToCodepoint
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - source.read
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._tokenizer.HTMLTokenizer.cdataSectionState
    - html5lib._inputstream.HTMLUnicodeInputStream.openStream
    - data.append
    - invalid_unicode_re.findall
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._tokenizer.HTMLTokenizer.attributeNameState
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagNameState
    - bisect.bisect_left
    - m.end
    - html5lib._inputstream.HTMLUnicodeInputStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.markupDeclarationOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagNameState
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - new_token.get
    - charStack.pop
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeSystemIdentifierState
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib.html5parser.HTMLParser._parse
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeNameState
    - data.replace
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataState
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeNameState
    - html5lib._inputstream.BufferedStream._readStream
    - phase.processCharacters
    - io.BytesIO
    - html5lib._tokenizer.HTMLTokenizer.__iter__
    - html5lib._tokenizer.HTMLTokenizer.characterReferenceInRcdata
    - prefix.startswith
    - html5lib._tokenizer.HTMLTokenizer.dataState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedLessThanSignState
    - x.endswith
    - html5lib.html5parser.getPhases
    - html5lib._tokenizer.HTMLTokenizer.rcdataLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashDashState
    - html5lib.html5parser.HTMLParser.isMathMLTextIntegrationPoint
    - html5lib._inputstream.BufferedStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicKeywordState
    - chars.match
    - treeType.lower
    - html5lib._tokenizer.HTMLTokenizer.tagNameState
    - html5lib._tokenizer.HTMLTokenizer.commentStartDashState
    - chunk.count
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.betweenDoctypePublicAndSystemIdentifiersState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeNameState
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 290
    functionName: html5lib.html5parser.HTMLParser.parseFragment
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached:
    - chardet.universaldetector.UniversalDetector.close
    - html5lib.html5parser.HTMLParser.parseError
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._tokenizer.HTMLTokenizer.tagOpenState
    - io.BytesIO.tell
    - collections.deque.append
    - html5lib._inputstream.HTMLBinaryInputStream.__init__
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.bogusDoctypeState
    - html5lib.html5parser.HTMLParser.mainLoop
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeStartState
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeValueState
    - html5lib._utils.isSurrogatePair
    - <builtin>.hasattr
    - html5lib.html5parser.HTMLParser.resetInsertionMode
    - match.start
    - io.StringIO
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedLessThanSignState
    - chunk.rfind
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashState
    - html5lib._inputstream.EncodingParser.getEncoding
    - html5lib._tokenizer.HTMLTokenizer.commentEndState
    - webencodings.lookup
    - html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    - html5lib._tokenizer.HTMLTokenizer.scriptDataLessThanSignState
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemKeywordState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeEndState
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagNameState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueUnQuotedState
    - html5lib._inputstream.EncodingBytes.jumpTo
    - match.group
    - <builtin>.sum
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.bogusCommentState
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeValueState
    - phase.processDoctype
    - html5lib._tokenizer.HTMLTokenizer.commentEndDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - chardet.universaldetector.UniversalDetector.feed
    - collections.OrderedDict
    - html5lib._tokenizer.HTMLTokenizer.commentState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedState
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.attributeValueSingleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.rawtextLessThanSignState
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.commentEndBangState
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - six.unichr
    - html5lib._inputstream.BufferedStream.tell
    - html5lib._inputstream.BufferedStream.seek
    - <builtin>.super
    - phase.processStartTag
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - html5lib._tokenizer.HTMLTokenizer.closeTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierSingleQuotedState
    - html5lib._inputstream.lookupEncoding
    - html5lib._inputstream.HTMLInputStream
    - <builtin>.int
    - buffers.append
    - html5lib._tokenizer.HTMLTokenizer.doctypeNameState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagNameState
    - html5lib._inputstream.EncodingBytes.__iter__
    - phase.processSpaceCharacters
    - html5lib._tokenizer.HTMLTokenizer.__init__
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartDashState
    - encoding.decode
    - html5lib._tokenizer.HTMLTokenizer.commentStartState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashDashState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedState
    - <builtin>.isinstance
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeNameState
    - rv.append
    - io.BytesIO.seek
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierSingleQuotedState
    - data.count
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagOpenState
    - html5lib._inputstream.HTMLBinaryInputStream.determineEncoding
    - html5lib._inputstream.HTMLBinaryInputStream.openStream
    - html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartState
    - html5lib.html5parser.HTMLParser.reset
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - bomDict.get
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueDoubleQuotedState
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - html5lib._tokenizer.HTMLTokenizer.rawtextState
    - html5lib._tokenizer.HTMLTokenizer.entityDataState
    - chardet.universaldetector.UniversalDetector
    - html5lib._tokenizer.HTMLTokenizer.plaintextState
    - html5lib.html5parser.HTMLParser.isHTMLIntegrationPoint
    - html5lib._tokenizer.HTMLTokenizer.selfClosingStartTagState
    - phases.append
    - re.compile
    - <builtin>.ord
    - phase.processComment
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - html5lib._inputstream.HTMLUnicodeInputStream.position
    - collections.deque.popleft
    - phase.processEndTag
    - html5lib._tokenizer.HTMLTokenizer.rcdataState
    - html5lib._tokenizer.HTMLTokenizer.doctypeState
    - html5lib._utils.surrogatePairToCodepoint
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - source.read
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._tokenizer.HTMLTokenizer.cdataSectionState
    - html5lib._inputstream.HTMLUnicodeInputStream.openStream
    - data.append
    - invalid_unicode_re.findall
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._tokenizer.HTMLTokenizer.attributeNameState
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagNameState
    - bisect.bisect_left
    - m.end
    - html5lib._inputstream.HTMLUnicodeInputStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.markupDeclarationOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagNameState
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - new_token.get
    - charStack.pop
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeSystemIdentifierState
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib.html5parser.HTMLParser._parse
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeNameState
    - data.replace
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataState
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeNameState
    - html5lib._inputstream.BufferedStream._readStream
    - phase.processCharacters
    - io.BytesIO
    - html5lib._tokenizer.HTMLTokenizer.__iter__
    - html5lib._tokenizer.HTMLTokenizer.characterReferenceInRcdata
    - prefix.startswith
    - html5lib._tokenizer.HTMLTokenizer.dataState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedLessThanSignState
    - x.endswith
    - html5lib._tokenizer.HTMLTokenizer.rcdataLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashDashState
    - html5lib.html5parser.HTMLParser.isMathMLTextIntegrationPoint
    - html5lib._inputstream.BufferedStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicKeywordState
    - chars.match
    - html5lib._tokenizer.HTMLTokenizer.tagNameState
    - html5lib._tokenizer.HTMLTokenizer.commentStartDashState
    - chunk.count
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.betweenDoctypePublicAndSystemIdentifiersState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeNameState
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - function
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 74
    functionName: html5lib.html5parser.method_decorator_metaclass
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - meta
    - classname
    - bases
    - classDict
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 76
    functionName: html5lib.html5parser.method_decorator_metaclass.Decorated.__new__
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - classDict.items
    - html5lib.html5parser.getPhases.log
    - tokenTypes.items
    - type.__new__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: classDict.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.isinstance
    functionSourceFile: <builtin>
    functionUses: 85
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - function
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 401
    functionName: html5lib.html5parser.getPhases.log
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached:
    - tokenTypes.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: type.__new__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - debug
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 400
    functionName: html5lib.html5parser.getPhases
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fb57520>
    - <ast.Constant object at 0x7fc44fb574f0>
    - <ast.Constant object at 0x7fc44fb574c0>
    argNames:
    - self
    - stream
    - innerHTML
    - container
    - scripting
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 127
    functionName: html5lib.html5parser.HTMLParser._parse
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached:
    - chardet.universaldetector.UniversalDetector.close
    - html5lib.html5parser.HTMLParser.parseError
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._tokenizer.HTMLTokenizer.tagOpenState
    - io.BytesIO.tell
    - collections.deque.append
    - html5lib._inputstream.HTMLBinaryInputStream.__init__
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.bogusDoctypeState
    - html5lib.html5parser.HTMLParser.mainLoop
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeStartState
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeValueState
    - html5lib._utils.isSurrogatePair
    - <builtin>.hasattr
    - html5lib.html5parser.HTMLParser.resetInsertionMode
    - match.start
    - io.StringIO
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedLessThanSignState
    - chunk.rfind
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashState
    - html5lib._inputstream.EncodingParser.getEncoding
    - html5lib._tokenizer.HTMLTokenizer.commentEndState
    - webencodings.lookup
    - html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    - html5lib._tokenizer.HTMLTokenizer.scriptDataLessThanSignState
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemKeywordState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeEndState
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagNameState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueUnQuotedState
    - html5lib._inputstream.EncodingBytes.jumpTo
    - match.group
    - <builtin>.sum
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.bogusCommentState
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeValueState
    - phase.processDoctype
    - html5lib._tokenizer.HTMLTokenizer.commentEndDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - chardet.universaldetector.UniversalDetector.feed
    - collections.OrderedDict
    - html5lib._tokenizer.HTMLTokenizer.commentState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedState
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.attributeValueSingleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.rawtextLessThanSignState
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.commentEndBangState
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - six.unichr
    - html5lib._inputstream.BufferedStream.tell
    - html5lib._inputstream.BufferedStream.seek
    - <builtin>.super
    - phase.processStartTag
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - html5lib._tokenizer.HTMLTokenizer.closeTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierSingleQuotedState
    - html5lib._inputstream.lookupEncoding
    - html5lib._inputstream.HTMLInputStream
    - <builtin>.int
    - buffers.append
    - html5lib._tokenizer.HTMLTokenizer.doctypeNameState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagNameState
    - html5lib._inputstream.EncodingBytes.__iter__
    - phase.processSpaceCharacters
    - html5lib._tokenizer.HTMLTokenizer.__init__
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartDashState
    - encoding.decode
    - html5lib._tokenizer.HTMLTokenizer.commentStartState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashDashState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedState
    - <builtin>.isinstance
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeNameState
    - rv.append
    - io.BytesIO.seek
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierSingleQuotedState
    - data.count
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagOpenState
    - html5lib._inputstream.HTMLBinaryInputStream.determineEncoding
    - html5lib._inputstream.HTMLBinaryInputStream.openStream
    - html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartState
    - html5lib.html5parser.HTMLParser.reset
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - bomDict.get
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueDoubleQuotedState
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - html5lib._tokenizer.HTMLTokenizer.rawtextState
    - html5lib._tokenizer.HTMLTokenizer.entityDataState
    - chardet.universaldetector.UniversalDetector
    - html5lib._tokenizer.HTMLTokenizer.plaintextState
    - html5lib.html5parser.HTMLParser.isHTMLIntegrationPoint
    - html5lib._tokenizer.HTMLTokenizer.selfClosingStartTagState
    - phases.append
    - re.compile
    - <builtin>.ord
    - phase.processComment
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - html5lib._inputstream.HTMLUnicodeInputStream.position
    - collections.deque.popleft
    - phase.processEndTag
    - html5lib._tokenizer.HTMLTokenizer.rcdataState
    - html5lib._tokenizer.HTMLTokenizer.doctypeState
    - html5lib._utils.surrogatePairToCodepoint
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - source.read
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._tokenizer.HTMLTokenizer.cdataSectionState
    - html5lib._inputstream.HTMLUnicodeInputStream.openStream
    - data.append
    - invalid_unicode_re.findall
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._tokenizer.HTMLTokenizer.attributeNameState
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagNameState
    - bisect.bisect_left
    - m.end
    - html5lib._inputstream.HTMLUnicodeInputStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.markupDeclarationOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagNameState
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - new_token.get
    - charStack.pop
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeSystemIdentifierState
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeNameState
    - data.replace
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataState
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeNameState
    - html5lib._inputstream.BufferedStream._readStream
    - phase.processCharacters
    - io.BytesIO
    - html5lib._tokenizer.HTMLTokenizer.__iter__
    - html5lib._tokenizer.HTMLTokenizer.characterReferenceInRcdata
    - prefix.startswith
    - html5lib._tokenizer.HTMLTokenizer.dataState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedLessThanSignState
    - x.endswith
    - html5lib._tokenizer.HTMLTokenizer.rcdataLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashDashState
    - html5lib.html5parser.HTMLParser.isMathMLTextIntegrationPoint
    - html5lib._inputstream.BufferedStream.__init__
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicKeywordState
    - chars.match
    - html5lib._tokenizer.HTMLTokenizer.tagNameState
    - html5lib._tokenizer.HTMLTokenizer.commentStartDashState
    - chunk.count
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.betweenDoctypePublicAndSystemIdentifiersState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeNameState
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fabcd30>
    argNames:
    - self
    - stream
    - parser
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 40
    functionName: html5lib._tokenizer.HTMLTokenizer.__init__
    functionSourceFile: html5lib._tokenizer
    functionUses: 5
    functionsReached:
    - chardet.universaldetector.UniversalDetector.feed
    - chardet.universaldetector.UniversalDetector.close
    - html5lib._inputstream.HTMLUnicodeInputStream.__init__
    - <builtin>.len
    - io.BytesIO.tell
    - html5lib._inputstream.BufferedStream.tell
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - chardet.universaldetector.UniversalDetector
    - html5lib._inputstream.BufferedStream.seek
    - <builtin>.super
    - html5lib._inputstream.HTMLBinaryInputStream.__init__
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - io.BytesIO.read
    - html5lib._inputstream.lookupEncoding
    - html5lib._inputstream.HTMLInputStream
    - buffers.append
    - html5lib._inputstream.EncodingBytes.__iter__
    - <builtin>.hasattr
    - encoding.decode
    - io.StringIO
    - <builtin>.isinstance
    - html5lib._inputstream.BufferedStream._readStream
    - io.BytesIO
    - io.BytesIO.seek
    - rv.append
    - source.read
    - html5lib._inputstream.EncodingParser.getEncoding
    - x.endswith
    - webencodings.lookup
    - html5lib._inputstream.BufferedStream.read
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    - html5lib._inputstream.BufferedStream.__init__
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._inputstream.HTMLBinaryInputStream.determineEncoding
    - html5lib._inputstream.HTMLBinaryInputStream.openStream
    - html5lib._inputstream.HTMLUnicodeInputStream.openStream
    - html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._inputstream.EncodingBytes.jumpTo
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - bomDict.get
    - <builtin>.sum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 141
    functionName: html5lib.html5parser.HTMLParser.reset
    functionSourceFile: html5lib.html5parser
    functionUses: 5
    functionsReached:
    - html5lib.html5parser.HTMLParser.resetInsertionMode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 3
    IfCount: 10
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 198
    functionName: html5lib.html5parser.HTMLParser.mainLoop
    functionSourceFile: html5lib.html5parser
    functionUses: 5
    functionsReached:
    - html5lib.html5parser.HTMLParser.parseError
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._tokenizer.HTMLTokenizer.tagOpenState
    - collections.deque.append
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.bogusDoctypeState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeStartState
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeValueState
    - html5lib._utils.isSurrogatePair
    - match.start
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedLessThanSignState
    - chunk.rfind
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashState
    - html5lib._tokenizer.HTMLTokenizer.commentEndState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemKeywordState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeEndState
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagNameState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueUnQuotedState
    - match.group
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.bogusCommentState
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeValueState
    - phase.processDoctype
    - html5lib._tokenizer.HTMLTokenizer.commentEndDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - collections.OrderedDict
    - html5lib._tokenizer.HTMLTokenizer.commentState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedState
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.attributeValueSingleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.rawtextLessThanSignState
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.commentEndBangState
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - six.unichr
    - phase.processStartTag
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - html5lib._tokenizer.HTMLTokenizer.closeTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierSingleQuotedState
    - <builtin>.int
    - html5lib._tokenizer.HTMLTokenizer.doctypeNameState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagNameState
    - phase.processSpaceCharacters
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartDashState
    - html5lib._tokenizer.HTMLTokenizer.commentStartState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashDashState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeNameState
    - rv.append
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierSingleQuotedState
    - data.count
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartState
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueDoubleQuotedState
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - html5lib._tokenizer.HTMLTokenizer.rawtextState
    - html5lib._tokenizer.HTMLTokenizer.entityDataState
    - html5lib._tokenizer.HTMLTokenizer.plaintextState
    - html5lib._tokenizer.HTMLTokenizer.selfClosingStartTagState
    - html5lib.html5parser.HTMLParser.isHTMLIntegrationPoint
    - phases.append
    - re.compile
    - <builtin>.ord
    - phase.processComment
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - html5lib._inputstream.HTMLUnicodeInputStream.position
    - collections.deque.popleft
    - phase.processEndTag
    - html5lib._tokenizer.HTMLTokenizer.rcdataState
    - html5lib._tokenizer.HTMLTokenizer.doctypeState
    - html5lib._utils.surrogatePairToCodepoint
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - html5lib._tokenizer.HTMLTokenizer.cdataSectionState
    - data.append
    - invalid_unicode_re.findall
    - html5lib._tokenizer.HTMLTokenizer.attributeNameState
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagNameState
    - bisect.bisect_left
    - m.end
    - html5lib._tokenizer.HTMLTokenizer.markupDeclarationOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagNameState
    - new_token.get
    - charStack.pop
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeSystemIdentifierState
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeNameState
    - data.replace
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataState
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeNameState
    - html5lib._inputstream.BufferedStream._readStream
    - phase.processCharacters
    - html5lib._tokenizer.HTMLTokenizer.__iter__
    - html5lib._tokenizer.HTMLTokenizer.characterReferenceInRcdata
    - prefix.startswith
    - html5lib._tokenizer.HTMLTokenizer.dataState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.rcdataLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashDashState
    - html5lib.html5parser.HTMLParser.isMathMLTextIntegrationPoint
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicKeywordState
    - chars.match
    - html5lib._tokenizer.HTMLTokenizer.tagNameState
    - html5lib._tokenizer.HTMLTokenizer.commentStartDashState
    - chunk.count
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.betweenDoctypePublicAndSystemIdentifiersState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeNameState
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 339
    functionName: html5lib.html5parser.HTMLParser.resetInsertionMode
    functionSourceFile: ''
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 176
    functionName: html5lib.html5parser.HTMLParser.documentEncoding
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hasattr
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 185
    functionName: html5lib.html5parser.HTMLParser.isHTMLIntegrationPoint
    functionSourceFile: html5lib.html5parser
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 195
    functionName: html5lib.html5parser.HTMLParser.isMathMLTextIntegrationPoint
    functionSourceFile: html5lib.html5parser
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 55
    functionName: html5lib._tokenizer.HTMLTokenizer.__iter__
    functionSourceFile: html5lib._tokenizer
    functionUses: 6
    functionsReached:
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._tokenizer.HTMLTokenizer.tagOpenState
    - collections.deque.append
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.bogusDoctypeState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeStartState
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeValueState
    - html5lib._utils.isSurrogatePair
    - match.start
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedLessThanSignState
    - chunk.rfind
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashState
    - html5lib._tokenizer.HTMLTokenizer.commentEndState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemKeywordState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeEndState
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagNameState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueUnQuotedState
    - match.group
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.bogusCommentState
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypePublicIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemIdentifierState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeValueState
    - html5lib._tokenizer.HTMLTokenizer.commentEndDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - collections.OrderedDict
    - html5lib._tokenizer.HTMLTokenizer.commentState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedState
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.attributeValueSingleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.rawtextLessThanSignState
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.commentEndBangState
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - six.unichr
    - data.update
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - html5lib._tokenizer.HTMLTokenizer.closeTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierSingleQuotedState
    - <builtin>.int
    - html5lib._tokenizer.HTMLTokenizer.doctypeNameState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagNameState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartDashState
    - html5lib._tokenizer.HTMLTokenizer.commentStartState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashDashState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedState
    - html5lib._tokenizer.HTMLTokenizer.beforeAttributeNameState
    - rv.append
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierSingleQuotedState
    - data.count
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartState
    - html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.attributeValueDoubleQuotedState
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - html5lib._tokenizer.HTMLTokenizer.rawtextState
    - html5lib._tokenizer.HTMLTokenizer.entityDataState
    - html5lib._tokenizer.HTMLTokenizer.plaintextState
    - html5lib._tokenizer.HTMLTokenizer.selfClosingStartTagState
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - collections.deque.popleft
    - html5lib._tokenizer.HTMLTokenizer.rcdataState
    - html5lib._tokenizer.HTMLTokenizer.doctypeState
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._utils.surrogatePairToCodepoint
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashState
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - html5lib._tokenizer.HTMLTokenizer.cdataSectionState
    - invalid_unicode_re.findall
    - data.append
    - html5lib._tokenizer.HTMLTokenizer.attributeNameState
    - html5lib._tokenizer.HTMLTokenizer.rawtextEndTagNameState
    - bisect.bisect_left
    - m.end
    - html5lib._tokenizer.HTMLTokenizer.markupDeclarationOpenState
    - html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierDoubleQuotedState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagNameState
    - charStack.pop
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeSystemIdentifierState
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._tokenizer.HTMLTokenizer.beforeDoctypeNameState
    - data.replace
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._tokenizer.HTMLTokenizer.rcdataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataState
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - html5lib._tokenizer.HTMLTokenizer.afterAttributeNameState
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._tokenizer.HTMLTokenizer.characterReferenceInRcdata
    - prefix.startswith
    - html5lib._tokenizer.HTMLTokenizer.dataState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.rcdataLessThanSignState
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashDashState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicKeywordState
    - chars.match
    - html5lib._tokenizer.HTMLTokenizer.tagNameState
    - html5lib._tokenizer.HTMLTokenizer.commentStartDashState
    - chunk.count
    - html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagOpenState
    - html5lib._tokenizer.HTMLTokenizer.betweenDoctypePublicAndSystemIdentifiersState
    - html5lib._tokenizer.HTMLTokenizer.afterDoctypeNameState
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: new_token.get
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc450a34280>
    - <ast.Constant object at 0x7fc450a34e20>
    argNames:
    - self
    - errorcode
    - datavars
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 318
    functionName: html5lib.html5parser.HTMLParser.parseError
    functionSourceFile: html5lib.html5parser
    functionUses: 6
    functionsReached:
    - chunk.count
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.position
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    linkageType: pythonLinkage
    raised:
    - ParseError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.len
    functionSourceFile: <builtin>
    functionUses: 192
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.frozenset
    functionSourceFile: <builtin>
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: phase.processCharacters
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: phase.processSpaceCharacters
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: phase.processStartTag
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: phase.processEndTag
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: phase.processComment
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: phase.processDoctype
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: phases.append
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 229
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.position
    functionSourceFile: html5lib._inputstream
    functionUses: 7
    functionsReached:
    - chunk.count
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 326
    functionName: html5lib.html5parser.HTMLParser.adjustMathMLAttributes
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.adjust_attributes
    - six.viewkeys
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - token
    - replacements
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2781
    functionName: html5lib.html5parser.adjust_attributes
    functionSourceFile: html5lib.html5parser
    functionUses: 3
    functionsReached:
    - six.viewkeys
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 329
    functionName: html5lib.html5parser.HTMLParser.adjustSVGAttributes
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.adjust_attributes
    - six.viewkeys
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 332
    functionName: html5lib.html5parser.HTMLParser.adjustForeignAttributes
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.adjust_attributes
    - six.viewkeys
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 335
    functionName: html5lib.html5parser.HTMLParser.reparseTokenNormal
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - token
    - contentType
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 383
    functionName: html5lib.html5parser.HTMLParser.parseRCDataRawtext
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 150
    functionName: html5lib._utils.memoize
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tokenTypes.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 405
    functionName: html5lib.html5parser.getPhases.log.wrapped
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - function.__name__.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: function.__name__.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - use_metaclass
    - metaclass_func
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 422
    functionName: html5lib.html5parser.getPhases.getMetaclass
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.method_decorator_metaclass
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parser
    - tree
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 434
    functionName: html5lib.html5parser.getPhases.Phase.__init__
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 440
    functionName: html5lib.html5parser.getPhases.Phase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 443
    functionName: html5lib.html5parser.getPhases.Phase.processComment
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 448
    functionName: html5lib.html5parser.getPhases.Phase.processDoctype
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 451
    functionName: html5lib.html5parser.getPhases.Phase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 454
    functionName: html5lib.html5parser.getPhases.Phase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 457
    functionName: html5lib.html5parser.getPhases.Phase.processStartTag
    functionSourceFile: html5lib.html5parser
    functionUses: 2
    functionsReached:
    - <builtin>.iter
    - <builtin>.len
    - <builtin>.next
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.iter
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.next
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 474
    functionName: html5lib.html5parser.getPhases.Phase.startTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 484
    functionName: html5lib.html5parser.getPhases.Phase.processEndTag
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached:
    - <builtin>.iter
    - <builtin>.len
    - <builtin>.next
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.tuple
    functionSourceFile: <builtin>
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InitialPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 504
    functionName: html5lib.html5parser.getPhases.InitialPhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 507
    functionName: html5lib.html5parser.getPhases.InitialPhase.processComment
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 510
    functionName: html5lib.html5parser.getPhases.InitialPhase.processDoctype
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - systemId.lower
    - publicId.translate
    - publicId.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: publicId.translate
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: publicId.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: systemId.lower
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 605
    functionName: html5lib.html5parser.getPhases.InitialPhase.anythingElse
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 609
    functionName: html5lib.html5parser.getPhases.InitialPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InitialPhase.anythingElse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 614
    functionName: html5lib.html5parser.getPhases.InitialPhase.processStartTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InitialPhase.anythingElse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 620
    functionName: html5lib.html5parser.getPhases.InitialPhase.processEndTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InitialPhase.anythingElse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 626
    functionName: html5lib.html5parser.getPhases.InitialPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InitialPhase.anythingElse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.BeforeHtmlPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 635
    functionName: html5lib.html5parser.getPhases.BeforeHtmlPhase.insertHtmlElement
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc44e907460>
    - <ast.Constant object at 0x7fc44e907490>
    - <ast.Constant object at 0x7fc44e9074c0>
    argNames:
    - name
    - type
    - attributes
    - selfClosing
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2788
    functionName: html5lib.html5parser.impliedTagToken
    functionSourceFile: ''
    functionUses: 64
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 640
    functionName: html5lib.html5parser.getPhases.BeforeHtmlPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.BeforeHtmlPhase.insertHtmlElement
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 644
    functionName: html5lib.html5parser.getPhases.BeforeHtmlPhase.processComment
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 647
    functionName: html5lib.html5parser.getPhases.BeforeHtmlPhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 650
    functionName: html5lib.html5parser.getPhases.BeforeHtmlPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.BeforeHtmlPhase.insertHtmlElement
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 654
    functionName: html5lib.html5parser.getPhases.BeforeHtmlPhase.processStartTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.BeforeHtmlPhase.insertHtmlElement
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 660
    functionName: html5lib.html5parser.getPhases.BeforeHtmlPhase.processEndTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.BeforeHtmlPhase.insertHtmlElement
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.BeforeHeadPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 671
    functionName: html5lib.html5parser.getPhases.BeforeHeadPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.BeforeHeadPhase.startTagHead
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 685
    functionName: html5lib.html5parser.getPhases.BeforeHeadPhase.startTagHead
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 675
    functionName: html5lib.html5parser.getPhases.BeforeHeadPhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 678
    functionName: html5lib.html5parser.getPhases.BeforeHeadPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.BeforeHeadPhase.startTagHead
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 682
    functionName: html5lib.html5parser.getPhases.BeforeHeadPhase.startTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 690
    functionName: html5lib.html5parser.getPhases.BeforeHeadPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.BeforeHeadPhase.startTagHead
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 694
    functionName: html5lib.html5parser.getPhases.BeforeHeadPhase.endTagImplyHead
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.BeforeHeadPhase.startTagHead
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 698
    functionName: html5lib.html5parser.getPhases.BeforeHeadPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Tuple object at 0x7fc4501b0370>
    argNames:
    - self
    - items
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 57
    functionName: html5lib._utils.MethodDispatcher.__init__
    functionSourceFile: html5lib._utils
    functionUses: 19
    functionsReached:
    - _dictEntries.append
    - <builtin>.isinstance
    - <builtin>.len
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InHeadPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 717
    functionName: html5lib.html5parser.getPhases.InHeadPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InHeadPhase.anythingElse
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InHeadPhase.endTagHead
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 793
    functionName: html5lib.html5parser.getPhases.InHeadPhase.anythingElse
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InHeadPhase.endTagHead
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 721
    functionName: html5lib.html5parser.getPhases.InHeadPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InHeadPhase.anythingElse
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InHeadPhase.endTagHead
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 725
    functionName: html5lib.html5parser.getPhases.InHeadPhase.startTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 728
    functionName: html5lib.html5parser.getPhases.InHeadPhase.startTagHead
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 731
    functionName: html5lib.html5parser.getPhases.InHeadPhase.startTagBaseLinkCommand
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 736
    functionName: html5lib.html5parser.getPhases.InHeadPhase.startTagMeta
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._inputstream.EncodingBytes.skipUntil
    - html5lib._inputstream.ContentAttrParser.parse
    - html5lib._inputstream.EncodingBytes.skip
    - <builtin>.len
    - html5lib._inputstream.EncodingBytes.jumpTo
    - html5lib._inputstream.ContentAttrParser.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 586
    functionName: html5lib._inputstream.EncodingBytes.__init__
    functionSourceFile: ''
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 865
    functionName: html5lib._inputstream.ContentAttrParser.__init__
    functionSourceFile: html5lib._inputstream
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 869
    functionName: html5lib._inputstream.ContentAttrParser.parse
    functionSourceFile: html5lib._inputstream
    functionUses: 2
    functionsReached:
    - html5lib._inputstream.EncodingBytes.skip
    - <builtin>.len
    - html5lib._inputstream.EncodingBytes.skipUntil
    - html5lib._inputstream.EncodingBytes.jumpTo
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 757
    functionName: html5lib.html5parser.getPhases.InHeadPhase.startTagTitle
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 760
    functionName: html5lib.html5parser.getPhases.InHeadPhase.startTagNoFramesStyle
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 764
    functionName: html5lib.html5parser.getPhases.InHeadPhase.startTagNoscript
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 771
    functionName: html5lib.html5parser.getPhases.InHeadPhase.startTagScript
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 777
    functionName: html5lib.html5parser.getPhases.InHeadPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InHeadPhase.anythingElse
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InHeadPhase.endTagHead
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 781
    functionName: html5lib.html5parser.getPhases.InHeadPhase.endTagHead
    functionSourceFile: html5lib.html5parser
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 786
    functionName: html5lib.html5parser.getPhases.InHeadPhase.endTagHtmlBodyBr
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InHeadPhase.anythingElse
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InHeadPhase.endTagHead
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 790
    functionName: html5lib.html5parser.getPhases.InHeadPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 818
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InHeadNoscriptPhase.anythingElse
    - html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagNoscript
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 861
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.anythingElse
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagNoscript
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 823
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.processComment
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 826
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InHeadNoscriptPhase.anythingElse
    - html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagNoscript
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 831
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 834
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.startTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 837
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.startTagBaseLinkCommand
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 840
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.startTagHeadNoscript
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 843
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InHeadNoscriptPhase.anythingElse
    - html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagNoscript
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 848
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagNoscript
    functionSourceFile: html5lib.html5parser
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 853
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagBr
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InHeadNoscriptPhase.anythingElse
    - html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagNoscript
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 858
    functionName: html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 881
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.AfterHeadPhase.anythingElse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 925
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.anythingElse
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 885
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.AfterHeadPhase.anythingElse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 889
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.startTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 892
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.startTagBody
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 897
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.startTagFrameset
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 901
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.startTagFromHead
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 911
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.startTagHead
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 914
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.AfterHeadPhase.anythingElse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 918
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.endTagHtmlBodyBr
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.AfterHeadPhase.anythingElse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 922
    functionName: html5lib.html5parser.getPhases.AfterHeadPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 949
    functionName: html5lib.html5parser.getPhases.InBodyPhase.__init__
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.super
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - node1
    - node2
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 954
    functionName: html5lib.html5parser.getPhases.InBodyPhase.isMatchingFormattingElement
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 960
    functionName: html5lib.html5parser.getPhases.InBodyPhase.addFormattingElement
    functionSourceFile: html5lib.html5parser
    functionUses: 3
    functionsReached:
    - matchingElements.append
    - <builtin>.len
    - html5lib.html5parser.getPhases.InBodyPhase.isMatchingFormattingElement
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: matchingElements.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 977
    functionName: html5lib.html5parser.getPhases.InBodyPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.frozenset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 987
    functionName: html5lib.html5parser.getPhases.InBodyPhase.processSpaceCharactersDropNewline
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - data.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1000
    functionName: html5lib.html5parser.getPhases.InBodyPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached:
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.any
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1012
    functionName: html5lib.html5parser.getPhases.InBodyPhase.processSpaceCharactersNonPre
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1016
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagProcessInHead
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1019
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagBody
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1030
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagFrameset
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1044
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP
    functionSourceFile: html5lib.html5parser
    functionUses: 7
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP
    - html5lib.html5parser.getPhases.InBodyPhase.endTagP
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1311
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagP
    functionSourceFile: html5lib.html5parser
    functionUses: 7
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InBodyPhase.endTagP
    - html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1049
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagPreListing
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP
    - html5lib.html5parser.getPhases.InBodyPhase.endTagP
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1056
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagForm
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP
    - html5lib.html5parser.getPhases.InBodyPhase.endTagP
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1065
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagListItem
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - <builtin>.reversed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.reversed
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1087
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagPlaintext
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP
    - html5lib.html5parser.getPhases.InBodyPhase.endTagP
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1093
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagHeading
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP
    - html5lib.html5parser.getPhases.InBodyPhase.endTagP
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1101
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagA
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InBodyPhase.endTagFormatting
    - node.appendChild
    - html5lib.html5parser.getPhases.InBodyPhase.endTagOther
    - commonAncestor.appendChild
    - <builtin>.len
    - parent.insertBefore
    - <builtin>.frozenset
    - formattingElement.cloneNode
    - html5lib.html5parser.getPhases.InBodyPhase.addFormattingElement
    - node.cloneNode
    - furthestBlock.appendChild
    - html5lib.html5parser.impliedTagToken
    - matchingElements.append
    - furthestBlock.reparentChildren
    - lastNode.parent.removeChild
    - html5lib.html5parser.getPhases.InBodyPhase.isMatchingFormattingElement
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 19
    IfCount: 12
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1407
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagFormatting
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached:
    - node.appendChild
    - html5lib.html5parser.getPhases.InBodyPhase.endTagOther
    - commonAncestor.appendChild
    - parent.insertBefore
    - <builtin>.frozenset
    - formattingElement.cloneNode
    - node.cloneNode
    - furthestBlock.appendChild
    - furthestBlock.reparentChildren
    - lastNode.parent.removeChild
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1114
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagFormatting
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - matchingElements.append
    - <builtin>.len
    - html5lib.html5parser.getPhases.InBodyPhase.addFormattingElement
    - html5lib.html5parser.getPhases.InBodyPhase.isMatchingFormattingElement
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1118
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagNobr
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.Phase.processEndTag
    - <builtin>.iter
    - <builtin>.next
    - <builtin>.len
    - html5lib.html5parser.getPhases.InBodyPhase.addFormattingElement
    - html5lib.html5parser.impliedTagToken
    - matchingElements.append
    - html5lib.html5parser.getPhases.InBodyPhase.isMatchingFormattingElement
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1128
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagButton
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.Phase.processEndTag
    - <builtin>.iter
    - <builtin>.next
    - <builtin>.len
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1139
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagAppletMarqueeObject
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1145
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagXmp
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP
    - html5lib.html5parser.getPhases.InBodyPhase.endTagP
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1152
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagTable
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.Phase.processEndTag
    - <builtin>.iter
    - <builtin>.next
    - <builtin>.len
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1160
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagVoidFormatting
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1167
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagInput
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InBodyPhase.startTagVoidFormatting
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1175
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagParamSource
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1180
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagHr
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP
    - html5lib.html5parser.getPhases.InBodyPhase.endTagP
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1188
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagImage
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    - <builtin>.next
    - <builtin>.len
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.Phase.processStartTag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 9
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1196
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagIsIndex
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.Phase.processEndTag
    - <builtin>.iter
    - <builtin>.next
    - <builtin>.any
    - <builtin>.len
    - html5lib.html5parser.getPhases.InBodyPhase.processCharacters
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.Phase.processStartTag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1227
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagTextarea
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1233
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagIFrame
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InBodyPhase.startTagRawtext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1243
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagRawtext
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1237
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagNoscript
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InBodyPhase.startTagOther
    - html5lib.html5parser.getPhases.InBodyPhase.startTagRawtext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1307
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagOther
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1247
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagOpt
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1253
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagSelect
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1267
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagRpRt
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1274
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagMath
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1286
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagSvg
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1298
    functionName: html5lib.html5parser.getPhases.InBodyPhase.startTagMisplaced
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1324
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagBody
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached:
    - <builtin>.frozenset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1342
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InBodyPhase.endTagBody
    - <builtin>.frozenset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1348
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagBlock
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1362
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagForm
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1375
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagListItem
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1392
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagHeading
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1589
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagOther
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.cloneNode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lastNode.parent.removeChild
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.appendChild
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parent.insertBefore
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: commonAncestor.appendChild
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: formattingElement.cloneNode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: furthestBlock.reparentChildren
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: furthestBlock.appendChild
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1570
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagAppletMarqueeObject
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1582
    functionName: html5lib.html5parser.getPhases.InBodyPhase.endTagBr
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InBodyPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.TextPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1671
    functionName: html5lib.html5parser.getPhases.TextPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1674
    functionName: html5lib.html5parser.getPhases.TextPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1681
    functionName: html5lib.html5parser.getPhases.TextPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1684
    functionName: html5lib.html5parser.getPhases.TextPhase.endTagScript
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1691
    functionName: html5lib.html5parser.getPhases.TextPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InTablePhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1706
    functionName: html5lib.html5parser.getPhases.InTablePhase.clearStackToTableContext
    functionSourceFile: html5lib.html5parser
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1715
    functionName: html5lib.html5parser.getPhases.InTablePhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1722
    functionName: html5lib.html5parser.getPhases.InTablePhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1728
    functionName: html5lib.html5parser.getPhases.InTablePhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1734
    functionName: html5lib.html5parser.getPhases.InTablePhase.insertText
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1741
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagCaption
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InTablePhase.clearStackToTableContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1747
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagColgroup
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached:
    - html5lib.html5parser.getPhases.InTablePhase.clearStackToTableContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1752
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagCol
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InTablePhase.clearStackToTableContext
    - html5lib.html5parser.getPhases.InTablePhase.startTagColgroup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1756
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagRowGroup
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached:
    - html5lib.html5parser.getPhases.InTablePhase.clearStackToTableContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1761
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagImplyTbody
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InTablePhase.startTagRowGroup
    - html5lib.html5parser.getPhases.InTablePhase.clearStackToTableContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1765
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagTable
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1772
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagStyleScript
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1775
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagInput
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InTablePhase.startTagOther
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1792
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagOther
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1785
    functionName: html5lib.html5parser.getPhases.InTablePhase.startTagForm
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1799
    functionName: html5lib.html5parser.getPhases.InTablePhase.endTagTable
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1815
    functionName: html5lib.html5parser.getPhases.InTablePhase.endTagIgnore
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1818
    functionName: html5lib.html5parser.getPhases.InTablePhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1849
    functionName: html5lib.html5parser.getPhases.InTableTextPhase.__init__
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1854
    functionName: html5lib.html5parser.getPhases.InTableTextPhase.flushCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached:
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1863
    functionName: html5lib.html5parser.getPhases.InTableTextPhase.processComment
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.any
    - html5lib.html5parser.getPhases.InTableTextPhase.flushCharacters
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1868
    functionName: html5lib.html5parser.getPhases.InTableTextPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.any
    - html5lib.html5parser.getPhases.InTableTextPhase.flushCharacters
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1873
    functionName: html5lib.html5parser.getPhases.InTableTextPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1878
    functionName: html5lib.html5parser.getPhases.InTableTextPhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1883
    functionName: html5lib.html5parser.getPhases.InTableTextPhase.processStartTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.any
    - html5lib.html5parser.getPhases.InTableTextPhase.flushCharacters
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1888
    functionName: html5lib.html5parser.getPhases.InTableTextPhase.processEndTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.any
    - html5lib.html5parser.getPhases.InTableTextPhase.flushCharacters
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InCaptionPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1897
    functionName: html5lib.html5parser.getPhases.InCaptionPhase.ignoreEndTagCaption
    functionSourceFile: html5lib.html5parser
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1900
    functionName: html5lib.html5parser.getPhases.InCaptionPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1903
    functionName: html5lib.html5parser.getPhases.InCaptionPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1906
    functionName: html5lib.html5parser.getPhases.InCaptionPhase.startTagTableElement
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InCaptionPhase.ignoreEndTagCaption
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1914
    functionName: html5lib.html5parser.getPhases.InCaptionPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1917
    functionName: html5lib.html5parser.getPhases.InCaptionPhase.endTagCaption
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InCaptionPhase.ignoreEndTagCaption
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1935
    functionName: html5lib.html5parser.getPhases.InCaptionPhase.endTagTable
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InCaptionPhase.ignoreEndTagCaption
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1942
    functionName: html5lib.html5parser.getPhases.InCaptionPhase.endTagIgnore
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1945
    functionName: html5lib.html5parser.getPhases.InCaptionPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InColumnGroupPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1967
    functionName: html5lib.html5parser.getPhases.InColumnGroupPhase.ignoreEndTagColgroup
    functionSourceFile: html5lib.html5parser
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1970
    functionName: html5lib.html5parser.getPhases.InColumnGroupPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InColumnGroupPhase.ignoreEndTagColgroup
    - html5lib.html5parser.getPhases.InColumnGroupPhase.endTagColgroup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1997
    functionName: html5lib.html5parser.getPhases.InColumnGroupPhase.endTagColgroup
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached:
    - html5lib.html5parser.getPhases.InColumnGroupPhase.ignoreEndTagColgroup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1980
    functionName: html5lib.html5parser.getPhases.InColumnGroupPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InColumnGroupPhase.ignoreEndTagColgroup
    - html5lib.html5parser.getPhases.InColumnGroupPhase.endTagColgroup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1986
    functionName: html5lib.html5parser.getPhases.InColumnGroupPhase.startTagCol
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1991
    functionName: html5lib.html5parser.getPhases.InColumnGroupPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InColumnGroupPhase.ignoreEndTagColgroup
    - html5lib.html5parser.getPhases.InColumnGroupPhase.endTagColgroup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2006
    functionName: html5lib.html5parser.getPhases.InColumnGroupPhase.endTagCol
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2009
    functionName: html5lib.html5parser.getPhases.InColumnGroupPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InColumnGroupPhase.ignoreEndTagColgroup
    - html5lib.html5parser.getPhases.InColumnGroupPhase.endTagColgroup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2032
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.clearStackToTableBodyContext
    functionSourceFile: html5lib.html5parser
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2042
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2045
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2048
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2051
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.startTagTr
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached:
    - html5lib.html5parser.getPhases.InTableBodyPhase.clearStackToTableBodyContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2056
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.startTagTableCell
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InTableBodyPhase.startTagTr
    - html5lib.html5parser.getPhases.InTableBodyPhase.clearStackToTableBodyContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2062
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.startTagTableOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InTableBodyPhase.endTagTableRowGroup
    - html5lib.html5parser.getPhases.InTableBodyPhase.clearStackToTableBodyContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2079
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.endTagTableRowGroup
    functionSourceFile: html5lib.html5parser
    functionUses: 2
    functionsReached:
    - html5lib.html5parser.getPhases.InTableBodyPhase.clearStackToTableBodyContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2076
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2088
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.endTagTable
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InTableBodyPhase.endTagTableRowGroup
    - html5lib.html5parser.getPhases.InTableBodyPhase.clearStackToTableBodyContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2101
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.endTagIgnore
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2105
    functionName: html5lib.html5parser.getPhases.InTableBodyPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InRowPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2130
    functionName: html5lib.html5parser.getPhases.InRowPhase.clearStackToTableRowContext
    functionSourceFile: html5lib.html5parser
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2136
    functionName: html5lib.html5parser.getPhases.InRowPhase.ignoreEndTagTr
    functionSourceFile: html5lib.html5parser
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2140
    functionName: html5lib.html5parser.getPhases.InRowPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2143
    functionName: html5lib.html5parser.getPhases.InRowPhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2146
    functionName: html5lib.html5parser.getPhases.InRowPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2149
    functionName: html5lib.html5parser.getPhases.InRowPhase.startTagTableCell
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.getPhases.InRowPhase.clearStackToTableRowContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2155
    functionName: html5lib.html5parser.getPhases.InRowPhase.startTagTableOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InRowPhase.ignoreEndTagTr
    - html5lib.html5parser.getPhases.InRowPhase.clearStackToTableRowContext
    - html5lib.html5parser.getPhases.InRowPhase.endTagTr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2165
    functionName: html5lib.html5parser.getPhases.InRowPhase.endTagTr
    functionSourceFile: html5lib.html5parser
    functionUses: 3
    functionsReached:
    - html5lib.html5parser.getPhases.InRowPhase.ignoreEndTagTr
    - html5lib.html5parser.getPhases.InRowPhase.clearStackToTableRowContext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2162
    functionName: html5lib.html5parser.getPhases.InRowPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2175
    functionName: html5lib.html5parser.getPhases.InRowPhase.endTagTable
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InRowPhase.ignoreEndTagTr
    - html5lib.html5parser.getPhases.InRowPhase.clearStackToTableRowContext
    - html5lib.html5parser.getPhases.InRowPhase.endTagTr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2183
    functionName: html5lib.html5parser.getPhases.InRowPhase.endTagTableRowGroup
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InRowPhase.ignoreEndTagTr
    - html5lib.html5parser.getPhases.InRowPhase.clearStackToTableRowContext
    - html5lib.html5parser.getPhases.InRowPhase.endTagTr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2190
    functionName: html5lib.html5parser.getPhases.InRowPhase.endTagIgnore
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2194
    functionName: html5lib.html5parser.getPhases.InRowPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InCellPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2219
    functionName: html5lib.html5parser.getPhases.InCellPhase.closeCell
    functionSourceFile: html5lib.html5parser
    functionUses: 2
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InCellPhase.endTagTableCell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2245
    functionName: html5lib.html5parser.getPhases.InCellPhase.endTagTableCell
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2226
    functionName: html5lib.html5parser.getPhases.InCellPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2229
    functionName: html5lib.html5parser.getPhases.InCellPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2232
    functionName: html5lib.html5parser.getPhases.InCellPhase.startTagTableOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InCellPhase.endTagTableCell
    - html5lib.html5parser.getPhases.InCellPhase.closeCell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2242
    functionName: html5lib.html5parser.getPhases.InCellPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2262
    functionName: html5lib.html5parser.getPhases.InCellPhase.endTagIgnore
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2265
    functionName: html5lib.html5parser.getPhases.InCellPhase.endTagImply
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InCellPhase.endTagTableCell
    - html5lib.html5parser.getPhases.InCellPhase.closeCell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2273
    functionName: html5lib.html5parser.getPhases.InCellPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InSelectPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2294
    functionName: html5lib.html5parser.getPhases.InSelectPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2300
    functionName: html5lib.html5parser.getPhases.InSelectPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2305
    functionName: html5lib.html5parser.getPhases.InSelectPhase.startTagOption
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2311
    functionName: html5lib.html5parser.getPhases.InSelectPhase.startTagOptgroup
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2318
    functionName: html5lib.html5parser.getPhases.InSelectPhase.startTagSelect
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InSelectPhase.endTagSelect
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2357
    functionName: html5lib.html5parser.getPhases.InSelectPhase.endTagSelect
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2322
    functionName: html5lib.html5parser.getPhases.InSelectPhase.startTagInput
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InSelectPhase.endTagSelect
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2330
    functionName: html5lib.html5parser.getPhases.InSelectPhase.startTagScript
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2333
    functionName: html5lib.html5parser.getPhases.InSelectPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2337
    functionName: html5lib.html5parser.getPhases.InSelectPhase.endTagOption
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2344
    functionName: html5lib.html5parser.getPhases.InSelectPhase.endTagOptgroup
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2368
    functionName: html5lib.html5parser.getPhases.InSelectPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InSelectInTablePhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2392
    functionName: html5lib.html5parser.getPhases.InSelectInTablePhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2395
    functionName: html5lib.html5parser.getPhases.InSelectInTablePhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2398
    functionName: html5lib.html5parser.getPhases.InSelectInTablePhase.startTagTable
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InSelectInTablePhase.endTagOther
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2412
    functionName: html5lib.html5parser.getPhases.InSelectInTablePhase.endTagOther
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2403
    functionName: html5lib.html5parser.getPhases.InSelectInTablePhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2406
    functionName: html5lib.html5parser.getPhases.InSelectInTablePhase.endTagTable
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - html5lib.html5parser.impliedTagToken
    - html5lib.html5parser.getPhases.InSelectInTablePhase.endTagOther
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InForeignContentPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    - <builtin>.frozenset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2439
    functionName: html5lib.html5parser.getPhases.InForeignContentPhase.adjustSVGTagNames
    functionSourceFile: html5lib.html5parser
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2480
    functionName: html5lib.html5parser.getPhases.InForeignContentPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.any
    - html5lib.html5parser.getPhases.Phase.processCharacters
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 8
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2488
    functionName: html5lib.html5parser.getPhases.InForeignContentPhase.processStartTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - html5lib.html5parser.getPhases.InForeignContentPhase.adjustSVGTagNames
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.set
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2515
    functionName: html5lib.html5parser.getPhases.InForeignContentPhase.processEndTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - node.name.translate
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.name.translate
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.AfterBodyPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2544
    functionName: html5lib.html5parser.getPhases.AfterBodyPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2548
    functionName: html5lib.html5parser.getPhases.AfterBodyPhase.processComment
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2553
    functionName: html5lib.html5parser.getPhases.AfterBodyPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2558
    functionName: html5lib.html5parser.getPhases.AfterBodyPhase.startTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2561
    functionName: html5lib.html5parser.getPhases.AfterBodyPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2567
    functionName: html5lib.html5parser.getPhases.AfterBodyPhase.endTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2573
    functionName: html5lib.html5parser.getPhases.AfterBodyPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.InFramesetPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2591
    functionName: html5lib.html5parser.getPhases.InFramesetPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2597
    functionName: html5lib.html5parser.getPhases.InFramesetPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2600
    functionName: html5lib.html5parser.getPhases.InFramesetPhase.startTagFrameset
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2603
    functionName: html5lib.html5parser.getPhases.InFramesetPhase.startTagFrame
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2607
    functionName: html5lib.html5parser.getPhases.InFramesetPhase.startTagNoframes
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2610
    functionName: html5lib.html5parser.getPhases.InFramesetPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2614
    functionName: html5lib.html5parser.getPhases.InFramesetPhase.endTagFrameset
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2626
    functionName: html5lib.html5parser.getPhases.InFramesetPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.AfterFramesetPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2647
    functionName: html5lib.html5parser.getPhases.AfterFramesetPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2651
    functionName: html5lib.html5parser.getPhases.AfterFramesetPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2654
    functionName: html5lib.html5parser.getPhases.AfterFramesetPhase.startTagNoframes
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2657
    functionName: html5lib.html5parser.getPhases.AfterFramesetPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2661
    functionName: html5lib.html5parser.getPhases.AfterFramesetPhase.endTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2664
    functionName: html5lib.html5parser.getPhases.AfterFramesetPhase.endTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.AfterAfterBodyPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2682
    functionName: html5lib.html5parser.getPhases.AfterAfterBodyPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2685
    functionName: html5lib.html5parser.getPhases.AfterAfterBodyPhase.processComment
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2688
    functionName: html5lib.html5parser.getPhases.AfterAfterBodyPhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2691
    functionName: html5lib.html5parser.getPhases.AfterAfterBodyPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2696
    functionName: html5lib.html5parser.getPhases.AfterAfterBodyPhase.startTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2699
    functionName: html5lib.html5parser.getPhases.AfterAfterBodyPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2705
    functionName: html5lib.html5parser.getPhases.AfterAfterBodyPhase.processEndTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.html5parser.getPhases.AfterAfterFramesetPhase
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.len
    - _dictEntries.append
    - html5lib._utils.MethodDispatcher.__init__
    - dict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2719
    functionName: html5lib.html5parser.getPhases.AfterAfterFramesetPhase.processEOF
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2722
    functionName: html5lib.html5parser.getPhases.AfterAfterFramesetPhase.processComment
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2725
    functionName: html5lib.html5parser.getPhases.AfterAfterFramesetPhase.processSpaceCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2728
    functionName: html5lib.html5parser.getPhases.AfterAfterFramesetPhase.processCharacters
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2731
    functionName: html5lib.html5parser.getPhases.AfterAfterFramesetPhase.startTagHtml
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2734
    functionName: html5lib.html5parser.getPhases.AfterAfterFramesetPhase.startTagNoFrames
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2737
    functionName: html5lib.html5parser.getPhases.AfterAfterFramesetPhase.startTagOther
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2741
    functionName: html5lib.html5parser.getPhases.AfterAfterFramesetPhase.processEndTag
    functionSourceFile: html5lib.html5parser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: six.viewkeys
    functionSourceFile: six
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.type
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib._tokenizer
    functionSourceFile: html5lib._tokenizer
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.all
    - html5lib._trie.py.Trie.__init__
    - <builtin>.len
    - data.keys
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 10
    functionName: html5lib._trie.py.Trie.__init__
    functionSourceFile: html5lib._trie.py
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.all
    - <builtin>.len
    - <builtin>.sorted
    - data.keys
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - source
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 125
    functionName: html5lib._inputstream.HTMLInputStream
    functionSourceFile: html5lib._inputstream
    functionUses: 6
    functionsReached:
    - chardet.universaldetector.UniversalDetector.feed
    - chardet.universaldetector.UniversalDetector.close
    - html5lib._inputstream.HTMLUnicodeInputStream.__init__
    - <builtin>.len
    - io.BytesIO.tell
    - html5lib._inputstream.BufferedStream.tell
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - chardet.universaldetector.UniversalDetector
    - html5lib._inputstream.BufferedStream.seek
    - html5lib._inputstream.HTMLBinaryInputStream.__init__
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - io.BytesIO.read
    - html5lib._inputstream.lookupEncoding
    - buffers.append
    - html5lib._inputstream.EncodingBytes.__iter__
    - <builtin>.hasattr
    - encoding.decode
    - io.StringIO
    - <builtin>.isinstance
    - html5lib._inputstream.BufferedStream._readStream
    - io.BytesIO
    - io.BytesIO.seek
    - rv.append
    - source.read
    - html5lib._inputstream.EncodingParser.getEncoding
    - x.endswith
    - webencodings.lookup
    - html5lib._inputstream.BufferedStream.read
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    - html5lib._inputstream.BufferedStream.__init__
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._inputstream.HTMLBinaryInputStream.determineEncoding
    - html5lib._inputstream.HTMLBinaryInputStream.openStream
    - html5lib._inputstream.HTMLUnicodeInputStream.openStream
    - html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._inputstream.EncodingBytes.jumpTo
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - bomDict.get
    - <builtin>.sum
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.deque
    functionSourceFile: collections
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 324
    functionName: html5lib._tokenizer.HTMLTokenizer.rawtextState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 285
    functionName: html5lib._tokenizer.HTMLTokenizer.entityDataState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - bisect.bisect_left
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - six.unichr
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - charStack.pop
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - <builtin>.int
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - prefix.startswith
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 375
    functionName: html5lib._tokenizer.HTMLTokenizer.tagOpenState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 360
    functionName: html5lib._tokenizer.HTMLTokenizer.plaintextState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1090
    functionName: html5lib._tokenizer.HTMLTokenizer.selfClosingStartTagState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - collections.OrderedDict
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 517
    functionName: html5lib._tokenizer.HTMLTokenizer.rawtextEndTagOpenState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1693
    functionName: html5lib._tokenizer.HTMLTokenizer.bogusDoctypeState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 745
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeStartState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1070
    functionName: html5lib._tokenizer.HTMLTokenizer.afterAttributeValueState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - collections.OrderedDict
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 290
    functionName: html5lib._tokenizer.HTMLTokenizer.rcdataState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 691
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedLessThanSignState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1305
    functionName: html5lib._tokenizer.HTMLTokenizer.doctypeState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 649
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 782
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1251
    functionName: html5lib._tokenizer.HTMLTokenizer.commentEndState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 556
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataLessThanSignState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1707
    functionName: html5lib._tokenizer.HTMLTokenizer.cdataSectionState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - data.count
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - data.append
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1577
    functionName: html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemKeywordState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 841
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeEndState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 478
    functionName: html5lib._tokenizer.HTMLTokenizer.rcdataEndTagNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - collections.OrderedDict
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 5
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1045
    functionName: html5lib._tokenizer.HTMLTokenizer.attributeValueUnQuotedState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - bisect.bisect_left
    - m.end
    - collections.OrderedDict
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - six.unichr
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - data.update
    - charStack.pop
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - <builtin>.int
    - html5lib._utils.isSurrogatePair
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - rv.append
    - html5lib._utils.surrogatePairToCodepoint
    - html5lib._trie._base.Trie.longest_prefix
    - prefix.startswith
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 5
    IfCount: 11
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 887
    functionName: html5lib._tokenizer.HTMLTokenizer.attributeNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - collections.OrderedDict
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 6
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1521
    functionName: html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicIdentifierState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1108
    functionName: html5lib._tokenizer.HTMLTokenizer.bogusCommentState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 5
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1444
    functionName: html5lib._tokenizer.HTMLTokenizer.beforeDoctypePublicIdentifierState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 528
    functionName: html5lib._tokenizer.HTMLTokenizer.rawtextEndTagNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - collections.OrderedDict
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1674
    functionName: html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemIdentifierState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 7
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 973
    functionName: html5lib._tokenizer.HTMLTokenizer.beforeAttributeValueState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - collections.OrderedDict
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1232
    functionName: html5lib._tokenizer.HTMLTokenizer.commentEndDashState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1214
    functionName: html5lib._tokenizer.HTMLTokenizer.commentState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 761
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1026
    functionName: html5lib._tokenizer.HTMLTokenizer.attributeValueSingleQuotedState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - bisect.bisect_left
    - m.end
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - six.unichr
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - charStack.pop
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - <builtin>.int
    - html5lib._utils.isSurrogatePair
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - html5lib._trie._base.Trie.longest_prefix
    - prefix.startswith
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 5
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1123
    functionName: html5lib._tokenizer.HTMLTokenizer.markupDeclarationOpenState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - charStack.pop
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 506
    functionName: html5lib._tokenizer.HTMLTokenizer.rawtextLessThanSignState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1626
    functionName: html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierDoubleQuotedState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1282
    functionName: html5lib._tokenizer.HTMLTokenizer.commentEndBangState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 581
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - collections.OrderedDict
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 5
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1597
    functionName: html5lib._tokenizer.HTMLTokenizer.beforeDoctypeSystemIdentifierState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 410
    functionName: html5lib._tokenizer.HTMLTokenizer.closeTagOpenState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1650
    functionName: html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierSingleQuotedState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1322
    functionName: html5lib._tokenizer.HTMLTokenizer.beforeDoctypeNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1348
    functionName: html5lib._tokenizer.HTMLTokenizer.doctypeNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 717
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - collections.OrderedDict
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 467
    functionName: html5lib._tokenizer.HTMLTokenizer.rcdataEndTagOpenState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 342
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 619
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartDashState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 9
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 941
    functionName: html5lib._tokenizer.HTMLTokenizer.afterAttributeNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - collections.OrderedDict
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1168
    functionName: html5lib._tokenizer.HTMLTokenizer.commentStartState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 805
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashDashState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 629
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 9
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 857
    functionName: html5lib._tokenizer.HTMLTokenizer.beforeAttributeNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - collections.OrderedDict
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 319
    functionName: html5lib._tokenizer.HTMLTokenizer.characterReferenceInRcdata
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - bisect.bisect_left
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - six.unichr
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - charStack.pop
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - <builtin>.int
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - prefix.startswith
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1497
    functionName: html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierSingleQuotedState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 256
    functionName: html5lib._tokenizer.HTMLTokenizer.dataState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 830
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedLessThanSignState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 456
    functionName: html5lib._tokenizer.HTMLTokenizer.rcdataLessThanSignState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 5
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 669
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashDashState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 706
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagOpenState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1424
    functionName: html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicKeywordState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 434
    functionName: html5lib._tokenizer.HTMLTokenizer.tagNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - collections.OrderedDict
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - data.update
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 609
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1191
    functionName: html5lib._tokenizer.HTMLTokenizer.commentStartDashState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 570
    functionName: html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagOpenState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1551
    functionName: html5lib._tokenizer.HTMLTokenizer.betweenDoctypePublicAndSystemIdentifiersState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 6
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1373
    functionName: html5lib._tokenizer.HTMLTokenizer.afterDoctypeNameState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1473
    functionName: html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierDoubleQuotedState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1007
    functionName: html5lib._tokenizer.HTMLTokenizer.attributeValueDoubleQuotedState
    functionSourceFile: html5lib._tokenizer
    functionUses: 7
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - bisect.bisect_left
    - m.end
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - six.unichr
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - charStack.pop
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    - data.replace
    - <builtin>.int
    - html5lib._utils.isSurrogatePair
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - html5lib._trie._base.Trie.longest_prefix
    - prefix.startswith
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.deque.popleft
    functionSourceFile: collections
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - isHex
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 71
    functionName: html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    functionSourceFile: html5lib._tokenizer
    functionUses: 14
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - six.unichr
    - collections.deque.append
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - <builtin>.int
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 234
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.char
    functionSourceFile: html5lib._inputstream
    functionUses: 77
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: charStack.append
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.int
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.deque.append
    functionSourceFile: collections
    functionUses: 78
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: six.unichr
    functionSourceFile: six
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - char
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 361
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.unget
    functionSourceFile: ''
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 13
    IfCount: 10
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc4509a36a0>
    - <ast.Constant object at 0x7fc4509a36d0>
    argNames:
    - self
    - allowedChar
    - fromAttribute
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 143
    functionName: html5lib._tokenizer.HTMLTokenizer.consumeEntity
    functionSourceFile: html5lib._tokenizer
    functionUses: 13
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - bisect.bisect_left
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - six.unichr
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - charStack.pop
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - <builtin>.int
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - prefix.startswith
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: charStack.pop
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: html5lib._trie.py.Trie.has_keys_with_prefix
    functionSourceFile: html5lib._trie.py
    functionUses: 14
    functionsReached:
    - prefix.startswith
    - bisect.bisect_left
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: html5lib._trie._base.Trie.longest_prefix
    functionSourceFile: html5lib._trie._base
    functionUses: 15
    functionsReached:
    - <builtin>.len
    - <builtin>.range
    linkageType: pythonLinkage
    raised:
    - KeyError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - allowedChar
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 223
    functionName: html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute
    functionSourceFile: html5lib._tokenizer
    functionUses: 10
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - bisect.bisect_left
    - html5lib._inputstream.HTMLUnicodeInputStream.unget
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - collections.deque.append
    - six.unichr
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - html5lib._tokenizer.HTMLTokenizer.consumeEntity
    - charStack.pop
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - <builtin>.int
    - data.replace
    - html5lib._utils.isSurrogatePair
    - html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity
    - html5lib._inputstream.HTMLUnicodeInputStream.char
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._trie._base.Trie.longest_prefix
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - prefix.startswith
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - html5lib._trie.py.Trie.has_keys_with_prefix
    - invalid_unicode_re.finditer
    - charStack.append
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - <builtin>.frozenset
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 5
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 228
    functionName: html5lib._tokenizer.HTMLTokenizer.emitCurrentToken
    functionSourceFile: html5lib._tokenizer
    functionUses: 19
    functionsReached:
    - <builtin>.len
    - data.update
    - collections.deque.append
    - collections.OrderedDict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.OrderedDict
    functionSourceFile: collections
    functionUses: 32
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.update
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 3
    IfCount: 6
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc45079d670>
    argNames:
    - self
    - characters
    - opposite
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 314
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.charsUntil
    functionSourceFile: html5lib._inputstream
    functionUses: 23
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - m.end
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - re.compile
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - rv.append
    - html5lib._utils.surrogatePairToCodepoint
    - chunk.rfind
    - html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - chars.match
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.replace
    functionSourceFile: <builtin>
    functionUses: 82
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.append
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.count
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.range
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib._trie
    functionSourceFile: html5lib._trie
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib._trie.py
    functionSourceFile: html5lib._trie.py
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.keys
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.all
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.sorted
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 19
    functionName: html5lib._trie.py.Trie.__contains__
    functionSourceFile: html5lib._trie.py
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: html5lib._trie.py.Trie.__len__
    functionSourceFile: html5lib._trie.py
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: html5lib._trie.py.Trie.__iter__
    functionSourceFile: html5lib._trie.py
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 28
    functionName: html5lib._trie.py.Trie.__getitem__
    functionSourceFile: html5lib._trie.py
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fcf6ac0>
    argNames:
    - self
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: html5lib._trie.py.Trie.keys
    functionSourceFile: html5lib._trie.py
    functionUses: 1
    functionsReached:
    - bisect.bisect_left
    - keys.add
    - prefix.startswith
    - <builtin>.len
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: prefix.startswith
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: bisect.bisect_left
    functionSourceFile: bisect
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keys.add
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib._trie._base
    functionSourceFile: html5lib._trie._base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc450a34940>
    argNames:
    - self
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 12
    functionName: html5lib._trie._base.Trie.keys
    functionSourceFile: html5lib._trie._base
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - <builtin>.set
    - x.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: x.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 21
    functionName: html5lib._trie._base.Trie.has_keys_with_prefix
    functionSourceFile: html5lib._trie._base
    functionUses: 0
    functionsReached:
    - html5lib._trie._base.Trie.keys
    - bisect.bisect_left
    - x.startswith
    - keys.add
    - prefix.startswith
    - <builtin>.len
    - key.startswith
    - html5lib._trie.py.Trie.keys
    - <builtin>.super
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 38
    functionName: html5lib._trie._base.Trie.longest_prefix_item
    functionSourceFile: html5lib._trie._base
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.range
    - html5lib._trie._base.Trie.longest_prefix
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.treebuilders
    functionSourceFile: html5lib.treebuilders
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: treeType.lower
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: treeBuilderCache.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.etree_lxml
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - re.compile
    - xml.dom.minidom.Comment
    - lxml.etree.Comment
    - xml.etree.cElementTree.Comment
    - xml.etree.ElementTree.Comment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.compile
    functionSourceFile: re
    functionUses: 46
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.dom.minidom.Comment
    functionSourceFile: xml
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.etree.cElementTree.Comment
    functionSourceFile: xml
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.etree.ElementTree.Comment
    functionSourceFile: xml
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lxml.etree.Comment
    functionSourceFile: lxml
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - publicId
    - systemId
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 41
    functionName: html5lib.treebuilders.etree_lxml.DocumentType.__init__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 48
    functionName: html5lib.treebuilders.etree_lxml.Document.__init__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 52
    functionName: html5lib.treebuilders.etree_lxml.Document.appendChild
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 3
    functionsReached:
    - last.addnext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: last.addnext
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 59
    functionName: html5lib.treebuilders.etree_lxml.Document._getChildNodes
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.property
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.etree_lxml.Document
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - element
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 65
    functionName: html5lib.treebuilders.etree_lxml.testSerializer
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - element.getroot
    - <builtin>.isinstance
    - element.attrib.items
    - rv.append
    - attributes.append
    - etree_builders.tag_regexp.match
    - tag_regexp.match
    - nsmatch.group
    - nsmatch.groups
    - next_element.getprevious
    - infosetFilter.fromXmlName
    - <builtin>.hasattr
    - <builtin>.sorted
    - next_element.getnext
    - _ihatexml.InfosetFilter
    - html5lib.treebuilders.etree_lxml.testSerializer.serializeElement
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _ihatexml.InfosetFilter
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 15
    IfCount: 12
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc44e496df0>
    argNames:
    - element
    - indent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 69
    functionName: html5lib.treebuilders.etree_lxml.testSerializer.serializeElement
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 1
    functionsReached:
    - element.getroot
    - <builtin>.isinstance
    - element.attrib.items
    - rv.append
    - attributes.append
    - etree_builders.tag_regexp.match
    - tag_regexp.match
    - nsmatch.group
    - nsmatch.groups
    - next_element.getprevious
    - infosetFilter.fromXmlName
    - <builtin>.hasattr
    - <builtin>.sorted
    - next_element.getnext
    - html5lib.treebuilders.etree_lxml.testSerializer.serializeElement
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rv.append
    functionSourceFile: <builtin>
    functionUses: 103
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: element.getroot
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: next_element.getprevious
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: next_element.getnext
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: etree_builders.tag_regexp.match
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nsmatch.group
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: infosetFilter.fromXmlName
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: element.attrib.items
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tag_regexp.match
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nsmatch.groups
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attributes.append
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - element
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 144
    functionName: html5lib.treebuilders.etree_lxml.tostring
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - element.getroot
    - element.attrib.items
    - rv.append
    - html5lib.treebuilders.etree_lxml.tostring.serializeElement
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 9
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - element
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 148
    functionName: html5lib.treebuilders.etree_lxml.tostring.serializeElement
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 1
    functionsReached:
    - element.getroot
    - element.attrib.items
    - rv.append
    - html5lib.treebuilders.etree_lxml.tostring.serializeElement
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fb64b80>
    argNames:
    - self
    - namespaceHTMLElements
    - fullTree
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 193
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - _ihatexml.InfosetFilter
    - html5lib.treebuilders.base.TreeBuilder.__init__
    - html5lib.treebuilders.base.TreeBuilder.reset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 199
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__init__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 202
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes._coerceKey
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - infosetFilter.coerceAttribute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: infosetFilter.coerceAttribute
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 209
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__getitem__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - value.decode
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes._coerceKey
    - <builtin>.isinstance
    - infosetFilter.coerceAttribute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 215
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__setitem__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes._coerceKey
    - <builtin>.isinstance
    - infosetFilter.coerceAttribute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 218
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__delitem__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes._coerceKey
    - <builtin>.isinstance
    - infosetFilter.coerceAttribute
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 221
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__iter__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 224
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__len__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 227
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.clear
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - namespace
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 231
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.__init__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 6
    functionsReached:
    - infosetFilter.coerceElement
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__init__
    - builder.Element.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: infosetFilter.coerceElement
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: builder.Element.__init__
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 236
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element._setName
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - infosetFilter.coerceElement
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 241
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element._getName
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - infosetFilter.fromXmlName
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 246
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element._getAttributes
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 249
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element._setAttributes
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - attributes.clear
    - attributes.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attributes.clear
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attributes.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc45071c610>
    argNames:
    - self
    - data
    - insertBefore
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 256
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.insertText
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - infosetFilter.coerceCharacters
    - builder.Element.insertText
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: infosetFilter.coerceCharacters
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: builder.Element.insertText
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 260
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.cloneNode
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - element._element.attrib.update
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: element._element.attrib.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 267
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment.__init__
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 2
    functionsReached:
    - infosetFilter.coerceComment
    - builder.Comment.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: infosetFilter.coerceComment
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: builder.Comment.__init__
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 271
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment._setData
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - infosetFilter.coerceComment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 275
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment._getData
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - namespaceHTMLElements
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 173
    functionName: html5lib.treebuilders.base.TreeBuilder.__init__
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 1
    functionsReached:
    - html5lib.treebuilders.base.TreeBuilder.reset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 285
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.reset
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.base.TreeBuilder.reset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 185
    functionName: html5lib.treebuilders.base.TreeBuilder.reset
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 291
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.testSerializer
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree_lxml.TreeBuilder.testSerializer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 294
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.getDocument
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 300
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.getFragment
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - fragment.append
    - fragment.extend
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fragment.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.list
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fragment.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 310
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.insertDoctype
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - warnings.warn
    - html5lib.treebuilders.etree_lxml.DocumentType.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: warnings.warn
    functionSourceFile: warnings
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44e4bedc0>
    argNames:
    - self
    - data
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 326
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.insertCommentInitial
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44e4be880>
    argNames:
    - self
    - data
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 331
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.insertCommentMain
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - warnings.warn
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 337
    functionName: html5lib.treebuilders.etree_lxml.TreeBuilder.insertRoot
    functionSourceFile: html5lib.treebuilders.etree_lxml
    functionUses: 0
    functionsReached:
    - root.getroottree
    - token.get
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.__init__
    - xml.etree.ElementTree.fromstring
    - xml.dom.minidom.fromstring
    - lxml.etree.fromstring
    - infosetFilter.coerceComment
    - sysid.find
    - html5lib.treebuilders.etree_lxml.Document.__init__
    - warnings.warn
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment.__init__
    - builder.Comment.__init__
    - builder.Element.__init__
    - infosetFilter.coerceElement
    - sysid.replace
    - root.addprevious
    - xml.etree.cElementTree.fromstring
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sysid.find
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sysid.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.etree.ElementTree.fromstring
    functionSourceFile: xml
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.dom.minidom.fromstring
    functionSourceFile: xml
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lxml.etree.fromstring
    functionSourceFile: lxml
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.etree.cElementTree.fromstring
    functionSourceFile: xml
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: root.addprevious
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: root.getroottree
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.get
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.etree
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - re.compile
    - html5lib._utils.moduleFactoryFactory
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc44ec0eeb0>
    argNames:
    - ElementTreeImplementation
    - fullTree
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 19
    functionName: html5lib.treebuilders.etree.getETreeBuilder
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 1
    functionsReached:
    - xml.dom.minidom.Comment
    - lxml.etree.Comment
    - xml.etree.cElementTree.Comment
    - xml.etree.ElementTree.Comment
    - <builtin>.locals
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44ec0eb20>
    argNames:
    - self
    - name
    - namespace
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 24
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element.__init__
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 4
    functionsReached:
    - lxml.etree.Element
    - html5lib.treebuilders.etree.getETreeBuilder.Element._getETreeTag
    - xml.dom.minidom.Element
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - namespace
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 37
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element._getETreeTag
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lxml.etree.Element
    functionSourceFile: lxml
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.dom.minidom.Element
    functionSourceFile: xml
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 44
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element._setName
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree.getETreeBuilder.Element._getETreeTag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 48
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element._getName
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - namespace
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 53
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element._setNamespace
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree.getETreeBuilder.Element._getETreeTag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 57
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element._getNamespace
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 62
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element._getAttributes
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attributes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element._setAttributes
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - el_attrib.clear
    - <builtin>.isinstance
    - attributes.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: el_attrib.clear
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attributes.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 80
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element._getChildNodes
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 83
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element._setChildNodes
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element.hasContent
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bool
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 95
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element.appendChild
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - node
    - refNode
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element.insertBefore
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 105
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element.removeChild
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44f8cb190>
    argNames:
    - self
    - data
    - insertBefore
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 110
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element.insertText
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.list
    - children.index
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: children.index
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 133
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element.cloneNode
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree.getETreeBuilder.Element._getETreeTag
    - xml.dom.minidom.Element
    - html5lib.treebuilders.etree.getETreeBuilder.DocumentFragment.__init__
    - html5lib.treebuilders.etree.getETreeBuilder.DocumentType.__init__
    - html5lib.treebuilders.etree.getETreeBuilder.Document.__init__
    - lxml.etree.Element
    - copy.copy
    - <builtin>.type
    - html5lib.treebuilders.etree.getETreeBuilder.Element.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 197
    functionName: html5lib.treebuilders.etree.getETreeBuilder.DocumentFragment.__init__
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 1
    functionsReached:
    - lxml.etree.Element
    - html5lib.treebuilders.etree.getETreeBuilder.Element.__init__
    - html5lib.treebuilders.etree.getETreeBuilder.Element._getETreeTag
    - xml.dom.minidom.Element
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 193
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Document.__init__
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 1
    functionsReached:
    - lxml.etree.Element
    - html5lib.treebuilders.etree.getETreeBuilder.Element.__init__
    - html5lib.treebuilders.etree.getETreeBuilder.Element._getETreeTag
    - xml.dom.minidom.Element
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - publicId
    - systemId
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 168
    functionName: html5lib.treebuilders.etree.getETreeBuilder.DocumentType.__init__
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 1
    functionsReached:
    - lxml.etree.Element
    - html5lib.treebuilders.etree.getETreeBuilder.Element.__init__
    - html5lib.treebuilders.etree.getETreeBuilder.Element._getETreeTag
    - xml.dom.minidom.Element
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: copy.copy
    functionSourceFile: copy
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - newParent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 139
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Element.reparentChildren
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree.getETreeBuilder.Element.appendChild
    - newParent.element.appendChild
    - html5lib.treebuilders.base.Node.reparentChildren
    - html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.reparentChildren
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - newParent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 97
    functionName: html5lib.treebuilders.base.Node.reparentChildren
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 1
    functionsReached:
    - html5lib.treebuilders.etree.getETreeBuilder.Element.appendChild
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - newParent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 84
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.reparentChildren
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 1
    functionsReached:
    - newParent.element.appendChild
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 151
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Comment.__init__
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - xml.dom.minidom.Comment
    - xml.etree.cElementTree.Comment
    - xml.etree.ElementTree.Comment
    - lxml.etree.Comment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 159
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Comment._getData
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 162
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Comment._setData
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.etree.getETreeBuilder.Comment
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 174
    functionName: html5lib.treebuilders.etree.getETreeBuilder.DocumentType._getPublicId
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 177
    functionName: html5lib.treebuilders.etree.getETreeBuilder.DocumentType._setPublicId
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.etree.getETreeBuilder.DocumentType
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 183
    functionName: html5lib.treebuilders.etree.getETreeBuilder.DocumentType._getSystemId
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 186
    functionName: html5lib.treebuilders.etree.getETreeBuilder.DocumentType._setSystemId
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - element
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 200
    functionName: html5lib.treebuilders.etree.getETreeBuilder.testSerializer
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - element.getroot
    - <builtin>.isinstance
    - element.attrib.items
    - rv.append
    - html5lib.treebuilders.etree.getETreeBuilder.testSerializer.serializeElement
    - attributes.append
    - <builtin>.len
    - tag_regexp.match
    - element.get
    - nsmatch.groups
    - <builtin>.hasattr
    - <builtin>.type
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 11
    IfCount: 13
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc44e271040>
    argNames:
    - element
    - indent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 203
    functionName: html5lib.treebuilders.etree.getETreeBuilder.testSerializer.serializeElement
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 1
    functionsReached:
    - element.getroot
    - <builtin>.isinstance
    - element.attrib.items
    - html5lib.treebuilders.etree.getETreeBuilder.testSerializer.serializeElement
    - rv.append
    - attributes.append
    - <builtin>.len
    - tag_regexp.match
    - nsmatch.groups
    - element.get
    - <builtin>.hasattr
    - <builtin>.type
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: element.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - element
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 262
    functionName: html5lib.treebuilders.etree.getETreeBuilder.tostring
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - element.getroot
    - <builtin>.isinstance
    - element.attrib.items
    - html5lib.treebuilders.etree.getETreeBuilder.tostring.serializeElement
    - rv.append
    - <builtin>.len
    - filter.fromXmlName
    - element.get
    - <builtin>.hasattr
    - _ihatexml.InfosetFilter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 11
    IfCount: 11
    argCount: 1
    argDefaultValues: []
    argNames:
    - element
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 267
    functionName: html5lib.treebuilders.etree.getETreeBuilder.tostring.serializeElement
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 1
    functionsReached:
    - element.getroot
    - <builtin>.isinstance
    - element.attrib.items
    - rv.append
    - html5lib.treebuilders.etree.getETreeBuilder.tostring.serializeElement
    - <builtin>.len
    - filter.fromXmlName
    - element.get
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: filter.fromXmlName
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 324
    functionName: html5lib.treebuilders.etree.getETreeBuilder.TreeBuilder.testSerializer
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree.getETreeBuilder.TreeBuilder.testSerializer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 327
    functionName: html5lib.treebuilders.etree.getETreeBuilder.TreeBuilder.getDocument
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 337
    functionName: html5lib.treebuilders.etree.getETreeBuilder.TreeBuilder.getFragment
    functionSourceFile: html5lib.treebuilders.etree
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.base.TreeBuilder.getFragment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 405
    functionName: html5lib.treebuilders.base.TreeBuilder.getFragment
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.locals
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - factory
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 121
    functionName: html5lib._utils.moduleFactoryFactory
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib._utils
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached:
    - <builtin>.eval
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.eval
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _dictEntries.append
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dict.__init__
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 69
    functionName: html5lib._utils.MethodDispatcher.__getitem__
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached:
    - dict.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dict.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc45014a310>
    argNames:
    - self
    - instance
    - owner
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: html5lib._utils.MethodDispatcher.__get__
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached:
    - html5lib._utils.BoundMethodDispatcher.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - instance
    - dispatcher
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 78
    functionName: html5lib._utils.BoundMethodDispatcher.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 82
    functionName: html5lib._utils.BoundMethodDispatcher.__getitem__
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - default
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 87
    functionName: html5lib._utils.BoundMethodDispatcher.get
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 93
    functionName: html5lib._utils.BoundMethodDispatcher.__iter__
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: html5lib._utils.BoundMethodDispatcher.__len__
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 99
    functionName: html5lib._utils.BoundMethodDispatcher.__contains__
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 106
    functionName: html5lib._utils.isSurrogatePair
    functionSourceFile: html5lib._utils
    functionUses: 82
    functionsReached:
    - <builtin>.len
    - <builtin>.ord
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.ord
    functionSourceFile: <builtin>
    functionUses: 92
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 112
    functionName: html5lib._utils.surrogatePairToCodepoint
    functionSourceFile: html5lib._utils
    functionUses: 83
    functionsReached:
    - <builtin>.ord
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - baseModule
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 124
    functionName: html5lib._utils.moduleFactoryFactory.moduleFactory
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree.getETreeBuilder
    - <builtin>.isinstance
    - <builtin>.tuple
    - html5lib.treewalkers.etree.getETreeBuilder
    - xml.dom.minidom.Comment
    - lxml.etree.Comment
    - types.ModuleType.__dict__.update
    - kwargs.items
    - xml.etree.cElementTree.Comment
    - xml.etree.ElementTree.Comment
    - <builtin>.locals
    - <builtin>.type
    - html5lib.treebuilders.dom.getDomBuilder
    - types.ModuleType
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: types.ModuleType
    functionSourceFile: types
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - ElementTreeImplementation
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 14
    functionName: html5lib.treewalkers.etree.getETreeBuilder
    functionSourceFile: html5lib.treewalkers.etree
    functionUses: 1
    functionsReached:
    - xml.dom.minidom.Comment
    - lxml.etree.Comment
    - xml.etree.cElementTree.Comment
    - xml.etree.ElementTree.Comment
    - <builtin>.locals
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - DomImplementation
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 17
    functionName: html5lib.treebuilders.dom.getDomBuilder
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 1
    functionsReached:
    - <builtin>.locals
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: types.ModuleType.__dict__.update
    functionSourceFile: types
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 153
    functionName: html5lib._utils.memoize.wrapped
    functionSourceFile: html5lib._utils
    functionUses: 0
    functionsReached:
    - kwargs.items
    - <builtin>.tuple
    - html5lib.html5parser.getPhases
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.constants
    functionSourceFile: html5lib.constants
    functionUses: 0
    functionsReached:
    - <builtin>.ord
    - c.lower
    - namespaces.items
    - <builtin>.frozenset
    - adjustForeignAttributes.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: adjustForeignAttributes.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: c.lower
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: namespaces.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.dom
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib._utils.moduleFactoryFactory
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 21
    functionName: html5lib.treebuilders.dom.getDomBuilder.AttrList.__init__
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 24
    functionName: html5lib.treebuilders.dom.getDomBuilder.AttrList.__iter__
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 27
    functionName: html5lib.treebuilders.dom.getDomBuilder.AttrList.__setitem__
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: html5lib.treebuilders.dom.getDomBuilder.AttrList.__len__
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: html5lib.treebuilders.dom.getDomBuilder.AttrList.items
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: html5lib.treebuilders.dom.getDomBuilder.AttrList.values
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 44
    functionName: html5lib.treebuilders.dom.getDomBuilder.AttrList.__getitem__
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: html5lib.treebuilders.dom.getDomBuilder.AttrList.__delitem__
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 57
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.__init__
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 5
    functionsReached:
    - html5lib.treebuilders.base.Node.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 25
    functionName: html5lib.treebuilders.base.Node.__init__
    functionSourceFile: ''
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.<lambda1>
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.appendChild
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fdf2190>
    argNames:
    - self
    - data
    - insertBefore
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 68
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.insertText
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - node
    - refNode
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 75
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.insertBefore
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 79
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.removeChild
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: newParent.element.appendChild
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.getAttributes
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.dom.getDomBuilder.AttrList.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attributes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 94
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.setAttributes
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - attributes.items
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 109
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.cloneNode
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.__init__
    - html5lib.treebuilders.base.Node.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 112
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.hasContent
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 115
    functionName: html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.getNameTuple
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 124
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.documentClass
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - weakref.proxy
    - xml.etree.cElementTree.getDOMImplementation
    - xml.dom.minidom.getDOMImplementation
    - xml.etree.ElementTree.getDOMImplementation
    - lxml.etree.getDOMImplementation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.etree.cElementTree.getDOMImplementation
    functionSourceFile: xml
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.etree.ElementTree.getDOMImplementation
    functionSourceFile: xml
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.dom.minidom.getDOMImplementation
    functionSourceFile: xml
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lxml.etree.getDOMImplementation
    functionSourceFile: lxml
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: weakref.proxy
    functionSourceFile: weakref
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 128
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.insertDoctype
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.__init__
    - last.addnext
    - domimpl.createDocumentType
    - html5lib.treebuilders.etree_lxml.Document.appendChild
    - xml.etree.cElementTree.getDOMImplementation
    - html5lib.treebuilders.base.Node.__init__
    - xml.dom.minidom.getDOMImplementation
    - xml.etree.ElementTree.getDOMImplementation
    - lxml.etree.getDOMImplementation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: domimpl.createDocumentType
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc450186fa0>
    argNames:
    - self
    - name
    - namespace
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 139
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.elementClass
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.__init__
    - html5lib.treebuilders.base.Node.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 147
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.commentClass
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.__init__
    - html5lib.treebuilders.base.Node.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 150
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.fragmentClass
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.__init__
    - html5lib.treebuilders.base.Node.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 153
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.appendChild
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - element
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 156
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.testSerializer
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.testSerializer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 159
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.getDocument
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 162
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.getFragment
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.base.TreeBuilder.getFragment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc450838e50>
    argNames:
    - self
    - data
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 165
    functionName: html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.insertText
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.base.TreeBuilder.insertText
    - parent.insertText
    - html5lib.treebuilders.base.TreeBuilder.getTableMisnestedNodePosition
    - <builtin>.hasattr
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc450818e50>
    argNames:
    - self
    - data
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 350
    functionName: html5lib.treebuilders.base.TreeBuilder.insertText
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 1
    functionsReached:
    - parent.insertText
    - html5lib.treebuilders.base.TreeBuilder.getTableMisnestedNodePosition
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - element
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 181
    functionName: html5lib.treebuilders.dom.getDomBuilder.testSerializer
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 0
    functionsReached:
    - element.hasAttributes
    - rv.append
    - attributes.append
    - <builtin>.len
    - html5lib.treebuilders.dom.getDomBuilder.testSerializer.serializeElement
    - <builtin>.range
    - element.attributes.item
    - <builtin>.hasattr
    - <builtin>.sorted
    - element.normalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: element.normalize
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 11
    IfCount: 10
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fe02d00>
    argNames:
    - element
    - indent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 185
    functionName: html5lib.treebuilders.dom.getDomBuilder.testSerializer.serializeElement
    functionSourceFile: html5lib.treebuilders.dom
    functionUses: 1
    functionsReached:
    - element.hasAttributes
    - rv.append
    - attributes.append
    - <builtin>.len
    - <builtin>.range
    - html5lib.treebuilders.dom.getDomBuilder.testSerializer.serializeElement
    - element.attributes.item
    - <builtin>.hasattr
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: element.hasAttributes
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: element.attributes.item
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.base
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached:
    - <builtin>.frozenset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 45
    functionName: html5lib.treebuilders.base.Node.__str__
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: html5lib.treebuilders.base.Node.__repr__
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 57
    functionName: html5lib.treebuilders.base.Node.appendChild
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc45079d0a0>
    argNames:
    - self
    - data
    - insertBefore
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 65
    functionName: html5lib.treebuilders.base.Node.insertText
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - node
    - refNode
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: html5lib.treebuilders.base.Node.insertBefore
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 89
    functionName: html5lib.treebuilders.base.Node.removeChild
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 110
    functionName: html5lib.treebuilders.base.Node.cloneNode
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 116
    functionName: html5lib.treebuilders.base.Node.hasContent
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 123
    functionName: html5lib.treebuilders.base.ActiveFormattingElements.append
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.base.ActiveFormattingElements.nodesEqual
    - list.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - node1
    - node2
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 137
    functionName: html5lib.treebuilders.base.ActiveFormattingElements.nodesEqual
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: list.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fe02c40>
    argNames:
    - self
    - target
    - variant
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 197
    functionName: html5lib.treebuilders.base.TreeBuilder.elementInScope
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.reversed
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 219
    functionName: html5lib.treebuilders.base.TreeBuilder.reconstructActiveFormattingElements
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached:
    - parent.appendChild
    - <builtin>.isinstance
    - html5lib.treebuilders.base.TreeBuilder.createElement
    - html5lib.treebuilders.base.TreeBuilder.insertElementNormal
    - token.get
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.__init__
    - html5lib.treebuilders.base.TreeBuilder.getTableMisnestedNodePosition
    - infosetFilter.coerceElement
    - <builtin>.len
    - parent.insertBefore
    - builder.Element.__init__
    - html5lib.treebuilders.base.TreeBuilder.insertElementTable
    - entry.cloneNode
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entry.cloneNode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 334
    functionName: html5lib.treebuilders.base.TreeBuilder.insertElementTable
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 1
    functionsReached:
    - parent.appendChild
    - <builtin>.isinstance
    - html5lib.treebuilders.base.TreeBuilder.createElement
    - html5lib.treebuilders.base.TreeBuilder.insertElementNormal
    - token.get
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.__init__
    - html5lib.treebuilders.base.TreeBuilder.getTableMisnestedNodePosition
    - parent.insertBefore
    - builder.Element.__init__
    - infosetFilter.coerceElement
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 324
    functionName: html5lib.treebuilders.base.TreeBuilder.insertElementNormal
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - token.get
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.__init__
    - builder.Element.__init__
    - infosetFilter.coerceElement
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 265
    functionName: html5lib.treebuilders.base.TreeBuilder.clearActiveFormattingElements
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 270
    functionName: html5lib.treebuilders.base.TreeBuilder.elementInActiveFormattingElements
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 284
    functionName: html5lib.treebuilders.base.TreeBuilder.insertRoot
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached:
    - last.addnext
    - html5lib.treebuilders.base.TreeBuilder.createElement
    - html5lib.treebuilders.etree_lxml.Document.appendChild
    - token.get
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.__init__
    - builder.Element.__init__
    - infosetFilter.coerceElement
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 302
    functionName: html5lib.treebuilders.base.TreeBuilder.createElement
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 3
    functionsReached:
    - token.get
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.__init__
    - builder.Element.__init__
    - infosetFilter.coerceElement
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 289
    functionName: html5lib.treebuilders.base.TreeBuilder.insertDoctype
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached:
    - last.addnext
    - html5lib.treebuilders.etree_lxml.Document.appendChild
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44e4a58b0>
    argNames:
    - self
    - token
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 297
    functionName: html5lib.treebuilders.base.TreeBuilder.insertComment
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached:
    - html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment.__init__
    - infosetFilter.coerceComment
    - builder.Comment.__init__
    - parent.appendChild
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parent.appendChild
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 310
    functionName: html5lib.treebuilders.base.TreeBuilder._getInsertFromTable
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 313
    functionName: html5lib.treebuilders.base.TreeBuilder._setInsertFromTable
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treebuilders.base.TreeBuilder
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 365
    functionName: html5lib.treebuilders.base.TreeBuilder.getTableMisnestedNodePosition
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parent.insertText
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fb64700>
    argNames:
    - self
    - exclude
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 391
    functionName: html5lib.treebuilders.base.TreeBuilder.generateImpliedEndTags
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached:
    - <builtin>.frozenset
    - html5lib.treebuilders.base.TreeBuilder.generateImpliedEndTags
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 401
    functionName: html5lib.treebuilders.base.TreeBuilder.getDocument
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 412
    functionName: html5lib.treebuilders.base.TreeBuilder.testSerializer
    functionSourceFile: html5lib.treebuilders.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib._inputstream
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - re.compile
    - <builtin>.frozenset
    - <builtin>.eval
    - invalid_unicode_no_surrogate.count
    - item.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: item.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: invalid_unicode_no_surrogate.count
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 58
    functionName: html5lib._inputstream.BufferedStream.__init__
    functionSourceFile: html5lib._inputstream
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: html5lib._inputstream.BufferedStream.tell
    functionSourceFile: html5lib._inputstream
    functionUses: 10
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - pos
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 70
    functionName: html5lib._inputstream.BufferedStream.seek
    functionSourceFile: html5lib._inputstream
    functionUses: 14
    functionsReached:
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - <builtin>.len
    - <builtin>.sum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 88
    functionName: html5lib._inputstream.BufferedStream._bufferedBytes
    functionSourceFile: html5lib._inputstream
    functionUses: 15
    functionsReached:
    - <builtin>.len
    - <builtin>.sum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bytes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 79
    functionName: html5lib._inputstream.BufferedStream.read
    functionSourceFile: html5lib._inputstream
    functionUses: 88
    functionsReached:
    - html5lib._inputstream.BufferedStream._readStream
    - io.BytesIO.read
    - rv.append
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._inputstream.BufferedStream.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bytes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 91
    functionName: html5lib._inputstream.BufferedStream._readStream
    functionSourceFile: html5lib._inputstream
    functionUses: 88
    functionsReached:
    - html5lib._inputstream.BufferedStream._readStream
    - io.BytesIO.read
    - rv.append
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._inputstream.BufferedStream.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bytes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 98
    functionName: html5lib._inputstream.BufferedStream._readFromBuffer
    functionSourceFile: html5lib._inputstream
    functionUses: 88
    functionsReached:
    - html5lib._inputstream.BufferedStream._readStream
    - io.BytesIO.read
    - rv.append
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._inputstream.BufferedStream.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.sum
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO.read
    functionSourceFile: io
    functionUses: 89
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: source.read
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: x.endswith
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - source
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 158
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.__init__
    functionSourceFile: html5lib._inputstream
    functionUses: 8
    functionsReached:
    - <builtin>.len
    - io.BytesIO.tell
    - html5lib._inputstream.BufferedStream.tell
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - html5lib._inputstream.BufferedStream.seek
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - html5lib._inputstream.lookupEncoding
    - <builtin>.hasattr
    - encoding.decode
    - io.StringIO
    - <builtin>.isinstance
    - io.BytesIO
    - io.BytesIO.seek
    - webencodings.lookup
    - html5lib._inputstream.BufferedStream.__init__
    - html5lib._inputstream.HTMLBinaryInputStream.openStream
    - html5lib._inputstream.HTMLUnicodeInputStream.openStream
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - <builtin>.sum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fc44f60cdc0>
    - <ast.Constant object at 0x7fc44f60cd90>
    - <ast.Constant object at 0x7fc44f60cd60>
    - <ast.Constant object at 0x7fc44f60cd30>
    - <ast.Constant object at 0x7fc44f60cd00>
    - <ast.Constant object at 0x7fc44f60ccd0>
    argNames:
    - self
    - source
    - override_encoding
    - transport_encoding
    - same_origin_parent_encoding
    - likely_encoding
    - default_encoding
    - useChardet
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 386
    functionName: html5lib._inputstream.HTMLBinaryInputStream.__init__
    functionSourceFile: html5lib._inputstream
    functionUses: 7
    functionsReached:
    - chardet.universaldetector.UniversalDetector.feed
    - chardet.universaldetector.UniversalDetector.close
    - html5lib._inputstream.HTMLUnicodeInputStream.__init__
    - <builtin>.len
    - io.BytesIO.tell
    - html5lib._inputstream.BufferedStream.tell
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - chardet.universaldetector.UniversalDetector
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._inputstream.BufferedStream.seek
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - io.BytesIO.read
    - html5lib._inputstream.lookupEncoding
    - buffers.append
    - html5lib._inputstream.EncodingBytes.__iter__
    - <builtin>.hasattr
    - encoding.decode
    - io.StringIO
    - <builtin>.isinstance
    - html5lib._inputstream.BufferedStream._readStream
    - io.BytesIO.seek
    - io.BytesIO
    - rv.append
    - html5lib._inputstream.EncodingParser.getEncoding
    - webencodings.lookup
    - html5lib._inputstream.BufferedStream.read
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    - html5lib._inputstream.BufferedStream.__init__
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._inputstream.HTMLBinaryInputStream.determineEncoding
    - html5lib._inputstream.HTMLBinaryInputStream.openStream
    - html5lib._inputstream.HTMLUnicodeInputStream.openStream
    - html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._inputstream.EncodingBytes.jumpTo
    - bomDict.get
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - <builtin>.sum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - encoding
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 903
    functionName: html5lib._inputstream.lookupEncoding
    functionSourceFile: html5lib._inputstream
    functionUses: 14
    functionsReached:
    - <builtin>.isinstance
    - encoding.decode
    - webencodings.lookup
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - source
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 432
    functionName: html5lib._inputstream.HTMLBinaryInputStream.openStream
    functionSourceFile: html5lib._inputstream
    functionUses: 9
    functionsReached:
    - io.BytesIO.seek
    - io.BytesIO
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - io.BytesIO.tell
    - html5lib._inputstream.BufferedStream.tell
    - <builtin>.hasattr
    - <builtin>.sum
    - html5lib._inputstream.BufferedStream.seek
    - html5lib._inputstream.BufferedStream.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - source
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 204
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.openStream
    functionSourceFile: html5lib._inputstream
    functionUses: 9
    functionsReached:
    - io.StringIO
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 428
    functionName: html5lib._inputstream.HTMLBinaryInputStream.reset
    functionSourceFile: html5lib._inputstream
    functionUses: 10
    functionsReached:
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 190
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.reset
    functionSourceFile: ''
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.StringIO
    functionSourceFile: io
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - offset
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 218
    functionName: html5lib._inputstream.HTMLUnicodeInputStream._position
    functionSourceFile: html5lib._inputstream
    functionUses: 82
    functionsReached:
    - chunk.count
    - chunk.rfind
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chunk.count
    functionSourceFile: <builtin>
    functionUses: 83
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chunk.rfind
    functionSourceFile: <builtin>
    functionUses: 83
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fb573d0>
    argNames:
    - self
    - chunkSize
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 249
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.readChunk
    functionSourceFile: html5lib._inputstream
    functionUses: 79
    functionsReached:
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    - <builtin>.ord
    - html5lib._inputstream.HTMLUnicodeInputStream._position
    - io.BytesIO.read
    - data.replace
    - html5lib._utils.isSurrogatePair
    - match.start
    - html5lib._inputstream.BufferedStream._readStream
    - html5lib._utils.surrogatePairToCodepoint
    - rv.append
    - chunk.rfind
    - invalid_unicode_re.finditer
    - html5lib._inputstream.BufferedStream.read
    - invalid_unicode_re.findall
    - io.StringIO.read
    - <builtin>.range
    - chunk.count
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.StringIO.read
    functionSourceFile: io
    functionUses: 80
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 291
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2
    functionSourceFile: html5lib._inputstream
    functionUses: 80
    functionsReached:
    - <builtin>.ord
    - html5lib._utils.surrogatePairToCodepoint
    - <builtin>.len
    - html5lib._utils.isSurrogatePair
    - invalid_unicode_re.finditer
    - match.group
    - match.start
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 287
    functionName: html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4
    functionSourceFile: html5lib._inputstream
    functionUses: 80
    functionsReached:
    - <builtin>.len
    - <builtin>.range
    - invalid_unicode_re.findall
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: invalid_unicode_re.findall
    functionSourceFile: <builtin>
    functionUses: 81
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: invalid_unicode_re.finditer
    functionSourceFile: <builtin>
    functionUses: 81
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.group
    functionSourceFile: <builtin>
    functionUses: 83
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.start
    functionSourceFile: <builtin>
    functionUses: 81
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chars.match
    functionSourceFile: <builtin>
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: m.end
    functionSourceFile: <builtin>
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 4
    IfCount: 10
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc44f610400>
    argNames:
    - self
    - chardet
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 451
    functionName: html5lib._inputstream.HTMLBinaryInputStream.determineEncoding
    functionSourceFile: html5lib._inputstream
    functionUses: 8
    functionsReached:
    - chardet.universaldetector.UniversalDetector.feed
    - chardet.universaldetector.UniversalDetector.close
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - chardet.universaldetector.UniversalDetector
    - html5lib._inputstream.BufferedStream.seek
    - html5lib._inputstream.EncodingBytes.__init__
    - io.BytesIO.read
    - html5lib._inputstream.lookupEncoding
    - buffers.append
    - html5lib._inputstream.EncodingBytes.__iter__
    - encoding.decode
    - html5lib._inputstream.BufferedStream._readStream
    - <builtin>.isinstance
    - io.BytesIO.seek
    - rv.append
    - html5lib._inputstream.EncodingParser.getEncoding
    - webencodings.lookup
    - html5lib._inputstream.BufferedStream.read
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._inputstream.EncodingBytes.jumpTo
    - bomDict.get
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - <builtin>.sum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO
    functionSourceFile: io
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO.tell
    functionSourceFile: io
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO.seek
    functionSourceFile: io
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 529
    functionName: html5lib._inputstream.HTMLBinaryInputStream.detectBOM
    functionSourceFile: html5lib._inputstream
    functionUses: 9
    functionsReached:
    - html5lib._inputstream.BufferedStream._readStream
    - <builtin>.isinstance
    - io.BytesIO.read
    - io.BytesIO.seek
    - html5lib._inputstream.lookupEncoding
    - rv.append
    - <builtin>.len
    - bomDict.get
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - <builtin>.sum
    - webencodings.lookup
    - html5lib._inputstream.BufferedStream.seek
    - html5lib._inputstream.BufferedStream.read
    - encoding.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 563
    functionName: html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta
    functionSourceFile: html5lib._inputstream
    functionUses: 9
    functionsReached:
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._readFromBuffer
    - html5lib._inputstream.BufferedStream.seek
    - html5lib._inputstream.EncodingBytes.__init__
    - io.BytesIO.read
    - html5lib._inputstream.lookupEncoding
    - html5lib._inputstream.EncodingBytes.__iter__
    - encoding.decode
    - html5lib._inputstream.BufferedStream._readStream
    - <builtin>.isinstance
    - io.BytesIO.seek
    - rv.append
    - html5lib._inputstream.EncodingParser.getEncoding
    - webencodings.lookup
    - html5lib._inputstream.BufferedStream.read
    - html5lib._inputstream.EncodingParser.__init__
    - html5lib._inputstream.EncodingBytes.matchBytes
    - html5lib._inputstream.EncodingBytes.__next__
    - html5lib._inputstream.EncodingBytes.jumpTo
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - <builtin>.sum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chardet.universaldetector.UniversalDetector
    functionSourceFile: chardet
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: buffers.append
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chardet.universaldetector.UniversalDetector.feed
    functionSourceFile: chardet
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chardet.universaldetector.UniversalDetector.close
    functionSourceFile: chardet
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - newEncoding
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 513
    functionName: html5lib._inputstream.HTMLBinaryInputStream.changeEncoding
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - html5lib._inputstream.HTMLUnicodeInputStream.reset
    - io.BytesIO.seek
    - html5lib._inputstream.lookupEncoding
    - <builtin>.len
    - html5lib._inputstream.BufferedStream._bufferedBytes
    - html5lib._inputstream.HTMLBinaryInputStream.reset
    - <builtin>.sum
    - webencodings.lookup
    - html5lib._inputstream.BufferedStream.seek
    - encoding.decode
    linkageType: pythonLinkage
    raised:
    - _ReparseException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: bomDict.get
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 679
    functionName: html5lib._inputstream.EncodingParser.__init__
    functionSourceFile: html5lib._inputstream
    functionUses: 10
    functionsReached:
    - html5lib._inputstream.EncodingBytes.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 684
    functionName: html5lib._inputstream.EncodingParser.getEncoding
    functionSourceFile: html5lib._inputstream
    functionUses: 10
    functionsReached:
    - html5lib._inputstream.EncodingBytes.__next__
    - <builtin>.len
    - html5lib._inputstream.EncodingBytes.jumpTo
    - html5lib._inputstream.EncodingBytes.__iter__
    - html5lib._inputstream.EncodingBytes.matchBytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 582
    functionName: html5lib._inputstream.EncodingBytes.__new__
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - bytes.__new__
    - value.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.lower
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: bytes.__new__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 590
    functionName: html5lib._inputstream.EncodingBytes.__iter__
    functionSourceFile: html5lib._inputstream
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 593
    functionName: html5lib._inputstream.EncodingBytes.__next__
    functionSourceFile: html5lib._inputstream
    functionUses: 12
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 601
    functionName: html5lib._inputstream.EncodingBytes.next
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - html5lib._inputstream.EncodingBytes.__next__
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 605
    functionName: html5lib._inputstream.EncodingBytes.previous
    functionSourceFile: html5lib._inputstream
    functionUses: 5
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - position
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 614
    functionName: html5lib._inputstream.EncodingBytes.setPosition
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 619
    functionName: html5lib._inputstream.EncodingBytes.getPosition
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib._inputstream.EncodingBytes
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 629
    functionName: html5lib._inputstream.EncodingBytes.getCurrentByte
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7fc44e4149d0>
    argNames:
    - self
    - chars
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 634
    functionName: html5lib._inputstream.EncodingBytes.skip
    functionSourceFile: html5lib._inputstream
    functionUses: 7
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - chars
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 646
    functionName: html5lib._inputstream.EncodingBytes.skipUntil
    functionSourceFile: html5lib._inputstream
    functionUses: 6
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bytes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 657
    functionName: html5lib._inputstream.EncodingBytes.matchBytes
    functionSourceFile: html5lib._inputstream
    functionUses: 11
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bytes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 666
    functionName: html5lib._inputstream.EncodingBytes.jumpTo
    functionSourceFile: html5lib._inputstream
    functionUses: 19
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 714
    functionName: html5lib._inputstream.EncodingParser.handleComment
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - html5lib._inputstream.EncodingBytes.jumpTo
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 0
    IfCount: 10
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 718
    functionName: html5lib._inputstream.EncodingParser.handleMeta
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - html5lib._inputstream.EncodingBytes.__init__
    - html5lib._inputstream.EncodingBytes.previous
    - <builtin>.next
    - html5lib._inputstream.ContentAttrParser.parse
    - html5lib._inputstream.EncodingBytes.skipUntil
    - html5lib._inputstream.lookupEncoding
    - c.lower
    - attrName.append
    - html5lib._inputstream.EncodingBytes.skip
    - <builtin>.len
    - <builtin>.frozenset
    - html5lib._inputstream.EncodingParser.getAttribute
    - html5lib._inputstream.EncodingBytes.jumpTo
    - html5lib._inputstream.ContentAttrParser.__init__
    - attrValue.append
    - webencodings.lookup
    - encoding.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 12
    IfCount: 16
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 787
    functionName: html5lib._inputstream.EncodingParser.getAttribute
    functionSourceFile: html5lib._inputstream
    functionUses: 4
    functionsReached:
    - html5lib._inputstream.EncodingBytes.previous
    - <builtin>.next
    - c.lower
    - attrName.append
    - html5lib._inputstream.EncodingBytes.skip
    - <builtin>.len
    - <builtin>.frozenset
    - attrValue.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 754
    functionName: html5lib._inputstream.EncodingParser.handlePossibleStartTag
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - html5lib._inputstream.EncodingBytes.previous
    - html5lib._inputstream.EncodingParser.handlePossibleTag
    - html5lib._inputstream.EncodingParser.handleOther
    - <builtin>.next
    - html5lib._inputstream.EncodingBytes.skipUntil
    - c.lower
    - attrName.append
    - <builtin>.len
    - html5lib._inputstream.EncodingBytes.skip
    - <builtin>.frozenset
    - html5lib._inputstream.EncodingParser.getAttribute
    - html5lib._inputstream.EncodingBytes.jumpTo
    - attrValue.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - endTag
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 761
    functionName: html5lib._inputstream.EncodingParser.handlePossibleTag
    functionSourceFile: html5lib._inputstream
    functionUses: 2
    functionsReached:
    - html5lib._inputstream.EncodingBytes.previous
    - html5lib._inputstream.EncodingParser.handleOther
    - <builtin>.next
    - html5lib._inputstream.EncodingBytes.skipUntil
    - c.lower
    - attrName.append
    - <builtin>.len
    - html5lib._inputstream.EncodingBytes.skip
    - <builtin>.frozenset
    - html5lib._inputstream.EncodingParser.getAttribute
    - html5lib._inputstream.EncodingBytes.jumpTo
    - attrValue.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 757
    functionName: html5lib._inputstream.EncodingParser.handlePossibleEndTag
    functionSourceFile: html5lib._inputstream
    functionUses: 0
    functionsReached:
    - html5lib._inputstream.EncodingBytes.previous
    - html5lib._inputstream.EncodingParser.handlePossibleTag
    - html5lib._inputstream.EncodingParser.handleOther
    - <builtin>.next
    - html5lib._inputstream.EncodingBytes.skipUntil
    - c.lower
    - attrName.append
    - html5lib._inputstream.EncodingBytes.skip
    - <builtin>.len
    - <builtin>.frozenset
    - html5lib._inputstream.EncodingParser.getAttribute
    - html5lib._inputstream.EncodingBytes.jumpTo
    - attrValue.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 784
    functionName: html5lib._inputstream.EncodingParser.handleOther
    functionSourceFile: html5lib._inputstream
    functionUses: 3
    functionsReached:
    - <builtin>.len
    - html5lib._inputstream.EncodingBytes.jumpTo
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attrName.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attrValue.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: encoding.decode
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: webencodings.lookup
    functionSourceFile: webencodings
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: html5lib.serializer
    functionSourceFile: html5lib.serializer
    functionUses: 0
    functionsReached:
    - re.compile
    - codecs.register_error
    - <builtin>.ord
    - k.islower
    - html5lib._utils.surrogatePairToCodepoint
    - entities.items
    - <builtin>.len
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entities.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: k.islower
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 5
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - exc
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 42
    functionName: html5lib.serializer.htmlentityreplace_errors
    functionSourceFile: html5lib.serializer
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.ord
    - html5lib._utils.surrogatePairToCodepoint
    - _encode_entity_map.get
    - <builtin>.min
    - <builtin>.len
    - html5lib._utils.isSurrogatePair
    - e.endswith
    - codecs.xmlcharrefreplace_errors
    - <builtin>.hex
    - <builtin>.enumerate
    - res.append
    - codepoints.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.enumerate
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.min
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: codepoints.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _encode_entity_map.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: res.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: e.endswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hex
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: codecs.xmlcharrefreplace_errors
    functionSourceFile: codecs
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: codecs.register_error
    functionSourceFile: codecs
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc450a34b20>
    - <ast.Constant object at 0x7fc450a34dc0>
    argNames:
    - input
    - tree
    - encoding
    - serializer_opts
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 75
    functionName: html5lib.serializer.serialize
    functionSourceFile: html5lib.serializer
    functionUses: 0
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - data.find
    - <builtin>.tuple
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - v.replace
    - <builtin>.len
    - booleanAttributes.get
    - kwargs.get
    - html5lib.filters.whitespace.Filter.__iter__
    - SPACES_REGEX.sub
    - html5lib.serializer.HTMLSerializer.encode
    - html5lib.filters.base.Filter.__init__
    - <builtin>.super
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - html5lib.serializer.HTMLSerializer.render
    - xml.sax.saxutils.unescape
    - prop.split
    - _quoteAttributeSpec.search
    - prop.lower
    - html5lib.filters.sanitizer.Filter.allowed_token
    - <builtin>.list
    - <builtin>.sorted
    - html5lib.filters.optionaltags.Filter.slider
    - <builtin>.getattr
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - clean.append
    - html5lib.serializer.HTMLSerializer.serialize
    - html5lib.treewalkers.getTreeWalker
    - <builtin>.isinstance
    - <builtin>.iter
    - pending.append
    - name.lower
    - re.sub
    - token.get
    - html5lib.filters.sanitizer.Filter.__init__
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - html5lib.serializer.HTMLSerializer.encodeStrict
    - treeWalkerCache.get
    - m.group
    - xml.sax.saxutils.escape
    - treeType.lower
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.inject_meta_charset.Filter.__init__
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - collections.OrderedDict.items
    - data_content_type.match
    - html5lib.serializer.HTMLSerializer.serializeError
    - xml.sax.saxutils.escape.encode
    - _quoteAttributeLegacy.search
    - <builtin>.frozenset
    - string.encode
    - collections.OrderedDict.keys
    - re.search
    - <builtin>.setattr
    - warnings.warn
    - html5lib.serializer.HTMLSerializer.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fe36400>
    argNames:
    - treeType
    - implementation
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 21
    functionName: html5lib.treewalkers.getTreeWalker
    functionSourceFile: html5lib.treewalkers
    functionUses: 1
    functionsReached:
    - treeType.lower
    - treeWalkerCache.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 135
    functionName: html5lib.serializer.HTMLSerializer.__init__
    functionSourceFile: html5lib.serializer
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - <builtin>.frozenset
    - <builtin>.setattr
    - kwargs.get
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44f9a5340>
    argNames:
    - self
    - treewalker
    - encoding
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 375
    functionName: html5lib.serializer.HTMLSerializer.render
    functionSourceFile: html5lib.serializer
    functionUses: 1
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - data.find
    - <builtin>.tuple
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - v.replace
    - <builtin>.len
    - booleanAttributes.get
    - SPACES_REGEX.sub
    - html5lib.filters.whitespace.Filter.__iter__
    - html5lib.serializer.HTMLSerializer.encode
    - html5lib.filters.base.Filter.__init__
    - <builtin>.super
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - xml.sax.saxutils.unescape
    - prop.split
    - _quoteAttributeSpec.search
    - prop.lower
    - <builtin>.list
    - <builtin>.sorted
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - clean.append
    - html5lib.serializer.HTMLSerializer.serialize
    - pending.append
    - <builtin>.isinstance
    - <builtin>.iter
    - name.lower
    - re.sub
    - token.get
    - html5lib.filters.sanitizer.Filter.__init__
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - html5lib.serializer.HTMLSerializer.encodeStrict
    - m.group
    - xml.sax.saxutils.escape
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - html5lib.filters.inject_meta_charset.Filter.__init__
    - collections.OrderedDict.items
    - data_content_type.match
    - html5lib.filters.optionaltags.Filter.slider
    - html5lib.serializer.HTMLSerializer.serializeError
    - xml.sax.saxutils.escape.encode
    - _quoteAttributeLegacy.search
    - string.encode
    - collections.OrderedDict.keys
    - re.search
    - warnings.warn
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.getattr
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.setattr
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 224
    functionName: html5lib.serializer.HTMLSerializer.encode
    functionSourceFile: html5lib.serializer
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - xml.sax.saxutils.escape.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.sax.saxutils.escape.encode
    functionSourceFile: xml
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 231
    functionName: html5lib.serializer.HTMLSerializer.encodeStrict
    functionSourceFile: html5lib.serializer
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - string.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.encode
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 37
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 53
    ICount: 24
    IfCount: 37
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fb57f10>
    argNames:
    - self
    - treewalker
    - encoding
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 238
    functionName: html5lib.serializer.HTMLSerializer.serialize
    functionSourceFile: html5lib.serializer
    functionUses: 2
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - data.find
    - <builtin>.tuple
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - v.replace
    - <builtin>.len
    - booleanAttributes.get
    - SPACES_REGEX.sub
    - html5lib.filters.whitespace.Filter.__iter__
    - html5lib.serializer.HTMLSerializer.encode
    - html5lib.filters.base.Filter.__init__
    - <builtin>.super
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - xml.sax.saxutils.unescape
    - prop.split
    - _quoteAttributeSpec.search
    - prop.lower
    - <builtin>.sorted
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - re.sub
    - pending.append
    - clean.append
    - <builtin>.isinstance
    - <builtin>.iter
    - name.lower
    - token.get
    - html5lib.filters.sanitizer.Filter.__init__
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - html5lib.serializer.HTMLSerializer.encodeStrict
    - m.group
    - xml.sax.saxutils.escape
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - html5lib.filters.inject_meta_charset.Filter.__init__
    - collections.OrderedDict.items
    - data_content_type.match
    - html5lib.filters.optionaltags.Filter.slider
    - html5lib.serializer.HTMLSerializer.serializeError
    - xml.sax.saxutils.escape.encode
    - _quoteAttributeLegacy.search
    - string.encode
    - collections.OrderedDict.keys
    - re.search
    - warnings.warn
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - source
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 5
    functionName: html5lib.filters.base.Filter.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 12
    argDefaultValues:
    - <ast.Name object at 0x7fc44f8d00a0>
    - <ast.Name object at 0x7fc44f8d0070>
    - <ast.Name object at 0x7fc44f8d0040>
    - <ast.Name object at 0x7fc44f8f7fd0>
    - <ast.Name object at 0x7fc44f8f7fa0>
    - <ast.Name object at 0x7fc44f8f7f70>
    - <ast.Name object at 0x7fc44f8f7f40>
    - <ast.Name object at 0x7fc44f8f7f10>
    - <ast.Name object at 0x7fc44f8f7ee0>
    - <ast.Name object at 0x7fc44f8f7eb0>
    argNames:
    - self
    - source
    - allowed_elements
    - allowed_attributes
    - allowed_css_properties
    - allowed_css_keywords
    - allowed_svg_properties
    - allowed_protocols
    - allowed_content_types
    - attr_val_is_uri
    - svg_attr_val_allows_ref
    - svg_allow_local_href
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 734
    functionName: html5lib.filters.sanitizer.Filter.__init__
    functionSourceFile: html5lib.filters.sanitizer
    functionUses: 3
    functionsReached:
    - warnings.warn
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - source
    - encoding
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 8
    functionName: html5lib.filters.inject_meta_charset.Filter.__init__
    functionSourceFile: html5lib.filters.inject_meta_charset
    functionUses: 3
    functionsReached:
    - html5lib.filters.base.Filter.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 18
    functionName: html5lib.filters.optionaltags.Filter.__iter__
    functionSourceFile: html5lib.filters.optionaltags
    functionUses: 9
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - SPACES_REGEX.sub
    - html5lib.filters.whitespace.Filter.__iter__
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - xml.sax.saxutils.unescape
    - prop.split
    - prop.lower
    - <builtin>.sorted
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - clean.append
    - pending.append
    - re.sub
    - name.lower
    - <builtin>.iter
    - token.get
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - m.group
    - xml.sax.saxutils.escape
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.slider
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - collections.OrderedDict.items
    - data_content_type.match
    - collections.OrderedDict.keys
    - re.search
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 792
    functionName: html5lib.filters.sanitizer.Filter.__iter__
    functionSourceFile: html5lib.filters.sanitizer
    functionUses: 9
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - SPACES_REGEX.sub
    - html5lib.filters.whitespace.Filter.__iter__
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - xml.sax.saxutils.unescape
    - prop.split
    - prop.lower
    - <builtin>.sorted
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - re.sub
    - pending.append
    - clean.append
    - <builtin>.iter
    - name.lower
    - token.get
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - m.group
    - xml.sax.saxutils.escape
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.optionaltags.Filter.slider
    - collections.OrderedDict.items
    - data_content_type.match
    - collections.OrderedDict.keys
    - re.search
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 16
    functionName: html5lib.filters.whitespace.Filter.__iter__
    functionSourceFile: html5lib.filters.whitespace
    functionUses: 9
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - SPACES_REGEX.sub
    - html5lib.filters.whitespace.Filter.__iter__
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - xml.sax.saxutils.unescape
    - prop.split
    - prop.lower
    - <builtin>.sorted
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - re.sub
    - pending.append
    - clean.append
    - <builtin>.iter
    - name.lower
    - token.get
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - m.group
    - xml.sax.saxutils.escape
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - data_content_type.match
    - collections.OrderedDict.items
    - html5lib.filters.optionaltags.Filter.slider
    - collections.OrderedDict.keys
    - re.search
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 8
    IfCount: 12
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 19
    functionName: html5lib.filters.inject_meta_charset.Filter.__iter__
    functionSourceFile: html5lib.filters.inject_meta_charset
    functionUses: 9
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - SPACES_REGEX.sub
    - html5lib.filters.whitespace.Filter.__iter__
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - xml.sax.saxutils.unescape
    - prop.split
    - prop.lower
    - <builtin>.sorted
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - clean.append
    - pending.append
    - re.sub
    - <builtin>.iter
    - name.lower
    - token.get
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - m.group
    - xml.sax.saxutils.escape
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - data_content_type.match
    - collections.OrderedDict.items
    - html5lib.filters.optionaltags.Filter.slider
    - collections.OrderedDict.keys
    - re.search
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 21
    functionName: html5lib.filters.alphabeticalattributes.Filter.__iter__
    functionSourceFile: html5lib.filters.alphabeticalattributes
    functionUses: 9
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - SPACES_REGEX.sub
    - html5lib.filters.whitespace.Filter.__iter__
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - xml.sax.saxutils.unescape
    - prop.split
    - prop.lower
    - <builtin>.sorted
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - clean.append
    - pending.append
    - re.sub
    - <builtin>.iter
    - name.lower
    - token.get
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - m.group
    - xml.sax.saxutils.escape
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - html5lib.filters.optionaltags.Filter.slider
    - collections.OrderedDict.items
    - data_content_type.match
    - collections.OrderedDict.keys
    - re.search
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fc44f994cd0>
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 400
    functionName: html5lib.serializer.HTMLSerializer.serializeError
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.sax.saxutils.escape
    functionSourceFile: xml
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: booleanAttributes.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _quoteAttributeSpec.search
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _quoteAttributeLegacy.search
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: v.replace
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.find
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.filters.alphabeticalattributes
    functionSourceFile: html5lib.filters.alphabeticalattributes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - attr
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 8
    functionName: html5lib.filters.alphabeticalattributes._attr_key
    functionSourceFile: html5lib.filters.alphabeticalattributes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 8
    functionName: html5lib.filters.base.Filter.__iter__
    functionSourceFile: html5lib.filters.base
    functionUses: 10
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.OrderedDict.items
    functionSourceFile: collections
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.filters
    functionSourceFile: html5lib.filters
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.filters.inject_meta_charset
    functionSourceFile: html5lib.filters.inject_meta_charset
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.lower
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pending.pop
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pending.append
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.filters.base
    functionSourceFile: html5lib.filters.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 11
    functionName: html5lib.filters.base.Filter.__getattr__
    functionSourceFile: html5lib.filters.base
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.filters.sanitizer
    functionSourceFile: html5lib.filters.sanitizer
    functionUses: 0
    functionsReached:
    - warnings.warn
    - re.compile
    - <builtin>.frozenset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 809
    functionName: html5lib.filters.sanitizer.Filter.sanitize_token
    functionSourceFile: html5lib.filters.sanitizer
    functionUses: 10
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - re.match
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - xml.sax.saxutils.unescape
    - prop.split
    - prop.lower
    - clean.append
    - re.sub
    - token.get
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - m.group
    - xml.sax.saxutils.escape
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - data_content_type.match
    - collections.OrderedDict.items
    - collections.OrderedDict.keys
    - re.search
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 1
    IfCount: 9
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 827
    functionName: html5lib.filters.sanitizer.Filter.allowed_token
    functionSourceFile: html5lib.filters.sanitizer
    functionUses: 11
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - six.moves.urllib_parse.urlparse
    - data_content_type.match
    - re.compile
    - value.split
    - re.match
    - xml.sax.saxutils.unescape
    - prop.split
    - attr_names.remove
    - collections.OrderedDict.keys
    - re.search
    - prop.lower
    - val_unescaped.replace
    - re.findall
    - re.sub
    - <builtin>.set
    - m.group
    - clean.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 877
    functionName: html5lib.filters.sanitizer.Filter.disallowed_token
    functionSourceFile: html5lib.filters.sanitizer
    functionUses: 11
    functionsReached:
    - attrs.append
    - xml.sax.saxutils.escape
    - collections.OrderedDict.items
    - token.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.OrderedDict.keys
    functionSourceFile: collections
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attr_names.remove
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.sax.saxutils.unescape
    functionSourceFile: xml
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.sub
    functionSourceFile: re
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: val_unescaped.replace
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: six.moves.urllib_parse.urlparse
    functionSourceFile: six
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data_content_type.match
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: m.group
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.search
    functionSourceFile: re
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 2
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - style
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 897
    functionName: html5lib.filters.sanitizer.Filter.sanitize_css
    functionSourceFile: html5lib.filters.sanitizer
    functionUses: 12
    functionsReached:
    - re.compile
    - value.split
    - re.match
    - prop.split
    - prop.lower
    - re.findall
    - clean.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attrs.append
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.match
    functionSourceFile: re
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.findall
    functionSourceFile: re
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: prop.lower
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: clean.append
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: prop.split
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.split
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.filters.optionaltags
    functionSourceFile: html5lib.filters.optionaltags
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 8
    functionName: html5lib.filters.optionaltags.Filter.slider
    functionSourceFile: html5lib.filters.optionaltags
    functionUses: 9
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - SPACES_REGEX.sub
    - html5lib.filters.whitespace.Filter.__iter__
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - xml.sax.saxutils.unescape
    - prop.split
    - prop.lower
    - <builtin>.sorted
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - clean.append
    - pending.append
    - re.sub
    - <builtin>.iter
    - name.lower
    - token.get
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - m.group
    - xml.sax.saxutils.escape
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - data_content_type.match
    - collections.OrderedDict.items
    - html5lib.filters.optionaltags.Filter.slider
    - collections.OrderedDict.keys
    - re.search
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 0
    IfCount: 12
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tagname
    - previous
    - next
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 31
    functionName: html5lib.filters.optionaltags.Filter.is_optional_start
    functionSourceFile: ''
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 22
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 32
    ICount: 0
    IfCount: 22
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tagname
    - next
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 88
    functionName: html5lib.filters.optionaltags.Filter.is_optional_end
    functionSourceFile: ''
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.filters.whitespace
    functionSourceFile: html5lib.filters.whitespace
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.filters.whitespace.Filter
    functionSourceFile: html5lib.filters.whitespace
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.frozenset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - text
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 37
    functionName: html5lib.filters.whitespace.collapse_spaces
    functionSourceFile: html5lib.filters.whitespace
    functionUses: 10
    functionsReached:
    - SPACES_REGEX.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: SPACES_REGEX.sub
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.treewalkers
    functionSourceFile: html5lib.treewalkers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: treeWalkerCache.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - tokens
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: html5lib.treewalkers.concatenateCharacterTokens
    functionSourceFile: html5lib.treewalkers
    functionUses: 1
    functionsReached:
    - pendingCharacters.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pendingCharacters.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 21
    ICount: 9
    IfCount: 14
    argCount: 1
    argDefaultValues: []
    argNames:
    - walker
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 80
    functionName: html5lib.treewalkers.pprint
    functionSourceFile: html5lib.treewalkers
    functionUses: 0
    functionsReached:
    - pendingCharacters.append
    - attrs.items
    - html5lib.treewalkers.concatenateCharacterTokens
    - <builtin>.sorted
    - output.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: output.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attrs.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treewalkers.etree
    functionSourceFile: html5lib.treewalkers.etree
    functionUses: 0
    functionsReached:
    - re.compile
    - html5lib._utils.moduleFactoryFactory
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: html5lib.treewalkers.etree.getETreeBuilder.TreeWalker.getNodeDetails
    functionSourceFile: html5lib.treewalkers.etree
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - collections.OrderedDict
    - match.groups
    - tag_regexp.match
    - <builtin>.len
    - node.get
    - node.attrib.items
    - <builtin>.hasattr
    - <builtin>.list
    - match.group
    - <builtin>.type
    - <builtin>.getattr
    - node.getroot
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.getroot
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.groups
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.attrib.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: html5lib.treewalkers.etree.getETreeBuilder.TreeWalker.getFirstChild
    functionSourceFile: html5lib.treewalkers.etree
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - parents.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parents.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 89
    functionName: html5lib.treewalkers.etree.getETreeBuilder.TreeWalker.getNextSibling
    functionSourceFile: html5lib.treewalkers.etree
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - parents.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 109
    functionName: html5lib.treewalkers.etree.getETreeBuilder.TreeWalker.getParentNode
    functionSourceFile: html5lib.treewalkers.etree
    functionUses: 0
    functionsReached:
    - parents.pop
    - <builtin>.isinstance
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parents.pop
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.treewalkers.dom
    functionSourceFile: html5lib.treewalkers.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 9
    functionName: html5lib.treewalkers.dom.TreeWalker.getNodeDetails
    functionSourceFile: html5lib.treewalkers.dom
    functionUses: 0
    functionsReached:
    - node.attributes.keys
    - node.getAttributeNode
    - <builtin>.list
    - node.hasChildNodes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.attributes.keys
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.getAttributeNode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.hasChildNodes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: html5lib.treewalkers.dom.TreeWalker.getFirstChild
    functionSourceFile: html5lib.treewalkers.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 39
    functionName: html5lib.treewalkers.dom.TreeWalker.getNextSibling
    functionSourceFile: html5lib.treewalkers.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: html5lib.treewalkers.dom.TreeWalker.getParentNode
    functionSourceFile: html5lib.treewalkers.dom
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.treewalkers.base
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tree
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 27
    functionName: html5lib.treewalkers.base.TreeWalker.__init__
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 35
    functionName: html5lib.treewalkers.base.TreeWalker.__iter__
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 38
    functionName: html5lib.treewalkers.base.TreeWalker.error
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fc44f8cbfa0>
    argNames:
    - self
    - namespace
    - name
    - attrs
    - hasChildren
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: html5lib.treewalkers.base.TreeWalker.emptyTag
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 3
    functionsReached:
    - html5lib.treewalkers.base.TreeWalker.error
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - namespace
    - name
    - attrs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 69
    functionName: html5lib.treewalkers.base.TreeWalker.startTag
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - namespace
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 86
    functionName: html5lib.treewalkers.base.TreeWalker.endTag
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: html5lib.treewalkers.base.TreeWalker.text
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 3
    functionsReached:
    - data.rstrip
    - data.lstrip
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.lstrip
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.rstrip
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 138
    functionName: html5lib.treewalkers.base.TreeWalker.comment
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fc44fa86c70>
    - <ast.Constant object at 0x7fc44fa866a0>
    argNames:
    - self
    - name
    - publicId
    - systemId
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 148
    functionName: html5lib.treewalkers.base.TreeWalker.doctype
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 165
    functionName: html5lib.treewalkers.base.TreeWalker.entity
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - nodeType
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 175
    functionName: html5lib.treewalkers.base.TreeWalker.unknown
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 3
    functionsReached:
    - html5lib.treewalkers.base.TreeWalker.error
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 181
    functionName: html5lib.treewalkers.base.NonRecursiveTreeWalker.getNodeDetails
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 184
    functionName: html5lib.treewalkers.base.NonRecursiveTreeWalker.getFirstChild
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 187
    functionName: html5lib.treewalkers.base.NonRecursiveTreeWalker.getNextSibling
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 190
    functionName: html5lib.treewalkers.base.NonRecursiveTreeWalker.getParentNode
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 8
    IfCount: 13
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 193
    functionName: html5lib.treewalkers.base.NonRecursiveTreeWalker.__iter__
    functionSourceFile: html5lib.treewalkers.base
    functionUses: 0
    functionsReached:
    - html5lib.treewalkers.base.TreeWalker.doctype
    - html5lib.treewalkers.base.TreeWalker.comment
    - data.lstrip
    - html5lib.treewalkers.base.NonRecursiveTreeWalker.getNodeDetails
    - html5lib.treewalkers.base.TreeWalker.text
    - <builtin>.len
    - html5lib.treewalkers.base.TreeWalker.error
    - html5lib.treewalkers.base.TreeWalker.entity
    - html5lib.treewalkers.base.TreeWalker.emptyTag
    - html5lib.treewalkers.base.TreeWalker.endTag
    - html5lib.treewalkers.base.TreeWalker.unknown
    - html5lib.treewalkers.base.TreeWalker.startTag
    - data.rstrip
    - html5lib.treewalkers.base.NonRecursiveTreeWalker.getNextSibling
    - html5lib.treewalkers.base.NonRecursiveTreeWalker.getParentNode
    - html5lib.treewalkers.base.NonRecursiveTreeWalker.getFirstChild
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.treewalkers.genshi
    functionSourceFile: html5lib.treewalkers.genshi
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 13
    functionName: html5lib.treewalkers.genshi.TreeWalker.__iter__
    functionSourceFile: html5lib.treewalkers.genshi
    functionUses: 0
    functionsReached:
    - html5lib.treewalkers.base.TreeWalker.doctype
    - <builtin>.isinstance
    - html5lib.treewalkers.base.TreeWalker.comment
    - data.lstrip
    - <builtin>.len
    - html5lib.treewalkers.base.TreeWalker.text
    - html5lib.treewalkers.base.TreeWalker.error
    - html5lib.treewalkers.genshi.TreeWalker.tokens
    - html5lib.treewalkers.base.TreeWalker.emptyTag
    - html5lib.treewalkers.base.TreeWalker.endTag
    - html5lib.treewalkers.base.TreeWalker.unknown
    - data.rstrip
    - html5lib.treewalkers.base.TreeWalker.startTag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 7
    IfCount: 9
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event
    - next
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 27
    functionName: html5lib.treewalkers.genshi.TreeWalker.tokens
    functionSourceFile: html5lib.treewalkers.genshi
    functionUses: 1
    functionsReached:
    - html5lib.treewalkers.base.TreeWalker.doctype
    - <builtin>.isinstance
    - html5lib.treewalkers.base.TreeWalker.comment
    - data.lstrip
    - <builtin>.len
    - html5lib.treewalkers.base.TreeWalker.text
    - html5lib.treewalkers.base.TreeWalker.error
    - html5lib.treewalkers.base.TreeWalker.emptyTag
    - html5lib.treewalkers.base.TreeWalker.endTag
    - html5lib.treewalkers.base.TreeWalker.unknown
    - data.rstrip
    - html5lib.treewalkers.base.TreeWalker.startTag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.treewalkers.etree_lxml
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 14
    functionName: html5lib.treewalkers.etree_lxml.ensure_str
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 5
    functionsReached:
    - s.decode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.decode
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - et
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 24
    functionName: html5lib.treewalkers.etree_lxml.Root.__init__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - html5lib.treewalkers.etree_lxml.ensure_str
    - html5lib.treewalkers.etree_lxml.Root.getnext
    - et.getroot
    - node.getprevious
    - html5lib.treewalkers.etree_lxml.FragmentRoot.getnext
    - s.decode
    - html5lib.treewalkers.etree_lxml.Doctype.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - root_node
    - name
    - public_id
    - system_id
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 62
    functionName: html5lib.treewalkers.etree_lxml.Doctype.__init__
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: et.getroot
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.getprevious
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: html5lib.treewalkers.etree_lxml.Root.getnext
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 80
    functionName: html5lib.treewalkers.etree_lxml.FragmentRoot.getnext
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 51
    functionName: html5lib.treewalkers.etree_lxml.Root.__getitem__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 57
    functionName: html5lib.treewalkers.etree_lxml.Root.__len__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 71
    functionName: html5lib.treewalkers.etree_lxml.Doctype.getnext
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - children
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 76
    functionName: html5lib.treewalkers.etree_lxml.FragmentRoot.__init__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - html5lib.treewalkers.etree_lxml.ensure_str
    - <builtin>.hasattr
    - s.decode
    - html5lib.treewalkers.etree_lxml.FragmentWrapper.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - fragment_root
    - obj
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 85
    functionName: html5lib.treewalkers.etree_lxml.FragmentWrapper.__init__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 2
    functionsReached:
    - s.decode
    - <builtin>.isinstance
    - html5lib.treewalkers.etree_lxml.ensure_str
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 97
    functionName: html5lib.treewalkers.etree_lxml.FragmentWrapper.__getattr__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: html5lib.treewalkers.etree_lxml.FragmentWrapper.getnext
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - siblings.index
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: siblings.index
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 108
    functionName: html5lib.treewalkers.etree_lxml.FragmentWrapper.__getitem__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 111
    functionName: html5lib.treewalkers.etree_lxml.FragmentWrapper.__bool__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 114
    functionName: html5lib.treewalkers.etree_lxml.FragmentWrapper.getparent
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 117
    functionName: html5lib.treewalkers.etree_lxml.FragmentWrapper.__str__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.str
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 120
    functionName: html5lib.treewalkers.etree_lxml.FragmentWrapper.__unicode__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 123
    functionName: html5lib.treewalkers.etree_lxml.FragmentWrapper.__len__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tree
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 128
    functionName: html5lib.treewalkers.etree_lxml.TreeWalker.__init__
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - html5lib.treewalkers.etree_lxml.ensure_str
    - html5lib.treewalkers.etree_lxml.Root.getnext
    - et.getroot
    - node.getprevious
    - html5lib.treewalkers.etree_lxml.Doctype.__init__
    - html5lib.treewalkers.etree_lxml.FragmentWrapper.__init__
    - html5lib.treewalkers.base.TreeWalker.__init__
    - <builtin>.hasattr
    - html5lib.treewalkers.etree_lxml.FragmentRoot.getnext
    - s.decode
    - html5lib.treewalkers.etree_lxml.Root.__init__
    - html5lib.treewalkers.etree_lxml.FragmentRoot.__init__
    - <builtin>.set
    - _ihatexml.InfosetFilter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 139
    functionName: html5lib.treewalkers.etree_lxml.TreeWalker.getNodeDetails
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - html5lib.treewalkers.etree_lxml.ensure_str
    - collections.OrderedDict
    - match.groups
    - tag_regexp.match
    - <builtin>.len
    - node.attrib.items
    - <builtin>.hasattr
    - <builtin>.list
    - match.group
    - <builtin>.getattr
    - s.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 180
    functionName: html5lib.treewalkers.etree_lxml.TreeWalker.getFirstChild
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 189
    functionName: html5lib.treewalkers.etree_lxml.TreeWalker.getNextSibling
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - node.getnext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.getnext
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 205
    functionName: html5lib.treewalkers.etree_lxml.TreeWalker.getParentNode
    functionSourceFile: html5lib.treewalkers.etree_lxml
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - node.getparent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node.getparent
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib._ihatexml
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - re.compile
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - chars
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 103
    functionName: html5lib._ihatexml.charStringToList
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - match.groups
    - html5lib._ihatexml.normaliseCharList
    - rv.append
    - regexp.match
    - <builtin>.len
    - <builtin>.int
    - item.strip
    - html5lib._ihatexml.hexToInt
    - <builtin>.sorted
    - chars.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: item.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chars.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: regexp.match
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - hex_str
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 163
    functionName: html5lib._ihatexml.hexToInt
    functionSourceFile: html5lib._ihatexml
    functionUses: 1
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - charList
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 121
    functionName: html5lib._ihatexml.normaliseCharList
    functionSourceFile: html5lib._ihatexml
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - <builtin>.sorted
    - rv.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - charList
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 141
    functionName: html5lib._ihatexml.missingRanges
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - rv.append
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - charList
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 152
    functionName: html5lib._ihatexml.listToRegexpStr
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - html5lib._ihatexml.escapeRegexp
    - <builtin>.chr
    - string.replace
    - rv.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.chr
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 167
    functionName: html5lib._ihatexml.escapeRegexp
    functionSourceFile: html5lib._ihatexml
    functionUses: 1
    functionsReached:
    - string.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.replace
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib._ihatexml.InfosetFilter
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fc45014aa60>
    - <ast.Constant object at 0x7fc45014aca0>
    - <ast.Constant object at 0x7fc45014a0a0>
    - <ast.Constant object at 0x7fc45014a400>
    - <ast.Constant object at 0x7fc45014a0d0>
    - <ast.Constant object at 0x7fc45014ab20>
    argNames:
    - self
    - dropXmlnsLocalName
    - dropXmlnsAttrNs
    - preventDoubleDashComments
    - preventDashAtCommentEnd
    - replaceFormFeedCharacters
    - preventSingleQuotePubid
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 187
    functionName: html5lib._ihatexml.InfosetFilter.__init__
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc45017f8e0>
    argNames:
    - self
    - name
    - namespace
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 207
    functionName: html5lib._ihatexml.InfosetFilter.coerceAttribute
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - <builtin>.ord
    - nonXmlNameBMPRegexp.findall
    - nameRestOutput.replace
    - html5lib._ihatexml.InfosetFilter.getReplacementCharacter
    - warnings.warn
    - html5lib._ihatexml.InfosetFilter.toXmlName
    - html5lib._ihatexml.InfosetFilter.escapeChar
    - nonXmlNameFirstBMPRegexp.match
    - <builtin>.set
    - name.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 250
    functionName: html5lib._ihatexml.InfosetFilter.toXmlName
    functionSourceFile: html5lib._ihatexml
    functionUses: 2
    functionsReached:
    - <builtin>.ord
    - nonXmlNameBMPRegexp.findall
    - nameRestOutput.replace
    - html5lib._ihatexml.InfosetFilter.getReplacementCharacter
    - warnings.warn
    - html5lib._ihatexml.InfosetFilter.escapeChar
    - nonXmlNameFirstBMPRegexp.match
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 218
    functionName: html5lib._ihatexml.InfosetFilter.coerceElement
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - <builtin>.ord
    - nonXmlNameBMPRegexp.findall
    - nameRestOutput.replace
    - html5lib._ihatexml.InfosetFilter.getReplacementCharacter
    - warnings.warn
    - html5lib._ihatexml.InfosetFilter.toXmlName
    - html5lib._ihatexml.InfosetFilter.escapeChar
    - nonXmlNameFirstBMPRegexp.match
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 221
    functionName: html5lib._ihatexml.InfosetFilter.coerceComment
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - warnings.warn
    - data.endswith
    - data.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.endswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 231
    functionName: html5lib._ihatexml.InfosetFilter.coerceCharacters
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - warnings.warn
    - <builtin>.range
    - data.count
    - data.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 239
    functionName: html5lib._ihatexml.InfosetFilter.coercePubid
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - <builtin>.ord
    - nonPubidCharRegexp.findall
    - html5lib._ihatexml.InfosetFilter.getReplacementCharacter
    - warnings.warn
    - html5lib._ihatexml.InfosetFilter.escapeChar
    - dataOutput.find
    - dataOutput.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nonPubidCharRegexp.findall
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - char
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 268
    functionName: html5lib._ihatexml.InfosetFilter.getReplacementCharacter
    functionSourceFile: html5lib._ihatexml
    functionUses: 4
    functionsReached:
    - <builtin>.ord
    - html5lib._ihatexml.InfosetFilter.escapeChar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dataOutput.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dataOutput.find
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nonXmlNameFirstBMPRegexp.match
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nonXmlNameBMPRegexp.findall
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nameRestOutput.replace
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - char
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 280
    functionName: html5lib._ihatexml.InfosetFilter.escapeChar
    functionSourceFile: html5lib._ihatexml
    functionUses: 5
    functionsReached:
    - <builtin>.ord
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 275
    functionName: html5lib._ihatexml.InfosetFilter.fromXmlName
    functionSourceFile: html5lib._ihatexml
    functionUses: 0
    functionsReached:
    - name.replace
    - <builtin>.int
    - html5lib._ihatexml.InfosetFilter.unescapeChar
    - <builtin>.set
    - <builtin>.chr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - charcode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 285
    functionName: html5lib._ihatexml.InfosetFilter.unescapeChar
    functionSourceFile: html5lib._ihatexml
    functionUses: 1
    functionsReached:
    - <builtin>.int
    - <builtin>.chr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treeadapters
    functionSourceFile: html5lib.treeadapters
    functionUses: 0
    functionsReached:
    - __all__.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: __all__.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: html5lib.treeadapters.sax
    functionSourceFile: html5lib.treeadapters.sax
    functionUses: 0
    functionsReached:
    - adjustForeignAttributes.values
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: adjustForeignAttributes.values
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 9
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - walker
    - handler
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 13
    functionName: html5lib.treeadapters.sax.to_sax
    functionSourceFile: html5lib.treeadapters.sax
    functionUses: 0
    functionsReached:
    - handler.startElementNS
    - prefix_mapping.items
    - xml.sax.xmlreader.AttributesNSImpl
    - handler.endDocument
    - handler.endPrefixMapping
    - handler.startPrefixMapping
    - handler.characters
    - handler.startDocument
    - handler.endElementNS
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handler.startDocument
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: prefix_mapping.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handler.startPrefixMapping
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xml.sax.xmlreader.AttributesNSImpl
    functionSourceFile: xml
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handler.startElementNS
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handler.endElementNS
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handler.characters
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handler.endPrefixMapping
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handler.endDocument
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.treeadapters.genshi
    functionSourceFile: html5lib.treeadapters.genshi
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 8
    IfCount: 10
    argCount: 1
    argDefaultValues: []
    argNames:
    - walker
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 7
    functionName: html5lib.treeadapters.genshi.to_genshi
    functionSourceFile: html5lib.treeadapters.genshi
    functionUses: 0
    functionsReached:
    - genshi.core.Attrs
    - genshi.core.QName
    - text.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: genshi.core.QName
    functionSourceFile: genshi
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: genshi.core.Attrs
    functionSourceFile: genshi
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html5lib.filters.lint
    functionSourceFile: html5lib.filters.lint
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fc44eb861c0>
    argNames:
    - self
    - source
    - require_matching_tags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 18
    functionName: html5lib.filters.lint.Filter.__init__
    functionSourceFile: html5lib.filters.lint
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 2
    IfCount: 12
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 29
    functionName: html5lib.filters.lint.Filter.__iter__
    functionSourceFile: html5lib.filters.lint
    functionUses: 0
    functionsReached:
    - html5lib.filters.sanitizer.Filter.sanitize_css
    - html5lib.filters.whitespace.collapse_spaces
    - collections.OrderedDict
    - re.match
    - SPACES_REGEX.sub
    - html5lib.filters.whitespace.Filter.__iter__
    - <builtin>.set
    - attrs.append
    - six.moves.urllib_parse.urlparse
    - re.compile
    - value.split
    - html5lib.filters.sanitizer.Filter.__iter__
    - collections.OrderedDict.strip
    - pending.pop
    - html5lib.filters.optionaltags.Filter.is_optional_start
    - xml.sax.saxutils.unescape
    - prop.split
    - prop.lower
    - <builtin>.sorted
    - html5lib.filters.inject_meta_charset.Filter.__iter__
    - html5lib.filters.optionaltags.Filter.is_optional_end
    - html5lib.filters.optionaltags.Filter.__iter__
    - clean.append
    - pending.append
    - re.sub
    - <builtin>.iter
    - <builtin>.isinstance
    - name.lower
    - token.get
    - html5lib.filters.alphabeticalattributes.Filter.__iter__
    - value.lower
    - attr_names.remove
    - val_unescaped.replace
    - re.findall
    - open_elements.append
    - m.group
    - open_elements.pop
    - xml.sax.saxutils.escape
    - html5lib.filters.base.Filter.__iter__
    - html5lib.filters.sanitizer.Filter.sanitize_token
    - html5lib.filters.sanitizer.Filter.disallowed_token
    - html5lib.filters.optionaltags.Filter.slider
    - collections.OrderedDict.items
    - data_content_type.match
    - collections.OrderedDict.keys
    - re.search
    - html5lib.filters.sanitizer.Filter.allowed_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: open_elements.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: open_elements.pop
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.OrderedDict.strip
    functionSourceFile: collections
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...fuzz_parse':
  - 32
  - 31
  '...fuzz_parse.TestOneInput':
  - 21
  - 22
  '...fuzz_parse.main':
  - 26
  - 27
  - 28
  html5lib:
  - 1
  html5lib._ihatexml:
  - 97
  - 99
  - 100
  - 138
  - 176
  - 178
  - 181
  - 92
  - 95
  html5lib._ihatexml.InfosetFilter:
  - 185
  html5lib._ihatexml.InfosetFilter.coerceAttribute:
  - 208
  - 209
  - 211
  - 213
  - 216
  html5lib._ihatexml.InfosetFilter.coerceCharacters:
  - 232
  - 233
  - 234
  - 235
  html5lib._ihatexml.InfosetFilter.coerceComment:
  - 224
  - 225
  - 226
  - 227
  - 222
  html5lib._ihatexml.InfosetFilter.coerceElement:
  - 219
  html5lib._ihatexml.InfosetFilter.coercePubid:
  - 241
  - 242
  - 243
  - 244
  - 245
  - 246
  - 247
  html5lib._ihatexml.InfosetFilter.escapeChar:
  - 281
  html5lib._ihatexml.InfosetFilter.fromXmlName:
  - 276
  - 277
  html5lib._ihatexml.InfosetFilter.getReplacementCharacter:
  - 272
  - 269
  html5lib._ihatexml.InfosetFilter.toXmlName:
  - 256
  - 261
  - 262
  - 263
  - 264
  - 265
  - 253
  - 254
  - 255
  html5lib._ihatexml.InfosetFilter.unescapeChar:
  - 286
  html5lib._ihatexml.charStringToList:
  - 104
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 117
  html5lib._ihatexml.escapeRegexp:
  - 170
  - 171
  html5lib._ihatexml.hexToInt:
  - 164
  html5lib._ihatexml.listToRegexpStr:
  - 160
  - 154
  - 155
  - 156
  - 158
  - 159
  html5lib._ihatexml.missingRanges:
  - 143
  - 144
  - 145
  - 146
  - 147
  - 148
  html5lib._ihatexml.normaliseCharList:
  - 129
  - 130
  - 122
  - 123
  - 127
  html5lib._inputstream:
  - 32
  - 35
  - 45
  - 17
  - 18
  - 19
  - 20
  - 25
  - 30
  - 31
  html5lib._inputstream.BufferedStream:
  - 52
  html5lib._inputstream.BufferedStream._bufferedBytes:
  - 89
  html5lib._inputstream.BufferedStream._readFromBuffer:
  - 103
  - 107
  - 111
  - 112
  - 114
  - 119
  - 120
  - 122
  html5lib._inputstream.BufferedStream._readStream:
  - 92
  - 93
  - 95
  html5lib._inputstream.BufferedStream.read:
  - 80
  - 81
  - 82
  - 83
  - 84
  - 86
  html5lib._inputstream.BufferedStream.seek:
  - 74
  - 75
  - 71
  html5lib._inputstream.BufferedStream.tell:
  - 65
  - 66
  html5lib._inputstream.ContentAttrParser.__init__:
  - 866
  html5lib._inputstream.ContentAttrParser.parse:
  - 873
  - 875
  - 876
  - 880
  - 882
  - 886
  - 894
  html5lib._inputstream.EncodingBytes:
  - 627
  - 579
  - 632
  html5lib._inputstream.EncodingBytes.__new__:
  - 584
  - 583
  html5lib._inputstream.EncodingBytes.__next__:
  - 595
  - 597
  html5lib._inputstream.EncodingBytes.getPosition:
  - 620
  - 622
  html5lib._inputstream.EncodingBytes.jumpTo:
  - 667
  - 670
  html5lib._inputstream.EncodingBytes.matchBytes:
  - 658
  - 661
  - 662
  - 663
  html5lib._inputstream.EncodingBytes.next:
  - 603
  html5lib._inputstream.EncodingBytes.previous:
  - 609
  - 607
  html5lib._inputstream.EncodingBytes.setPosition:
  - 615
  html5lib._inputstream.EncodingBytes.skip:
  - 635
  - 637
  - 639
  html5lib._inputstream.EncodingBytes.skipUntil:
  - 648
  - 650
  html5lib._inputstream.EncodingParser:
  - 677
  html5lib._inputstream.EncodingParser.__init__:
  - 680
  - 681
  html5lib._inputstream.EncodingParser.getAttribute:
  - 788
  - 792
  - 793
  - 795
  - 802
  - 804
  - 806
  - 808
  - 809
  - 810
  - 811
  - 812
  - 815
  - 817
  - 819
  - 820
  - 821
  - 823
  - 825
  - 827
  - 832
  - 834
  - 835
  - 836
  - 838
  - 839
  - 842
  - 843
  - 844
  - 845
  - 846
  - 847
  - 850
  - 853
  - 854
  - 855
  - 856
  - 857
  - 858
  - 861
  html5lib._inputstream.EncodingParser.getEncoding:
  - 704
  - 709
  - 685
  - 695
  - 698
  - 701
  - 702
  html5lib._inputstream.EncodingParser.handleComment:
  - 715
  - 716
  html5lib._inputstream.EncodingParser.handleMeta:
  - 736
  - 738
  - 739
  - 742
  - 743
  - 744
  - 745
  - 746
  - 747
  - 748
  - 719
  - 727
  - 728
  - 731
  - 733
  html5lib._inputstream.EncodingParser.handleOther:
  - 785
  html5lib._inputstream.EncodingParser.handlePossibleEndTag:
  - 758
  - 759
  html5lib._inputstream.EncodingParser.handlePossibleStartTag:
  - 755
  html5lib._inputstream.EncodingParser.handlePossibleTag:
  - 768
  - 769
  - 772
  - 773
  - 776
  - 779
  - 781
  - 763
  - 767
  html5lib._inputstream.HTMLBinaryInputStream:
  - 379
  html5lib._inputstream.HTMLBinaryInputStream.__init__:
  - 389
  - 422
  - 426
  - 404
  - 406
  html5lib._inputstream.HTMLBinaryInputStream.changeEncoding:
  - 515
  - 516
  - 518
  - 519
  - 521
  - 524
  - 526
  html5lib._inputstream.HTMLBinaryInputStream.detectBOM:
  - 544
  - 546
  - 548
  - 550
  - 551
  - 556
  - 557
  - 558
  - 560
  - 530
  - 540
  - 541
  html5lib._inputstream.HTMLBinaryInputStream.detectEncodingMeta:
  - 564
  - 566
  - 567
  - 568
  - 569
  - 570
  - 572
  - 573
  html5lib._inputstream.HTMLBinaryInputStream.determineEncoding:
  - 454
  - 455
  - 459
  - 460
  - 464
  - 465
  - 469
  - 470
  - 474
  - 475
  - 479
  - 480
  - 484
  - 491
  - 493
  - 494
  - 495
  - 497
  - 498
  - 499
  - 500
  - 501
  - 502
  - 506
  - 507
  - 511
  html5lib._inputstream.HTMLBinaryInputStream.openStream:
  - 433
  - 439
  - 442
  - 445
  - 447
  html5lib._inputstream.HTMLBinaryInputStream.reset:
  - 429
  - 430
  html5lib._inputstream.HTMLInputStream:
  - 128
  - 130
  - 131
  - 133
  - 134
  - 136
  - 138
  - 139
  - 140
  - 143
  - 145
  html5lib._inputstream.HTMLUnicodeInputStream:
  - 149
  html5lib._inputstream.HTMLUnicodeInputStream.__init__:
  - 173
  - 177
  - 185
  - 186
  - 188
  - 159
  html5lib._inputstream.HTMLUnicodeInputStream._position:
  - 220
  - 222
  - 223
  html5lib._inputstream.HTMLUnicodeInputStream.char:
  - 240
  - 235
  - 239
  html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS2:
  - 295
  - 296
  - 298
  - 299
  - 301
  - 303
  - 304
  - 305
  - 307
  - 308
  - 309
  - 312
  html5lib._inputstream.HTMLUnicodeInputStream.characterErrorsUCS4:
  - 288
  - 289
  html5lib._inputstream.HTMLUnicodeInputStream.charsUntil:
  - 353
  - 354
  - 325
  - 326
  - 327
  - 328
  - 329
  - 358
  - 331
  - 337
  - 338
  - 347
  - 341
  - 344
  - 315
  - 348
  html5lib._inputstream.HTMLUnicodeInputStream.openStream:
  - 211
  - 205
  - 214
  html5lib._inputstream.HTMLUnicodeInputStream.position:
  - 230
  - 231
  html5lib._inputstream.HTMLUnicodeInputStream.readChunk:
  - 259
  - 262
  - 265
  - 269
  - 270
  - 271
  - 275
  - 276
  - 279
  - 280
  - 250
  - 283
  - 253
  html5lib._inputstream.HTMLUnicodeInputStream.unget:
  - 364
  - 365
  html5lib._inputstream.lookupEncoding:
  - 904
  - 906
  - 908
  - 912
  - 914
  html5lib._tokenizer:
  - 19
  - 21
  html5lib._tokenizer.HTMLTokenizer:
  - 28
  html5lib._tokenizer.HTMLTokenizer.__init__:
  - 42
  - 53
  html5lib._tokenizer.HTMLTokenizer.__iter__:
  - 65
  - 67
  - 69
  - 56
  - 62
  html5lib._tokenizer.HTMLTokenizer.afterAttributeNameState:
  - 960
  - 962
  - 964
  - 965
  - 969
  - 942
  - 943
  - 944
  - 945
  - 947
  - 948
  - 949
  - 950
  - 952
  - 954
  - 955
  - 957
  - 959
  html5lib._tokenizer.HTMLTokenizer.afterAttributeValueState:
  - 1071
  - 1072
  - 1074
  - 1075
  - 1076
  - 1078
  - 1079
  - 1081
  - 1084
  - 1086
  html5lib._tokenizer.HTMLTokenizer.afterDoctypeNameState:
  - 1415
  - 1416
  - 1374
  - 1375
  - 1377
  - 1378
  - 1380
  - 1382
  - 1383
  - 1385
  - 1388
  - 1390
  - 1392
  - 1393
  - 1396
  - 1399
  - 1401
  - 1403
  - 1404
  - 1407
  html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicIdentifierState:
  - 1538
  - 1539
  - 1542
  - 1545
  - 1522
  - 1523
  - 1525
  - 1526
  - 1528
  - 1529
  - 1533
  - 1534
  html5lib._tokenizer.HTMLTokenizer.afterDoctypePublicKeywordState:
  - 1440
  - 1425
  - 1426
  - 1428
  - 1429
  - 1431
  - 1433
  - 1434
  - 1437
  html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemIdentifierState:
  - 1675
  - 1676
  - 1678
  - 1679
  - 1681
  - 1682
  - 1685
  - 1688
  html5lib._tokenizer.HTMLTokenizer.afterDoctypeSystemKeywordState:
  - 1578
  - 1579
  - 1581
  - 1582
  - 1584
  - 1586
  - 1587
  - 1590
  - 1593
  html5lib._tokenizer.HTMLTokenizer.attributeNameState:
  - 897
  - 902
  - 904
  - 906
  - 907
  - 911
  - 912
  - 917
  - 918
  - 925
  - 930
  - 931
  - 932
  - 933
  - 937
  - 938
  - 888
  - 891
  - 893
  - 895
  html5lib._tokenizer.HTMLTokenizer.attributeValueDoubleQuotedState:
  - 1008
  - 1009
  - 1011
  - 1012
  - 1013
  - 1014
  - 1017
  - 1018
  - 1023
  html5lib._tokenizer.HTMLTokenizer.attributeValueSingleQuotedState:
  - 1027
  - 1028
  - 1030
  - 1031
  - 1032
  - 1033
  - 1036
  - 1037
  - 1042
  html5lib._tokenizer.HTMLTokenizer.attributeValueUnQuotedState:
  - 1057
  - 1058
  - 1061
  - 1062
  - 1066
  - 1067
  - 1046
  - 1047
  - 1049
  - 1050
  - 1051
  - 1052
  - 1053
  - 1054
  html5lib._tokenizer.HTMLTokenizer.beforeAttributeNameState:
  - 864
  - 865
  - 866
  - 868
  - 869
  - 871
  - 873
  - 874
  - 876
  - 878
  - 879
  - 883
  - 858
  - 859
  - 860
  - 861
  - 862
  html5lib._tokenizer.HTMLTokenizer.beforeAttributeValueState:
  - 993
  - 994
  - 998
  - 999
  - 974
  - 975
  - 976
  - 977
  - 979
  - 981
  - 982
  - 984
  - 985
  - 987
  - 988
  - 989
  html5lib._tokenizer.HTMLTokenizer.beforeDoctypeNameState:
  - 1323
  - 1324
  - 1326
  - 1327
  - 1330
  - 1332
  - 1333
  - 1337
  - 1338
  - 1341
  html5lib._tokenizer.HTMLTokenizer.beforeDoctypePublicIdentifierState:
  - 1445
  - 1446
  - 1448
  - 1451
  - 1454
  - 1455
  - 1458
  - 1460
  - 1461
  - 1464
  - 1467
  html5lib._tokenizer.HTMLTokenizer.beforeDoctypeSystemIdentifierState:
  - 1601
  - 1604
  - 1607
  - 1608
  - 1611
  - 1613
  - 1614
  - 1617
  - 1620
  - 1598
  - 1599
  html5lib._tokenizer.HTMLTokenizer.betweenDoctypePublicAndSystemIdentifiersState:
  - 1568
  - 1571
  - 1552
  - 1553
  - 1555
  - 1556
  - 1558
  - 1561
  - 1564
  - 1565
  html5lib._tokenizer.HTMLTokenizer.bogusCommentState:
  - 1112
  - 1113
  - 1114
  - 1119
  html5lib._tokenizer.HTMLTokenizer.bogusDoctypeState:
  - 1696
  - 1698
  - 1700
  - 1701
  - 1694
  - 1695
  html5lib._tokenizer.HTMLTokenizer.cdataSectionState:
  - 1728
  - 1730
  - 1731
  - 1732
  - 1710
  - 1711
  - 1712
  - 1713
  - 1717
  - 1721
  - 1723
  - 1725
  - 1726
  - 1727
  html5lib._tokenizer.HTMLTokenizer.characterReferenceInRcdata:
  - 320
  html5lib._tokenizer.HTMLTokenizer.closeTagOpenState:
  - 416
  - 417
  - 420
  - 421
  - 423
  - 427
  - 430
  - 411
  - 412
  html5lib._tokenizer.HTMLTokenizer.commentEndBangState:
  - 1283
  - 1284
  - 1285
  - 1287
  - 1290
  - 1291
  - 1295
  - 1296
  - 1298
  html5lib._tokenizer.HTMLTokenizer.commentEndDashState:
  - 1233
  - 1234
  - 1236
  - 1237
  - 1241
  - 1242
  - 1244
  html5lib._tokenizer.HTMLTokenizer.commentEndState:
  - 1252
  - 1253
  - 1254
  - 1256
  - 1257
  - 1261
  - 1262
  - 1265
  - 1266
  - 1269
  - 1270
  - 1272
  - 1276
  html5lib._tokenizer.HTMLTokenizer.commentStartDashState:
  - 1192
  - 1193
  - 1195
  - 1196
  - 1199
  - 1200
  - 1202
  - 1204
  - 1205
  - 1207
  html5lib._tokenizer.HTMLTokenizer.commentStartState:
  - 1184
  - 1169
  - 1170
  - 1172
  - 1173
  - 1176
  - 1177
  - 1179
  - 1181
  - 1182
  html5lib._tokenizer.HTMLTokenizer.commentState:
  - 1216
  - 1218
  - 1219
  - 1222
  - 1223
  - 1225
  - 1229
  - 1215
  html5lib._tokenizer.HTMLTokenizer.consumeEntity:
  - 147
  - 148
  - 150
  - 152
  - 155
  - 156
  - 158
  - 161
  - 164
  - 165
  - 168
  - 170
  - 171
  - 180
  - 182
  - 189
  - 190
  - 194
  - 195
  - 196
  - 198
  - 202
  - 203
  - 206
  - 207
  - 209
  - 211
  - 212
  - 214
  - 217
  - 221
  html5lib._tokenizer.HTMLTokenizer.consumeNumberEntity:
  - 96
  - 129
  - 98
  - 132
  - 101
  - 122
  - 72
  - 104
  - 136
  - 137
  - 139
  - 109
  - 79
  - 113
  - 87
  - 89
  - 90
  - 93
  html5lib._tokenizer.HTMLTokenizer.dataState:
  - 257
  - 258
  - 260
  - 262
  - 263
  - 265
  - 267
  - 270
  - 274
  - 275
  - 280
  - 281
  html5lib._tokenizer.HTMLTokenizer.doctypeNameState:
  - 1349
  - 1350
  - 1351
  - 1353
  - 1354
  - 1355
  - 1357
  - 1358
  - 1362
  - 1363
  - 1366
  - 1367
  html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierDoubleQuotedState:
  - 1474
  - 1475
  - 1477
  - 1478
  - 1481
  - 1482
  - 1485
  - 1487
  - 1488
  - 1491
  html5lib._tokenizer.HTMLTokenizer.doctypePublicIdentifierSingleQuotedState:
  - 1505
  - 1506
  - 1509
  - 1511
  - 1512
  - 1515
  - 1498
  - 1499
  - 1501
  - 1502
  html5lib._tokenizer.HTMLTokenizer.doctypeState:
  - 1313
  - 1316
  - 1318
  - 1306
  - 1307
  - 1309
  - 1310
  html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierDoubleQuotedState:
  - 1634
  - 1635
  - 1638
  - 1640
  - 1641
  - 1644
  - 1627
  - 1628
  - 1630
  - 1631
  html5lib._tokenizer.HTMLTokenizer.doctypeSystemIdentifierSingleQuotedState:
  - 1664
  - 1665
  - 1668
  - 1651
  - 1652
  - 1654
  - 1655
  - 1658
  - 1659
  - 1662
  html5lib._tokenizer.HTMLTokenizer.emitCurrentToken:
  - 229
  - 235
  - 236
  - 237
  - 239
  - 240
  - 242
  - 245
  - 246
  - 247
  - 249
  - 250
  - 252
  html5lib._tokenizer.HTMLTokenizer.entityDataState:
  - 286
  html5lib._tokenizer.HTMLTokenizer.markupDeclarationOpenState:
  - 1152
  - 1153
  - 1124
  - 1125
  - 1126
  - 1127
  - 1156
  - 1160
  - 1131
  - 1164
  - 1133
  - 1135
  - 1136
  - 1139
  - 1146
  - 1151
  html5lib._tokenizer.HTMLTokenizer.plaintextState:
  - 361
  - 362
  - 365
  - 366
  - 368
  - 371
  - 372
  html5lib._tokenizer.HTMLTokenizer.processEntityInAttribute:
  - 224
  - 226
  html5lib._tokenizer.HTMLTokenizer.rawtextEndTagNameState:
  - 545
  - 547
  - 550
  - 552
  - 529
  - 530
  - 531
  - 536
  - 541
  html5lib._tokenizer.HTMLTokenizer.rawtextEndTagOpenState:
  - 523
  - 524
  - 518
  - 519
  html5lib._tokenizer.HTMLTokenizer.rawtextLessThanSignState:
  - 512
  - 513
  - 507
  - 508
  html5lib._tokenizer.HTMLTokenizer.rawtextState:
  - 325
  - 326
  - 328
  - 329
  - 331
  - 333
  - 337
  - 338
  html5lib._tokenizer.HTMLTokenizer.rcdataEndTagNameState:
  - 480
  - 481
  - 486
  - 491
  - 495
  - 497
  - 500
  - 502
  - 479
  html5lib._tokenizer.HTMLTokenizer.rcdataEndTagOpenState:
  - 473
  - 474
  - 468
  - 469
  html5lib._tokenizer.HTMLTokenizer.rcdataLessThanSignState:
  - 457
  - 458
  - 462
  - 463
  html5lib._tokenizer.HTMLTokenizer.rcdataState:
  - 291
  - 292
  - 294
  - 296
  - 299
  - 300
  - 302
  - 304
  - 308
  - 309
  - 314
  - 315
  html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeEndState:
  - 842
  - 843
  - 844
  - 845
  - 849
  - 850
  - 853
  html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapeStartState:
  - 746
  - 747
  - 748
  - 749
  - 753
  - 754
  - 757
  html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashDashState:
  - 806
  - 807
  - 808
  - 809
  - 810
  - 812
  - 813
  - 815
  - 816
  - 818
  - 821
  - 822
  - 826
  html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedDashState:
  - 801
  - 783
  - 784
  - 785
  - 787
  - 788
  - 790
  - 791
  - 793
  - 796
  - 797
  html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedLessThanSignState:
  - 832
  - 833
  - 837
  - 831
  html5lib._tokenizer.HTMLTokenizer.scriptDataDoubleEscapedState:
  - 769
  - 770
  - 772
  - 774
  - 775
  - 779
  - 762
  - 763
  - 764
  - 766
  - 767
  html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagNameState:
  - 582
  - 583
  - 584
  - 589
  - 594
  - 598
  - 600
  - 603
  - 605
  html5lib._tokenizer.HTMLTokenizer.scriptDataEndTagOpenState:
  - 576
  - 577
  - 571
  - 572
  html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartDashState:
  - 625
  - 620
  - 621
  - 622
  html5lib._tokenizer.HTMLTokenizer.scriptDataEscapeStartState:
  - 610
  - 611
  - 612
  - 615
  html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashDashState:
  - 672
  - 673
  - 675
  - 676
  - 678
  - 679
  - 681
  - 684
  - 687
  - 670
  - 671
  html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedDashState:
  - 650
  - 651
  - 652
  - 654
  - 656
  - 657
  - 659
  - 662
  - 665
  html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagNameState:
  - 736
  - 739
  - 741
  - 718
  - 719
  - 720
  - 725
  - 730
  - 734
  html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedEndTagOpenState:
  - 712
  - 713
  - 707
  - 708
  html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedLessThanSignState:
  - 692
  - 693
  - 696
  - 697
  - 701
  - 702
  html5lib._tokenizer.HTMLTokenizer.scriptDataEscapedState:
  - 641
  - 644
  - 645
  - 630
  - 631
  - 632
  - 634
  - 636
  - 637
  - 639
  html5lib._tokenizer.HTMLTokenizer.scriptDataLessThanSignState:
  - 557
  - 558
  - 561
  - 562
  - 565
  - 566
  html5lib._tokenizer.HTMLTokenizer.scriptDataState:
  - 355
  - 356
  - 343
  - 344
  - 346
  - 347
  - 349
  - 351
  html5lib._tokenizer.HTMLTokenizer.selfClosingStartTagState:
  - 1091
  - 1092
  - 1094
  - 1095
  - 1096
  - 1099
  - 1102
  - 1104
  html5lib._tokenizer.HTMLTokenizer.tagNameState:
  - 435
  - 436
  - 438
  - 439
  - 440
  - 441
  - 444
  - 446
  - 447
  html5lib._tokenizer.HTMLTokenizer.tagOpenState:
  - 387
  - 390
  - 392
  - 394
  - 397
  - 399
  - 403
  - 405
  - 406
  - 376
  - 377
  - 379
  - 381
  html5lib._trie._base.Trie:
  - 10
  html5lib._trie._base.Trie.has_keys_with_prefix:
  - 22
  - 23
  html5lib._trie._base.Trie.keys:
  - 16
  - 17
  - 19
  - 14
  html5lib._trie._base.Trie.longest_prefix:
  - 32
  - 33
  - 29
  html5lib._trie._base.Trie.longest_prefix_item:
  - 39
  html5lib._trie.py.Trie.__init__:
  - 17
  - 11
  - 15
  html5lib._trie.py.Trie.__iter__:
  - 26
  html5lib._trie.py.Trie.__len__:
  - 23
  html5lib._trie.py.Trie.has_keys_with_prefix:
  - 64
  - 67
  - 55
  - 58
  - 60
  - 62
  html5lib._trie.py.Trie.keys:
  - 32
  - 33
  - 35
  - 37
  - 39
  - 41
  - 42
  - 45
  - 46
  html5lib._utils:
  - 33
  - 34
  - 36
  - 37
  - 12
  html5lib._utils.BoundMethodDispatcher:
  - 77
  html5lib._utils.BoundMethodDispatcher.__getitem__:
  - 85
  html5lib._utils.BoundMethodDispatcher.__iter__:
  - 94
  html5lib._utils.BoundMethodDispatcher.__len__:
  - 97
  html5lib._utils.BoundMethodDispatcher.get:
  - 88
  html5lib._utils.MethodDispatcher:
  - 45
  html5lib._utils.MethodDispatcher.__get__:
  - 73
  html5lib._utils.MethodDispatcher.__getitem__:
  - 70
  html5lib._utils.MethodDispatcher.__init__:
  - 64
  - 65
  - 66
  - 59
  - 60
  - 61
  - 62
  html5lib._utils.isSurrogatePair:
  - 107
  - 108
  - 109
  html5lib._utils.memoize.wrapped:
  - 154
  - 155
  - 156
  html5lib._utils.moduleFactoryFactory.moduleFactory:
  - 130
  - 135
  - 136
  - 137
  - 138
  - 140
  - 142
  - 125
  html5lib._utils.surrogatePairToCodepoint:
  - 113
  - 114
  html5lib.constants:
  - 2946
  - 2950
  - 523
  - 525
  - 533
  - 662
  - 541
  - 542
  - 543
  - 544
  - 545
  - 547
  - 425
  - 559
  - 432
  - 305
  - 325
  - 590
  - 592
  - 342
  - 603
  - 604
  - 605
  - 606
  - 607
  - 608
  - 609
  - 610
  - 611
  - 612
  - 613
  - 614
  - 615
  - 616
  - 617
  - 618
  - 619
  - 620
  - 621
  - 622
  html5lib.constants.DataLossWarning:
  - 2955
  html5lib.filters.alphabeticalattributes.Filter:
  - 20
  html5lib.filters.alphabeticalattributes.Filter.__iter__:
  - 22
  - 23
  - 24
  - 25
  - 29
  html5lib.filters.alphabeticalattributes._attr_key:
  - 9
  html5lib.filters.base.Filter.__getattr__:
  - 12
  html5lib.filters.base.Filter.__iter__:
  - 9
  html5lib.filters.inject_meta_charset.Filter:
  - 7
  html5lib.filters.inject_meta_charset.Filter.__init__:
  - 16
  - 9
  html5lib.filters.inject_meta_charset.Filter.__iter__:
  - 24
  - 26
  - 27
  - 30
  - 31
  - 34
  - 35
  - 37
  - 41
  - 48
  - 50
  - 52
  - 54
  - 58
  - 59
  - 61
  - 62
  - 63
  - 66
  - 70
  - 71
  - 73
  html5lib.filters.lint:
  - 9
  html5lib.filters.lint.Filter:
  - 13
  html5lib.filters.lint.Filter.__init__:
  - 26
  - 19
  html5lib.filters.lint.Filter.__iter__:
  - 31
  - 33
  - 36
  - 38
  - 40
  - 41
  - 45
  - 46
  - 47
  - 48
  - 50
  - 52
  - 54
  - 57
  - 59
  - 61
  - 63
  - 64
  - 67
  - 69
  - 71
  - 73
  - 75
  - 76
  - 78
  - 80
  - 81
  - 82
  - 84
  - 85
  - 87
  - 88
  - 93
  html5lib.filters.optionaltags.Filter:
  - 7
  html5lib.filters.optionaltags.Filter.__iter__:
  - 19
  - 21
  - 22
  - 23
  - 24
  - 25
  - 26
  - 27
  - 29
  html5lib.filters.optionaltags.Filter.is_optional_end:
  - 136
  - 142
  - 146
  - 153
  - 157
  - 161
  - 163
  - 169
  - 180
  - 182
  - 186
  - 192
  - 196
  - 203
  - 90
  - 94
  - 104
  - 108
  - 114
  - 116
  - 120
  - 127
  html5lib.filters.optionaltags.Filter.is_optional_start:
  - 33
  - 65
  - 37
  - 72
  - 41
  - 43
  - 45
  - 77
  - 80
  - 51
  - 53
  - 60
  html5lib.filters.optionaltags.Filter.slider:
  - 10
  - 11
  - 12
  - 15
  - 16
  html5lib.filters.sanitizer:
  - 544
  - 1
  - 576
  - 708
  - 197
  - 682
  - 558
  - 718
  - 528
  - 671
  - 629
  - 29
  - 31
  html5lib.filters.sanitizer.Filter:
  - 733
  html5lib.filters.sanitizer.Filter.__init__:
  - 777
  - 746
  - 779
  html5lib.filters.sanitizer.Filter.__iter__:
  - 793
  - 794
  - 795
  - 796
  html5lib.filters.sanitizer.Filter.allowed_token:
  - 828
  - 830
  - 833
  - 835
  - 838
  - 844
  - 845
  - 847
  - 849
  - 853
  - 854
  - 856
  - 857
  - 858
  - 860
  - 863
  - 864
  - 865
  - 867
  - 868
  - 869
  - 872
  - 873
  html5lib.filters.sanitizer.Filter.disallowed_token:
  - 879
  - 881
  - 884
  - 885
  - 886
  - 889
  html5lib.filters.sanitizer.Filter.sanitize_css:
  - 899
  - 902
  - 904
  - 908
  - 909
  - 911
  - 912
  - 913
  - 915
  - 916
  - 917
  - 921
  - 922
  - 924
  html5lib.filters.sanitizer.Filter.sanitize_token:
  - 813
  - 816
  - 819
  - 821
  - 822
  html5lib.filters.whitespace:
  - 9
  - 7
  html5lib.filters.whitespace.Filter:
  - 13
  - 14
  html5lib.filters.whitespace.Filter.__iter__:
  - 32
  - 34
  - 18
  - 20
  - 24
  - 27
  - 31
  html5lib.filters.whitespace.collapse_spaces:
  - 38
  html5lib.html5parser.HTMLParser:
  - 87
  html5lib.html5parser.HTMLParser.__init__:
  - 116
  - 117
  - 118
  - 119
  - 121
  - 124
  - 125
  - 94
  html5lib.html5parser.HTMLParser._parse:
  - 132
  - 133
  - 136
  - 138
  - 139
  html5lib.html5parser.HTMLParser.adjustForeignAttributes:
  - 333
  html5lib.html5parser.HTMLParser.adjustMathMLAttributes:
  - 327
  html5lib.html5parser.HTMLParser.adjustSVGAttributes:
  - 330
  html5lib.html5parser.HTMLParser.documentEncoding:
  - 177
  - 181
  html5lib.html5parser.HTMLParser.isHTMLIntegrationPoint:
  - 186
  - 189
  html5lib.html5parser.HTMLParser.mainLoop:
  - 260
  - 261
  - 262
  - 207
  - 218
  - 219
  - 222
  - 224
  - 226
  - 232
  - 238
  - 239
  - 240
  - 241
  - 242
  - 243
  - 244
  - 245
  - 246
  - 247
  - 248
  - 249
  - 251
  - 253
  html5lib.html5parser.HTMLParser.parse:
  - 288
  - 266
  - 287
  html5lib.html5parser.HTMLParser.parseError:
  - 320
  - 322
  - 323
  html5lib.html5parser.HTMLParser.parseFragment:
  - 315
  - 291
  - 316
  html5lib.html5parser.HTMLParser.parseRCDataRawtext:
  - 387
  - 389
  html5lib.html5parser.HTMLParser.reparseTokenNormal:
  - 337
  html5lib.html5parser.HTMLParser.reset:
  - 163
  - 164
  - 142
  - 149
  - 150
  - 152
  - 154
  - 156
  html5lib.html5parser.HTMLParser.resetInsertionMode:
  - 359
  - 362
  - 368
  - 371
  - 374
  - 377
  html5lib.html5parser.ParseError:
  - 2797
  html5lib.html5parser.adjust_attributes:
  - 2784
  - 2785
  - 2782
  - 2783
  html5lib.html5parser.getPhases.AfterAfterBodyPhase:
  - 2680
  - 2711
  html5lib.html5parser.getPhases.AfterAfterBodyPhase.processCharacters:
  - 2692
  html5lib.html5parser.getPhases.AfterAfterBodyPhase.processComment:
  - 2686
  html5lib.html5parser.getPhases.AfterAfterBodyPhase.processEndTag:
  - 2706
  html5lib.html5parser.getPhases.AfterAfterBodyPhase.processSpaceCharacters:
  - 2689
  html5lib.html5parser.getPhases.AfterAfterBodyPhase.startTagHtml:
  - 2697
  html5lib.html5parser.getPhases.AfterAfterBodyPhase.startTagOther:
  - 2700
  html5lib.html5parser.getPhases.AfterAfterFramesetPhase:
  - 2745
  - 2717
  html5lib.html5parser.getPhases.AfterAfterFramesetPhase.processCharacters:
  - 2729
  html5lib.html5parser.getPhases.AfterAfterFramesetPhase.processComment:
  - 2723
  html5lib.html5parser.getPhases.AfterAfterFramesetPhase.processEndTag:
  - 2742
  html5lib.html5parser.getPhases.AfterAfterFramesetPhase.processSpaceCharacters:
  - 2726
  html5lib.html5parser.getPhases.AfterAfterFramesetPhase.startTagHtml:
  - 2732
  html5lib.html5parser.getPhases.AfterAfterFramesetPhase.startTagNoFrames:
  - 2735
  html5lib.html5parser.getPhases.AfterAfterFramesetPhase.startTagOther:
  - 2738
  html5lib.html5parser.getPhases.AfterBodyPhase:
  - 2584
  - 2579
  - 2542
  html5lib.html5parser.getPhases.AfterBodyPhase.endTagHtml:
  - 2568
  - 2569
  html5lib.html5parser.getPhases.AfterBodyPhase.endTagOther:
  - 2574
  html5lib.html5parser.getPhases.AfterBodyPhase.processCharacters:
  - 2554
  html5lib.html5parser.getPhases.AfterBodyPhase.processComment:
  - 2551
  html5lib.html5parser.getPhases.AfterBodyPhase.startTagHtml:
  - 2559
  html5lib.html5parser.getPhases.AfterBodyPhase.startTagOther:
  - 2562
  html5lib.html5parser.getPhases.AfterFramesetPhase:
  - 2674
  - 2668
  - 2645
  html5lib.html5parser.getPhases.AfterFramesetPhase.endTagOther:
  - 2665
  html5lib.html5parser.getPhases.AfterFramesetPhase.processCharacters:
  - 2652
  html5lib.html5parser.getPhases.AfterFramesetPhase.startTagNoframes:
  - 2655
  html5lib.html5parser.getPhases.AfterFramesetPhase.startTagOther:
  - 2658
  html5lib.html5parser.getPhases.AfterHeadPhase:
  - 930
  - 940
  - 879
  html5lib.html5parser.getPhases.AfterHeadPhase.anythingElse:
  - 926
  html5lib.html5parser.getPhases.AfterHeadPhase.endTagHtmlBodyBr:
  - 919
  html5lib.html5parser.getPhases.AfterHeadPhase.endTagOther:
  - 923
  html5lib.html5parser.getPhases.AfterHeadPhase.processCharacters:
  - 886
  html5lib.html5parser.getPhases.AfterHeadPhase.processEOF:
  - 882
  html5lib.html5parser.getPhases.AfterHeadPhase.startTagBody:
  - 894
  html5lib.html5parser.getPhases.AfterHeadPhase.startTagFrameset:
  - 898
  html5lib.html5parser.getPhases.AfterHeadPhase.startTagFromHead:
  - 902
  - 904
  - 905
  - 906
  - 907
  - 908
  html5lib.html5parser.getPhases.AfterHeadPhase.startTagHead:
  - 912
  html5lib.html5parser.getPhases.AfterHeadPhase.startTagHtml:
  - 890
  html5lib.html5parser.getPhases.AfterHeadPhase.startTagOther:
  - 915
  html5lib.html5parser.getPhases.BeforeHeadPhase:
  - 708
  - 669
  - 702
  html5lib.html5parser.getPhases.BeforeHeadPhase.endTagImplyHead:
  - 695
  html5lib.html5parser.getPhases.BeforeHeadPhase.endTagOther:
  - 699
  html5lib.html5parser.getPhases.BeforeHeadPhase.processCharacters:
  - 679
  html5lib.html5parser.getPhases.BeforeHeadPhase.processEOF:
  - 672
  html5lib.html5parser.getPhases.BeforeHeadPhase.startTagHead:
  - 686
  html5lib.html5parser.getPhases.BeforeHeadPhase.startTagHtml:
  - 683
  html5lib.html5parser.getPhases.BeforeHeadPhase.startTagOther:
  - 691
  html5lib.html5parser.getPhases.BeforeHtmlPhase:
  - 632
  html5lib.html5parser.getPhases.BeforeHtmlPhase.insertHtmlElement:
  - 636
  html5lib.html5parser.getPhases.BeforeHtmlPhase.processCharacters:
  - 651
  html5lib.html5parser.getPhases.BeforeHtmlPhase.processComment:
  - 645
  html5lib.html5parser.getPhases.BeforeHtmlPhase.processEOF:
  - 641
  html5lib.html5parser.getPhases.BeforeHtmlPhase.processEndTag:
  - 665
  - 661
  - 662
  html5lib.html5parser.getPhases.BeforeHtmlPhase.processStartTag:
  - 657
  - 655
  html5lib.html5parser.getPhases.InBodyPhase:
  - 1650
  - 1603
  html5lib.html5parser.getPhases.InBodyPhase.__init__:
  - 950
  html5lib.html5parser.getPhases.InBodyPhase.addFormattingElement:
  - 961
  - 965
  - 966
  - 968
  - 969
  - 971
  - 972
  - 973
  - 974
  html5lib.html5parser.getPhases.InBodyPhase.endTagAppletMarqueeObject:
  - 1571
  - 1572
  - 1573
  - 1574
  - 1576
  - 1577
  - 1579
  - 1580
  html5lib.html5parser.getPhases.InBodyPhase.endTagBlock:
  - 1350
  - 1352
  - 1353
  - 1354
  - 1355
  - 1356
  - 1357
  - 1358
  - 1360
  html5lib.html5parser.getPhases.InBodyPhase.endTagBody:
  - 1325
  - 1326
  - 1328
  - 1329
  - 1330
  - 1336
  html5lib.html5parser.getPhases.InBodyPhase.endTagBr:
  - 1585
  - 1586
  - 1587
  - 1583
  html5lib.html5parser.getPhases.InBodyPhase.endTagForm:
  - 1365
  - 1366
  - 1369
  - 1370
  - 1371
  - 1373
  html5lib.html5parser.getPhases.InBodyPhase.endTagFormatting:
  - 1408
  - 1543
  - 1544
  - 1546
  - 1547
  - 1548
  - 1550
  - 1553
  - 1556
  - 1429
  - 1431
  - 1559
  - 1433
  - 1562
  - 1563
  - 1437
  - 1566
  - 1567
  - 1568
  - 1444
  - 1445
  - 1446
  - 1453
  - 1454
  - 1463
  - 1464
  - 1472
  - 1474
  - 1475
  - 1487
  - 1488
  - 1490
  - 1491
  - 1502
  - 1508
  - 1514
  - 1515
  - 1518
  - 1521
  - 1522
  - 1524
  - 1527
  - 1529
  - 1533
  - 1534
  - 1535
  html5lib.html5parser.getPhases.InBodyPhase.endTagHeading:
  - 1393
  - 1394
  - 1395
  - 1397
  - 1398
  - 1400
  - 1401
  - 1402
  - 1404
  html5lib.html5parser.getPhases.InBodyPhase.endTagHtml:
  - 1344
  - 1345
  html5lib.html5parser.getPhases.InBodyPhase.endTagListItem:
  - 1376
  - 1380
  - 1381
  - 1383
  - 1384
  - 1385
  - 1388
  - 1390
  html5lib.html5parser.getPhases.InBodyPhase.endTagOther:
  - 1600
  - 1590
  - 1591
  - 1592
  - 1593
  - 1594
  - 1595
  - 1599
  html5lib.html5parser.getPhases.InBodyPhase.endTagP:
  - 1312
  - 1313
  - 1314
  - 1315
  - 1317
  - 1318
  - 1319
  - 1320
  - 1322
  html5lib.html5parser.getPhases.InBodyPhase.processCharacters:
  - 1001
  - 1004
  - 1005
  - 1007
  - 1008
  html5lib.html5parser.getPhases.InBodyPhase.processEOF:
  - 978
  - 981
  - 982
  - 983
  html5lib.html5parser.getPhases.InBodyPhase.processSpaceCharactersDropNewline:
  - 992
  - 994
  - 996
  - 997
  - 998
  html5lib.html5parser.getPhases.InBodyPhase.processSpaceCharactersNonPre:
  - 1013
  - 1014
  html5lib.html5parser.getPhases.InBodyPhase.startTagA:
  - 1102
  - 1103
  - 1104
  - 1106
  - 1107
  - 1108
  - 1109
  - 1110
  - 1111
  - 1112
  html5lib.html5parser.getPhases.InBodyPhase.startTagAppletMarqueeObject:
  - 1140
  - 1141
  - 1142
  html5lib.html5parser.getPhases.InBodyPhase.startTagBody:
  - 1026
  - 1027
  - 1020
  - 1021
  html5lib.html5parser.getPhases.InBodyPhase.startTagButton:
  - 1129
  - 1130
  - 1132
  - 1135
  - 1136
  html5lib.html5parser.getPhases.InBodyPhase.startTagCloseP:
  - 1045
  - 1046
  - 1047
  html5lib.html5parser.getPhases.InBodyPhase.startTagForm:
  - 1057
  - 1058
  - 1060
  - 1061
  - 1062
  html5lib.html5parser.getPhases.InBodyPhase.startTagFormatting:
  - 1115
  - 1116
  html5lib.html5parser.getPhases.InBodyPhase.startTagFrameset:
  - 1031
  - 1032
  - 1034
  - 1037
  - 1038
  - 1040
  - 1041
  html5lib.html5parser.getPhases.InBodyPhase.startTagHeading:
  - 1094
  - 1095
  - 1096
  - 1097
  - 1098
  - 1099
  html5lib.html5parser.getPhases.InBodyPhase.startTagHr:
  - 1184
  - 1181
  - 1182
  - 1183
  html5lib.html5parser.getPhases.InBodyPhase.startTagIFrame:
  - 1235
  html5lib.html5parser.getPhases.InBodyPhase.startTagImage:
  - 1192
  - 1190
  html5lib.html5parser.getPhases.InBodyPhase.startTagInput:
  - 1169
  - 1170
  - 1171
  html5lib.html5parser.getPhases.InBodyPhase.startTagIsIndex:
  - 1217
  - 1220
  - 1223
  - 1224
  - 1225
  - 1197
  - 1198
  - 1201
  - 1203
  - 1205
  - 1206
  - 1208
  - 1212
  - 1214
  - 1215
  html5lib.html5parser.getPhases.InBodyPhase.startTagListItem:
  - 1072
  - 1073
  - 1074
  - 1075
  - 1077
  - 1081
  - 1082
  - 1083
  - 1085
  html5lib.html5parser.getPhases.InBodyPhase.startTagMath:
  - 1282
  - 1283
  - 1275
  - 1276
  - 1277
  - 1279
  html5lib.html5parser.getPhases.InBodyPhase.startTagMisplaced:
  - 1305
  - 1299
  html5lib.html5parser.getPhases.InBodyPhase.startTagNobr:
  - 1120
  - 1121
  - 1123
  - 1125
  - 1126
  - 1119
  html5lib.html5parser.getPhases.InBodyPhase.startTagNoscript:
  - 1241
  - 1238
  - 1239
  html5lib.html5parser.getPhases.InBodyPhase.startTagOpt:
  - 1248
  - 1249
  - 1250
  - 1251
  html5lib.html5parser.getPhases.InBodyPhase.startTagOther:
  - 1308
  - 1309
  html5lib.html5parser.getPhases.InBodyPhase.startTagParamSource:
  - 1176
  - 1177
  html5lib.html5parser.getPhases.InBodyPhase.startTagPlaintext:
  - 1088
  - 1089
  - 1090
  html5lib.html5parser.getPhases.InBodyPhase.startTagPreListing:
  - 1050
  - 1051
  - 1052
  html5lib.html5parser.getPhases.InBodyPhase.startTagProcessInHead:
  - 1017
  html5lib.html5parser.getPhases.InBodyPhase.startTagRawtext:
  - 1244
  - 1245
  html5lib.html5parser.getPhases.InBodyPhase.startTagRpRt:
  - 1268
  - 1269
  - 1270
  - 1271
  - 1272
  html5lib.html5parser.getPhases.InBodyPhase.startTagSelect:
  - 1257
  - 1254
  - 1255
  html5lib.html5parser.getPhases.InBodyPhase.startTagSvg:
  - 1287
  - 1288
  - 1289
  - 1291
  - 1294
  - 1295
  html5lib.html5parser.getPhases.InBodyPhase.startTagTable:
  - 1153
  - 1154
  - 1155
  - 1156
  html5lib.html5parser.getPhases.InBodyPhase.startTagTextarea:
  - 1228
  html5lib.html5parser.getPhases.InBodyPhase.startTagVoidFormatting:
  - 1161
  - 1162
  - 1163
  html5lib.html5parser.getPhases.InBodyPhase.startTagXmp:
  - 1146
  - 1147
  - 1148
  - 1150
  html5lib.html5parser.getPhases.InCaptionPhase:
  - 1955
  - 1948
  - 1895
  html5lib.html5parser.getPhases.InCaptionPhase.endTagCaption:
  - 1920
  - 1921
  - 1922
  - 1926
  - 1927
  - 1928
  - 1933
  - 1918
  html5lib.html5parser.getPhases.InCaptionPhase.endTagIgnore:
  - 1943
  html5lib.html5parser.getPhases.InCaptionPhase.endTagOther:
  - 1946
  html5lib.html5parser.getPhases.InCaptionPhase.endTagTable:
  - 1936
  - 1937
  - 1938
  - 1939
  html5lib.html5parser.getPhases.InCaptionPhase.ignoreEndTagCaption:
  - 1898
  html5lib.html5parser.getPhases.InCaptionPhase.processCharacters:
  - 1904
  html5lib.html5parser.getPhases.InCaptionPhase.processEOF:
  - 1901
  html5lib.html5parser.getPhases.InCaptionPhase.startTagOther:
  - 1915
  html5lib.html5parser.getPhases.InCaptionPhase.startTagTableElement:
  - 1907
  - 1909
  - 1910
  - 1911
  html5lib.html5parser.getPhases.InCellPhase:
  - 2216
  - 2283
  - 2276
  html5lib.html5parser.getPhases.InCellPhase.closeCell:
  - 2220
  - 2221
  - 2222
  - 2223
  html5lib.html5parser.getPhases.InCellPhase.endTagIgnore:
  - 2263
  html5lib.html5parser.getPhases.InCellPhase.endTagImply:
  - 2266
  - 2267
  - 2271
  html5lib.html5parser.getPhases.InCellPhase.endTagOther:
  - 2274
  html5lib.html5parser.getPhases.InCellPhase.endTagTableCell:
  - 2246
  - 2247
  - 2248
  - 2249
  - 2252
  - 2253
  - 2256
  - 2257
  - 2260
  html5lib.html5parser.getPhases.InCellPhase.processCharacters:
  - 2230
  html5lib.html5parser.getPhases.InCellPhase.processEOF:
  - 2227
  html5lib.html5parser.getPhases.InCellPhase.startTagOther:
  - 2243
  html5lib.html5parser.getPhases.InCellPhase.startTagTableOther:
  - 2240
  - 2233
  - 2234
  - 2235
  html5lib.html5parser.getPhases.InColumnGroupPhase:
  - 2021
  - 1965
  - 2015
  html5lib.html5parser.getPhases.InColumnGroupPhase.endTagCol:
  - 2007
  html5lib.html5parser.getPhases.InColumnGroupPhase.endTagColgroup:
  - 2001
  - 2003
  - 1998
  html5lib.html5parser.getPhases.InColumnGroupPhase.endTagOther:
  - 2010
  - 2011
  - 2012
  html5lib.html5parser.getPhases.InColumnGroupPhase.processCharacters:
  - 1981
  - 1982
  - 1983
  html5lib.html5parser.getPhases.InColumnGroupPhase.processEOF:
  - 1976
  - 1977
  - 1971
  - 1975
  html5lib.html5parser.getPhases.InColumnGroupPhase.startTagCol:
  - 1987
  - 1988
  html5lib.html5parser.getPhases.InColumnGroupPhase.startTagOther:
  - 1992
  - 1993
  - 1994
  html5lib.html5parser.getPhases.InForeignContentPhase:
  - 2428
  - 2430
  html5lib.html5parser.getPhases.InForeignContentPhase.adjustSVGTagNames:
  - 2477
  html5lib.html5parser.getPhases.InForeignContentPhase.processCharacters:
  - 2481
  - 2483
  - 2484
  - 2486
  html5lib.html5parser.getPhases.InForeignContentPhase.processEndTag:
  - 2534
  - 2537
  - 2516
  - 2518
  - 2519
  - 2522
  - 2524
  - 2525
  - 2527
  html5lib.html5parser.getPhases.InForeignContentPhase.processStartTag:
  - 2497
  - 2498
  - 2499
  - 2503
  - 2504
  - 2505
  - 2506
  - 2507
  - 2508
  - 2510
  - 2511
  - 2512
  - 2490
  - 2492
  - 2493
  html5lib.html5parser.getPhases.InFramesetPhase:
  - 2638
  - 2589
  - 2630
  html5lib.html5parser.getPhases.InFramesetPhase.endTagFrameset:
  - 2617
  - 2619
  - 2620
  - 2615
  html5lib.html5parser.getPhases.InFramesetPhase.endTagOther:
  - 2627
  html5lib.html5parser.getPhases.InFramesetPhase.processCharacters:
  - 2598
  html5lib.html5parser.getPhases.InFramesetPhase.processEOF:
  - 2592
  - 2593
  html5lib.html5parser.getPhases.InFramesetPhase.startTagFrame:
  - 2604
  - 2605
  html5lib.html5parser.getPhases.InFramesetPhase.startTagFrameset:
  - 2601
  html5lib.html5parser.getPhases.InFramesetPhase.startTagNoframes:
  - 2608
  html5lib.html5parser.getPhases.InFramesetPhase.startTagOther:
  - 2611
  html5lib.html5parser.getPhases.InHeadNoscriptPhase:
  - 816
  - 865
  - 872
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.anythingElse:
  - 863
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagBr:
  - 854
  - 855
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagNoscript:
  - 849
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.endTagOther:
  - 859
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.processCharacters:
  - 827
  - 828
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.processComment:
  - 824
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.processEOF:
  - 819
  - 820
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.processSpaceCharacters:
  - 832
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.startTagBaseLinkCommand:
  - 838
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.startTagHeadNoscript:
  - 841
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.startTagHtml:
  - 835
  html5lib.html5parser.getPhases.InHeadNoscriptPhase.startTagOther:
  - 844
  - 845
  html5lib.html5parser.getPhases.InHeadPhase:
  - 809
  - 714
  - 796
  html5lib.html5parser.getPhases.InHeadPhase.anythingElse:
  - 794
  html5lib.html5parser.getPhases.InHeadPhase.endTagHead:
  - 782
  html5lib.html5parser.getPhases.InHeadPhase.endTagHtmlBodyBr:
  - 787
  html5lib.html5parser.getPhases.InHeadPhase.endTagOther:
  - 791
  html5lib.html5parser.getPhases.InHeadPhase.processCharacters:
  - 722
  html5lib.html5parser.getPhases.InHeadPhase.processEOF:
  - 718
  html5lib.html5parser.getPhases.InHeadPhase.startTagBaseLinkCommand:
  - 732
  - 733
  html5lib.html5parser.getPhases.InHeadPhase.startTagHead:
  - 729
  html5lib.html5parser.getPhases.InHeadPhase.startTagHtml:
  - 726
  html5lib.html5parser.getPhases.InHeadPhase.startTagMeta:
  - 737
  - 738
  - 742
  - 743
  - 744
  - 745
  - 747
  - 752
  - 753
  - 754
  - 755
  html5lib.html5parser.getPhases.InHeadPhase.startTagNoFramesStyle:
  - 762
  html5lib.html5parser.getPhases.InHeadPhase.startTagNoscript:
  - 768
  - 765
  - 766
  html5lib.html5parser.getPhases.InHeadPhase.startTagOther:
  - 778
  html5lib.html5parser.getPhases.InHeadPhase.startTagScript:
  - 772
  html5lib.html5parser.getPhases.InHeadPhase.startTagTitle:
  - 758
  html5lib.html5parser.getPhases.InRowPhase:
  - 2197
  - 2205
  - 2127
  html5lib.html5parser.getPhases.InRowPhase.clearStackToTableRowContext:
  - 2132
  - 2134
  html5lib.html5parser.getPhases.InRowPhase.endTagIgnore:
  - 2191
  html5lib.html5parser.getPhases.InRowPhase.endTagOther:
  - 2195
  html5lib.html5parser.getPhases.InRowPhase.endTagTable:
  - 2176
  - 2177
  - 2180
  html5lib.html5parser.getPhases.InRowPhase.endTagTableRowGroup:
  - 2184
  - 2185
  - 2188
  html5lib.html5parser.getPhases.InRowPhase.endTagTr:
  - 2168
  - 2173
  - 2166
  - 2167
  html5lib.html5parser.getPhases.InRowPhase.ignoreEndTagTr:
  - 2137
  html5lib.html5parser.getPhases.InRowPhase.processCharacters:
  - 2147
  html5lib.html5parser.getPhases.InRowPhase.processEOF:
  - 2141
  html5lib.html5parser.getPhases.InRowPhase.processSpaceCharacters:
  - 2144
  html5lib.html5parser.getPhases.InRowPhase.startTagOther:
  - 2163
  html5lib.html5parser.getPhases.InRowPhase.startTagTableCell:
  - 2153
  - 2150
  - 2151
  html5lib.html5parser.getPhases.InRowPhase.startTagTableOther:
  - 2156
  - 2157
  - 2159
  html5lib.html5parser.getPhases.InSelectInTablePhase:
  - 2421
  - 2390
  - 2415
  html5lib.html5parser.getPhases.InSelectInTablePhase.endTagOther:
  - 2413
  html5lib.html5parser.getPhases.InSelectInTablePhase.endTagTable:
  - 2408
  - 2409
  - 2407
  html5lib.html5parser.getPhases.InSelectInTablePhase.processCharacters:
  - 2396
  html5lib.html5parser.getPhases.InSelectInTablePhase.processEOF:
  - 2393
  html5lib.html5parser.getPhases.InSelectInTablePhase.startTagOther:
  - 2404
  html5lib.html5parser.getPhases.InSelectInTablePhase.startTagTable:
  - 2400
  - 2399
  html5lib.html5parser.getPhases.InSelectPhase:
  - 2291
  - 2372
  - 2382
  html5lib.html5parser.getPhases.InSelectPhase.endTagOptgroup:
  - 2346
  - 2348
  - 2350
  - 2351
  - 2354
  html5lib.html5parser.getPhases.InSelectPhase.endTagOption:
  - 2338
  - 2339
  - 2341
  html5lib.html5parser.getPhases.InSelectPhase.endTagOther:
  - 2369
  html5lib.html5parser.getPhases.InSelectPhase.endTagSelect:
  - 2358
  - 2359
  - 2361
  - 2362
  - 2366
  html5lib.html5parser.getPhases.InSelectPhase.processCharacters:
  - 2301
  - 2303
  html5lib.html5parser.getPhases.InSelectPhase.processEOF:
  - 2296
  - 2295
  html5lib.html5parser.getPhases.InSelectPhase.startTagInput:
  - 2323
  - 2324
  - 2325
  html5lib.html5parser.getPhases.InSelectPhase.startTagOptgroup:
  - 2312
  - 2313
  - 2314
  - 2315
  - 2316
  html5lib.html5parser.getPhases.InSelectPhase.startTagOption:
  - 2307
  - 2308
  - 2309
  html5lib.html5parser.getPhases.InSelectPhase.startTagOther:
  - 2334
  html5lib.html5parser.getPhases.InSelectPhase.startTagScript:
  - 2331
  html5lib.html5parser.getPhases.InSelectPhase.startTagSelect:
  - 2320
  - 2319
  html5lib.html5parser.getPhases.InTableBodyPhase:
  - 2108
  - 2029
  - 2117
  html5lib.html5parser.getPhases.InTableBodyPhase.clearStackToTableBodyContext:
  - 2037
  - 2038
  html5lib.html5parser.getPhases.InTableBodyPhase.endTagIgnore:
  - 2102
  html5lib.html5parser.getPhases.InTableBodyPhase.endTagOther:
  - 2106
  html5lib.html5parser.getPhases.InTableBodyPhase.endTagTable:
  - 2089
  - 2090
  - 2091
  - 2092
  - 2093
  - 2094
  - 2099
  html5lib.html5parser.getPhases.InTableBodyPhase.endTagTableRowGroup:
  - 2080
  - 2081
  - 2082
  - 2085
  html5lib.html5parser.getPhases.InTableBodyPhase.processCharacters:
  - 2049
  html5lib.html5parser.getPhases.InTableBodyPhase.processEOF:
  - 2043
  html5lib.html5parser.getPhases.InTableBodyPhase.processSpaceCharacters:
  - 2046
  html5lib.html5parser.getPhases.InTableBodyPhase.startTagOther:
  - 2077
  html5lib.html5parser.getPhases.InTableBodyPhase.startTagTableCell:
  - 2057
  - 2059
  html5lib.html5parser.getPhases.InTableBodyPhase.startTagTableOther:
  - 2064
  - 2065
  - 2066
  - 2067
  - 2068
  - 2069
  - 2074
  html5lib.html5parser.getPhases.InTableBodyPhase.startTagTr:
  - 2052
  - 2053
  html5lib.html5parser.getPhases.InTablePhase:
  - 1825
  - 1839
  - 1703
  html5lib.html5parser.getPhases.InTablePhase.clearStackToTableContext:
  - 1711
  html5lib.html5parser.getPhases.InTablePhase.endTagIgnore:
  - 1816
  html5lib.html5parser.getPhases.InTablePhase.endTagOther:
  - 1819
  - 1822
  html5lib.html5parser.getPhases.InTablePhase.endTagTable:
  - 1800
  - 1801
  - 1802
  - 1803
  - 1807
  - 1808
  - 1809
  - 1813
  html5lib.html5parser.getPhases.InTablePhase.insertText:
  - 1738
  html5lib.html5parser.getPhases.InTablePhase.processCharacters:
  - 1732
  html5lib.html5parser.getPhases.InTablePhase.processEOF:
  - 1716
  - 1717
  html5lib.html5parser.getPhases.InTablePhase.processSpaceCharacters:
  - 1726
  html5lib.html5parser.getPhases.InTablePhase.startTagCaption:
  - 1744
  - 1742
  - 1743
  html5lib.html5parser.getPhases.InTablePhase.startTagCol:
  - 1753
  html5lib.html5parser.getPhases.InTablePhase.startTagColgroup:
  - 1748
  - 1749
  html5lib.html5parser.getPhases.InTablePhase.startTagForm:
  - 1786
  - 1787
  - 1788
  - 1790
  html5lib.html5parser.getPhases.InTablePhase.startTagImplyTbody:
  - 1762
  html5lib.html5parser.getPhases.InTablePhase.startTagInput:
  - 1776
  - 1777
  - 1778
  - 1779
  - 1781
  - 1783
  html5lib.html5parser.getPhases.InTablePhase.startTagOther:
  - 1793
  - 1796
  html5lib.html5parser.getPhases.InTablePhase.startTagRowGroup:
  - 1757
  - 1758
  html5lib.html5parser.getPhases.InTablePhase.startTagStyleScript:
  - 1773
  html5lib.html5parser.getPhases.InTablePhase.startTagTable:
  - 1768
  - 1769
  - 1766
  html5lib.html5parser.getPhases.InTableTextPhase.__init__:
  - 1850
  html5lib.html5parser.getPhases.InTableTextPhase.flushCharacters:
  - 1856
  - 1858
  - 1859
  - 1860
  - 1855
  html5lib.html5parser.getPhases.InTableTextPhase.processCharacters:
  - 1874
  - 1876
  html5lib.html5parser.getPhases.InTableTextPhase.processComment:
  - 1864
  html5lib.html5parser.getPhases.InTableTextPhase.processEOF:
  - 1869
  html5lib.html5parser.getPhases.InTableTextPhase.processEndTag:
  - 1889
  html5lib.html5parser.getPhases.InTableTextPhase.processSpaceCharacters:
  - 1880
  html5lib.html5parser.getPhases.InTableTextPhase.processStartTag:
  - 1884
  html5lib.html5parser.getPhases.InitialPhase:
  - 502
  html5lib.html5parser.getPhases.InitialPhase.processCharacters:
  - 610
  - 611
  html5lib.html5parser.getPhases.InitialPhase.processComment:
  - 508
  html5lib.html5parser.getPhases.InitialPhase.processDoctype:
  - 516
  - 518
  - 520
  - 523
  - 588
  - 525
  - 526
  - 528
  - 529
  - 592
  - 594
  - 597
  html5lib.html5parser.getPhases.InitialPhase.processEOF:
  - 627
  - 628
  html5lib.html5parser.getPhases.InitialPhase.processEndTag:
  - 621
  - 623
  html5lib.html5parser.getPhases.InitialPhase.processStartTag:
  - 617
  - 615
  html5lib.html5parser.getPhases.Phase:
  - 430
  html5lib.html5parser.getPhases.Phase.processCharacters:
  - 452
  html5lib.html5parser.getPhases.Phase.processComment:
  - 446
  html5lib.html5parser.getPhases.Phase.processDoctype:
  - 449
  html5lib.html5parser.getPhases.Phase.processEndTag:
  - 496
  - 498
  - 491
  - 499
  html5lib.html5parser.getPhases.Phase.processSpaceCharacters:
  - 455
  html5lib.html5parser.getPhases.Phase.processStartTag:
  - 464
  - 472
  - 469
  - 471
  html5lib.html5parser.getPhases.Phase.startTagHtml:
  - 480
  - 475
  - 476
  - 479
  html5lib.html5parser.getPhases.TextPhase:
  - 1697
  - 1669
  - 1695
  html5lib.html5parser.getPhases.TextPhase.endTagOther:
  - 1692
  html5lib.html5parser.getPhases.TextPhase.endTagScript:
  - 1685
  html5lib.html5parser.getPhases.TextPhase.processCharacters:
  - 1672
  html5lib.html5parser.getPhases.TextPhase.processEOF:
  - 1675
  - 1677
  html5lib.html5parser.getPhases.getMetaclass:
  - 424
  - 423
  html5lib.html5parser.getPhases.log:
  - 402
  - 403
  html5lib.html5parser.getPhases.log.wrapped:
  - 417
  - 419
  - 406
  - 409
  - 412
  html5lib.html5parser.impliedTagToken:
  - 2790
  html5lib.html5parser.method_decorator_metaclass.Decorated.__new__:
  - 82
  - 77
  - 78
  - 79
  html5lib.html5parser.parse:
  - 27
  - 44
  - 45
  - 46
  html5lib.html5parser.parseFragment:
  - 50
  - 69
  - 70
  - 71
  html5lib.serializer:
  - 32
  - 33
  - 34
  - 36
  - 37
  - 72
  - 13
  - 14
  - 15
  - 26
  - 27
  - 29
  - 30
  html5lib.serializer.HTMLSerializer.__init__:
  - 136
  - 214
  - 215
  - 217
  - 219
  - 220
  html5lib.serializer.HTMLSerializer.encode:
  - 225
  - 226
  - 227
  html5lib.serializer.HTMLSerializer.encodeStrict:
  - 232
  - 233
  - 234
  html5lib.serializer.HTMLSerializer.render:
  - 376
  - 395
  - 396
  - 398
  html5lib.serializer.HTMLSerializer.serialize:
  - 257
  - 258
  - 260
  - 261
  - 263
  - 265
  - 267
  - 270
  - 272
  - 274
  - 275
  - 276
  - 277
  - 284
  - 286
  - 287
  - 288
  - 289
  - 290
  - 292
  - 294
  - 296
  - 297
  - 299
  - 300
  - 301
  - 305
  - 307
  - 308
  - 309
  - 310
  - 311
  - 312
  - 314
  - 315
  - 316
  - 317
  - 321
  - 322
  - 323
  - 324
  - 326
  - 327
  - 329
  - 331
  - 332
  - 334
  - 335
  - 336
  - 337
  - 339
  - 340
  - 341
  - 342
  - 344
  - 345
  - 347
  - 349
  - 351
  - 352
  - 353
  - 355
  - 357
  - 358
  - 359
  - 361
  - 364
  - 365
  - 366
  - 370
  - 244
  - 373
  - 246
  - 250
  - 252
  - 255
  html5lib.serializer.HTMLSerializer.serializeError:
  - 402
  - 403
  html5lib.serializer.SerializeError:
  - 408
  html5lib.serializer.htmlentityreplace_errors:
  - 64
  - 66
  - 67
  - 69
  - 43
  - 47
  - 48
  - 52
  - 53
  - 56
  - 57
  - 58
  - 59
  - 60
  - 61
  - 62
  - 63
  html5lib.serializer.serialize:
  - 100
  - 99
  - 76
  - 101
  html5lib.treeadapters:
  - 1
  - 30
  html5lib.treeadapters.genshi.to_genshi:
  - 8
  - 16
  - 18
  - 19
  - 20
  - 21
  - 24
  - 25
  - 29
  - 30
  - 31
  - 32
  - 35
  - 36
  - 41
  - 43
  - 44
  - 46
  - 47
  - 53
  - 54
  html5lib.treeadapters.sax:
  - 8
  - 9
  html5lib.treeadapters.sax.to_sax:
  - 14
  - 21
  - 22
  - 23
  - 25
  - 27
  - 29
  - 30
  - 32
  - 35
  - 36
  - 38
  - 39
  - 41
  - 42
  - 43
  - 48
  - 49
  - 50
  html5lib.treebuilders:
  - 1
  html5lib.treebuilders.base:
  - 12
  - 13
  - 14
  - 16
  - 18
  html5lib.treebuilders.base.ActiveFormattingElements.append:
  - 128
  - 130
  - 132
  - 133
  - 135
  - 124
  - 126
  - 127
  html5lib.treebuilders.base.ActiveFormattingElements.nodesEqual:
  - 138
  - 141
  html5lib.treebuilders.base.Node:
  - 24
  html5lib.treebuilders.base.Node.__init__:
  - 26
  html5lib.treebuilders.base.Node.__str__:
  - 48
  - 49
  - 46
  html5lib.treebuilders.base.Node.appendChild:
  - 58
  html5lib.treebuilders.base.Node.cloneNode:
  - 111
  html5lib.treebuilders.base.Node.hasContent:
  - 117
  html5lib.treebuilders.base.Node.insertBefore:
  - 78
  html5lib.treebuilders.base.Node.insertText:
  - 66
  html5lib.treebuilders.base.Node.removeChild:
  - 90
  html5lib.treebuilders.base.Node.reparentChildren:
  - 98
  - 107
  - 106
  html5lib.treebuilders.base.TreeBuilder:
  - 322
  - 148
  html5lib.treebuilders.base.TreeBuilder.__init__:
  - 179
  - 174
  - 183
  html5lib.treebuilders.base.TreeBuilder._setInsertFromTable:
  - 314
  - 317
  html5lib.treebuilders.base.TreeBuilder.clearActiveFormattingElements:
  - 266
  - 268
  html5lib.treebuilders.base.TreeBuilder.createElement:
  - 305
  - 306
  - 303
  html5lib.treebuilders.base.TreeBuilder.elementInActiveFormattingElements:
  - 280
  - 275
  - 278
  - 271
  html5lib.treebuilders.base.TreeBuilder.elementInScope:
  - 201
  - 202
  - 203
  - 205
  - 209
  - 210
  - 212
  - 214
  html5lib.treebuilders.base.TreeBuilder.generateImpliedEndTags:
  - 394
  - 396
  - 399
  html5lib.treebuilders.base.TreeBuilder.getDocument:
  - 402
  html5lib.treebuilders.base.TreeBuilder.getFragment:
  - 408
  - 409
  - 406
  html5lib.treebuilders.base.TreeBuilder.getTableMisnestedNodePosition:
  - 386
  - 366
  - 374
  - 375
  - 378
  - 381
  html5lib.treebuilders.base.TreeBuilder.insertComment:
  - 298
  - 300
  html5lib.treebuilders.base.TreeBuilder.insertDoctype:
  - 294
  - 295
  html5lib.treebuilders.base.TreeBuilder.insertElementNormal:
  - 326
  - 327
  - 328
  - 330
  - 331
  html5lib.treebuilders.base.TreeBuilder.insertElementTable:
  - 335
  - 336
  - 337
  - 338
  - 342
  - 343
  - 344
  - 346
  - 347
  html5lib.treebuilders.base.TreeBuilder.insertRoot:
  - 285
  - 286
  - 287
  html5lib.treebuilders.base.TreeBuilder.insertText:
  - 352
  - 355
  - 358
  - 362
  - 363
  - 351
  html5lib.treebuilders.base.TreeBuilder.reconstructActiveFormattingElements:
  - 225
  - 229
  - 262
  - 231
  - 236
  - 250
  - 253
  html5lib.treebuilders.base.TreeBuilder.reset:
  - 187
  - 195
  html5lib.treebuilders.base.TreeBuilder.testSerializer:
  - 413
  html5lib.treebuilders.dom:
  - 239
  html5lib.treebuilders.dom.getDomBuilder:
  - 235
  html5lib.treebuilders.dom.getDomBuilder.AttrList.__delitem__:
  - 51
  html5lib.treebuilders.dom.getDomBuilder.AttrList.__getitem__:
  - 45
  html5lib.treebuilders.dom.getDomBuilder.AttrList.__iter__:
  - 25
  html5lib.treebuilders.dom.getDomBuilder.AttrList.__len__:
  - 36
  html5lib.treebuilders.dom.getDomBuilder.AttrList.__setitem__:
  - 28
  - 31
  html5lib.treebuilders.dom.getDomBuilder.AttrList.items:
  - 39
  html5lib.treebuilders.dom.getDomBuilder.AttrList.values:
  - 42
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder:
  - 121
  - 107
  - 61
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.<lambda1>:
  - 61
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.__init__:
  - 58
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.appendChild:
  - 66
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.cloneNode:
  - 110
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.getAttributes:
  - 92
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.getNameTuple:
  - 116
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.hasContent:
  - 113
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.insertBefore:
  - 76
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.insertText:
  - 73
  - 69
  - 70
  - 71
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.removeChild:
  - 80
  - 81
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.reparentChildren:
  - 88
  - 85
  - 87
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder.setAttributes:
  - 96
  - 97
  - 98
  - 102
  - 105
  - 95
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.appendChild:
  - 154
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.commentClass:
  - 148
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.documentClass:
  - 125
  - 126
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.elementClass:
  - 145
  - 140
  - 141
  - 143
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.fragmentClass:
  - 151
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.getFragment:
  - 163
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.insertDoctype:
  - 136
  - 133
  - 134
  - 135
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.insertText:
  - 167
  - 168
  - 171
  - 173
  - 174
  - 175
  - 176
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder.testSerializer:
  - 157
  html5lib.treebuilders.dom.getDomBuilder.testSerializer:
  - 233
  - 182
  - 231
  html5lib.treebuilders.dom.getDomBuilder.testSerializer.serializeElement:
  - 186
  - 187
  - 188
  - 191
  - 194
  - 196
  - 197
  - 198
  - 199
  - 200
  - 201
  - 202
  - 203
  - 204
  - 206
  - 212
  - 213
  - 215
  - 216
  - 220
  - 224
  - 226
  - 227
  - 229
  - 230
  html5lib.treebuilders.etree:
  - 16
  - 343
  html5lib.treebuilders.etree.getETreeBuilder:
  - 340
  - 21
  html5lib.treebuilders.etree.getETreeBuilder.Comment:
  - 165
  html5lib.treebuilders.etree.getETreeBuilder.Comment.__init__:
  - 154
  html5lib.treebuilders.etree.getETreeBuilder.Document.__init__:
  - 194
  html5lib.treebuilders.etree.getETreeBuilder.DocumentFragment.__init__:
  - 198
  html5lib.treebuilders.etree.getETreeBuilder.DocumentType:
  - 181
  - 190
  html5lib.treebuilders.etree.getETreeBuilder.DocumentType.__init__:
  - 169
  html5lib.treebuilders.etree.getETreeBuilder.DocumentType._getPublicId:
  - 175
  html5lib.treebuilders.etree.getETreeBuilder.DocumentType._getSystemId:
  - 184
  html5lib.treebuilders.etree.getETreeBuilder.DocumentType._setPublicId:
  - 178
  - 179
  html5lib.treebuilders.etree.getETreeBuilder.DocumentType._setSystemId:
  - 187
  - 188
  html5lib.treebuilders.etree.getETreeBuilder.Element:
  - 89
  - 51
  - 60
  - 78
  html5lib.treebuilders.etree.getETreeBuilder.Element.__init__:
  - 27
  - 29
  html5lib.treebuilders.etree.getETreeBuilder.Element._getETreeTag:
  - 38
  html5lib.treebuilders.etree.getETreeBuilder.Element._setAttributes:
  - 72
  - 67
  - 68
  - 71
  html5lib.treebuilders.etree.getETreeBuilder.Element._setChildNodes:
  - 86
  - 87
  html5lib.treebuilders.etree.getETreeBuilder.Element._setName:
  - 46
  html5lib.treebuilders.etree.getETreeBuilder.Element._setNamespace:
  - 55
  html5lib.treebuilders.etree.getETreeBuilder.Element.appendChild:
  - 96
  - 97
  html5lib.treebuilders.etree.getETreeBuilder.Element.cloneNode:
  - 136
  - 134
  - 135
  html5lib.treebuilders.etree.getETreeBuilder.Element.hasContent:
  - 92
  - 93
  html5lib.treebuilders.etree.getETreeBuilder.Element.insertBefore:
  - 101
  - 102
  html5lib.treebuilders.etree.getETreeBuilder.Element.insertText:
  - 129
  - 111
  - 112
  - 115
  - 117
  - 122
  - 123
  - 124
  - 125
  html5lib.treebuilders.etree.getETreeBuilder.Element.removeChild:
  - 106
  - 107
  html5lib.treebuilders.etree.getETreeBuilder.Element.reparentChildren:
  - 145
  - 140
  - 148
  - 143
  html5lib.treebuilders.etree.getETreeBuilder.TreeBuilder.getDocument:
  - 328
  - 331
  - 332
  - 335
  html5lib.treebuilders.etree.getETreeBuilder.TreeBuilder.getFragment:
  - 338
  html5lib.treebuilders.etree.getETreeBuilder.TreeBuilder.testSerializer:
  - 325
  html5lib.treebuilders.etree.getETreeBuilder.testSerializer:
  - 258
  - 260
  html5lib.treebuilders.etree.getETreeBuilder.testSerializer.serializeElement:
  - 256
  - 257
  - 204
  - 205
  - 206
  - 207
  - 208
  - 209
  - 210
  - 213
  - 214
  - 215
  - 216
  - 217
  - 218
  - 220
  - 222
  - 223
  - 225
  - 226
  - 227
  - 229
  - 232
  - 235
  - 237
  - 239
  - 240
  - 241
  - 242
  - 247
  - 249
  - 250
  - 251
  - 252
  - 254
  - 255
  html5lib.treebuilders.etree.getETreeBuilder.tostring:
  - 312
  - 265
  - 314
  - 263
  html5lib.treebuilders.etree.getETreeBuilder.tostring.serializeElement:
  - 268
  - 269
  - 271
  - 272
  - 273
  - 274
  - 275
  - 278
  - 279
  - 280
  - 281
  - 282
  - 284
  - 287
  - 288
  - 290
  - 291
  - 294
  - 295
  - 297
  - 298
  - 299
  - 300
  - 301
  - 302
  - 304
  - 305
  - 307
  - 309
  - 310
  html5lib.treebuilders.etree_lxml:
  - 1
  - 35
  - 37
  html5lib.treebuilders.etree_lxml.Document:
  - 62
  html5lib.treebuilders.etree_lxml.Document.appendChild:
  - 57
  - 53
  - 54
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__:
  - 283
  - 194
  - 195
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__delitem__:
  - 219
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__getitem__:
  - 210
  - 211
  - 212
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__iter__:
  - 222
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__len__:
  - 225
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.__setitem__:
  - 216
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes._coerceKey:
  - 203
  - 204
  - 206
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes.clear:
  - 228
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment:
  - 278
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment.__init__:
  - 268
  - 269
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment._setData:
  - 272
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element:
  - 244
  - 254
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.__init__:
  - 232
  - 233
  - 234
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element._getName:
  - 242
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element._setAttributes:
  - 251
  - 252
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element._setName:
  - 237
  - 238
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.cloneNode:
  - 261
  - 262
  - 263
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element.insertText:
  - 257
  - 258
  html5lib.treebuilders.etree_lxml.TreeBuilder.getDocument:
  - 298
  - 295
  html5lib.treebuilders.etree_lxml.TreeBuilder.getFragment:
  - 303
  - 304
  - 305
  - 306
  - 307
  html5lib.treebuilders.etree_lxml.TreeBuilder.insertCommentInitial:
  - 329
  html5lib.treebuilders.etree_lxml.TreeBuilder.insertCommentMain:
  - 332
  - 333
  - 334
  - 335
  html5lib.treebuilders.etree_lxml.TreeBuilder.insertDoctype:
  - 320
  - 321
  - 323
  - 315
  - 316
  - 319
  html5lib.treebuilders.etree_lxml.TreeBuilder.insertRoot:
  - 386
  - 388
  - 389
  - 343
  - 346
  - 349
  - 350
  - 352
  - 353
  - 354
  - 355
  - 362
  - 363
  - 365
  - 368
  - 369
  - 370
  - 373
  - 374
  - 378
  - 379
  html5lib.treebuilders.etree_lxml.TreeBuilder.reset:
  - 286
  html5lib.treebuilders.etree_lxml.TreeBuilder.testSerializer:
  - 292
  html5lib.treebuilders.etree_lxml.testSerializer:
  - 67
  - 139
  - 141
  html5lib.treebuilders.etree_lxml.testSerializer.serializeElement:
  - 129
  - 130
  - 132
  - 133
  - 135
  - 136
  - 137
  - 138
  - 70
  - 71
  - 73
  - 74
  - 75
  - 83
  - 84
  - 85
  - 86
  - 88
  - 89
  - 90
  - 92
  - 93
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 104
  - 105
  - 106
  - 107
  - 108
  - 110
  - 111
  - 113
  - 114
  - 116
  - 118
  - 119
  - 120
  - 121
  - 122
  - 126
  - 127
  html5lib.treebuilders.etree_lxml.tostring:
  - 145
  - 180
  - 182
  html5lib.treebuilders.etree_lxml.tostring.serializeElement:
  - 149
  - 150
  - 151
  - 155
  - 156
  - 158
  - 159
  - 163
  - 164
  - 166
  - 167
  - 168
  - 169
  - 170
  - 172
  - 173
  - 175
  - 177
  - 178
  html5lib.treebuilders.getTreeBuilder:
  - 67
  - 68
  - 69
  - 40
  - 72
  - 76
  - 77
  - 80
  - 82
  - 85
  - 88
  html5lib.treewalkers:
  - 1
  html5lib.treewalkers.base:
  - 17
  html5lib.treewalkers.base.NonRecursiveTreeWalker.__iter__:
  - 196
  - 200
  - 201
  - 203
  - 204
  - 205
  - 207
  - 209
  - 210
  - 212
  - 215
  - 217
  - 218
  - 220
  - 221
  - 223
  - 227
  - 229
  - 230
  - 234
  - 238
  - 240
  - 242
  - 243
  - 244
  - 247
  - 248
  - 252
  html5lib.treewalkers.base.TreeWalker:
  - 21
  html5lib.treewalkers.base.TreeWalker.__init__:
  - 28
  html5lib.treewalkers.base.TreeWalker.comment:
  - 139
  html5lib.treewalkers.base.TreeWalker.doctype:
  - 149
  html5lib.treewalkers.base.TreeWalker.emptyTag:
  - 49
  - 66
  - 67
  - 63
  html5lib.treewalkers.base.TreeWalker.endTag:
  - 87
  html5lib.treewalkers.base.TreeWalker.entity:
  - 166
  html5lib.treewalkers.base.TreeWalker.error:
  - 39
  html5lib.treewalkers.base.TreeWalker.startTag:
  - 70
  html5lib.treewalkers.base.TreeWalker.text:
  - 128
  - 129
  - 131
  - 132
  - 101
  - 133
  - 134
  - 135
  - 136
  - 126
  - 127
  html5lib.treewalkers.base.TreeWalker.unknown:
  - 176
  - 177
  html5lib.treewalkers.concatenateCharacterTokens:
  - 67
  - 69
  - 70
  - 72
  - 73
  - 75
  - 76
  - 77
  html5lib.treewalkers.dom.TreeWalker.getNodeDetails:
  - 10
  - 13
  - 16
  - 18
  - 19
  - 20
  - 25
  - 27
  - 30
  html5lib.treewalkers.etree:
  - 11
  - 131
  html5lib.treewalkers.etree.getETreeBuilder:
  - 16
  - 128
  html5lib.treewalkers.etree.getETreeBuilder.TreeWalker:
  - 19
  html5lib.treewalkers.etree.getETreeBuilder.TreeWalker.getFirstChild:
  - 73
  - 78
  - 81
  - 83
  - 84
  html5lib.treewalkers.etree.getETreeBuilder.TreeWalker.getNextSibling:
  - 96
  - 97
  - 102
  - 104
  - 90
  - 95
  html5lib.treewalkers.etree.getETreeBuilder.TreeWalker.getNodeDetails:
  - 33
  - 35
  - 36
  - 40
  - 41
  - 43
  - 46
  - 48
  - 50
  - 54
  - 56
  - 57
  - 58
  - 62
  - 63
  - 64
  - 65
  - 66
  - 70
  html5lib.treewalkers.etree.getETreeBuilder.TreeWalker.getParentNode:
  - 110
  - 115
  - 116
  - 121
  - 122
  - 125
  - 126
  html5lib.treewalkers.etree_lxml.FragmentRoot.__init__:
  - 77
  html5lib.treewalkers.etree_lxml.FragmentWrapper.__bool__:
  - 112
  html5lib.treewalkers.etree_lxml.FragmentWrapper.__getattr__:
  - 98
  html5lib.treewalkers.etree_lxml.FragmentWrapper.__init__:
  - 88
  - 89
  - 92
  - 93
  html5lib.treewalkers.etree_lxml.FragmentWrapper.__len__:
  - 124
  html5lib.treewalkers.etree_lxml.FragmentWrapper.__str__:
  - 118
  html5lib.treewalkers.etree_lxml.FragmentWrapper.__unicode__:
  - 121
  html5lib.treewalkers.etree_lxml.FragmentWrapper.getnext:
  - 102
  - 103
  html5lib.treewalkers.etree_lxml.Root.__init__:
  - 32
  - 33
  - 38
  - 42
  - 43
  - 45
  - 46
  - 29
  - 30
  - 31
  html5lib.treewalkers.etree_lxml.TreeWalker.__init__:
  - 130
  - 131
  - 132
  - 134
  - 135
  - 136
  - 137
  html5lib.treewalkers.etree_lxml.TreeWalker.getFirstChild:
  - 184
  - 181
  - 183
  html5lib.treewalkers.etree_lxml.TreeWalker.getNextSibling:
  - 193
  - 196
  - 201
  - 203
  - 190
  html5lib.treewalkers.etree_lxml.TreeWalker.getNodeDetails:
  - 140
  - 143
  - 145
  - 148
  - 151
  - 152
  - 154
  - 155
  - 157
  - 158
  - 162
  - 163
  - 164
  - 167
  - 168
  - 169
  - 170
  - 171
  - 172
  - 173
  - 174
  - 177
  - 178
  html5lib.treewalkers.etree_lxml.TreeWalker.getParentNode:
  - 209
  - 212
  - 206
  - 215
  html5lib.treewalkers.etree_lxml.ensure_str:
  - 17
  - 20
  - 15
  html5lib.treewalkers.genshi.TreeWalker.__iter__:
  - 16
  - 17
  - 18
  - 19
  - 23
  - 24
  - 25
  html5lib.treewalkers.genshi.TreeWalker.tokens:
  - 29
  - 34
  - 35
  - 40
  - 41
  - 44
  - 46
  - 48
  - 51
  - 52
  - 54
  - 55
  - 57
  - 58
  - 59
  - 61
  - 62
  - 64
  - 69
  html5lib.treewalkers.getTreeWalker:
  - 45
  - 46
  - 47
  - 50
  - 53
  - 22
  - 56
  - 58
  - 61
  - 62
  html5lib.treewalkers.pprint:
  - 128
  - 129
  - 134
  - 135
  - 140
  - 143
  - 145
  - 146
  - 148
  - 154
  - 81
  - 90
  - 92
  - 94
  - 95
  - 102
  - 106
  - 107
  - 108
  - 115
  - 117
  - 120
  - 123
  - 124
  - 126
  - 127
Fuzzer filename: /src/fuzz_parse.py
Inheritance:
  html5lib._ihatexml.InfosetFilter:
  - object
  html5lib._inputstream.BufferedStream:
  - object
  html5lib._inputstream.ContentAttrParser:
  - object
  html5lib._inputstream.EncodingBytes:
  - bytes
  html5lib._inputstream.EncodingParser:
  - object
  html5lib._inputstream.HTMLBinaryInputStream:
  - HTMLUnicodeInputStream
  html5lib._inputstream.HTMLUnicodeInputStream:
  - object
  html5lib._tokenizer.HTMLTokenizer:
  - object
  html5lib._trie._base.Trie:
  - Mapping
  html5lib._trie.py.Trie:
  - ABCTrie
  html5lib._utils.BoundMethodDispatcher:
  - Mapping
  html5lib._utils.MethodDispatcher:
  - dict
  html5lib.constants.DataLossWarning:
  - UserWarning
  html5lib.constants._ReparseException:
  - Exception
  html5lib.filters.alphabeticalattributes.Filter: []
  html5lib.filters.base.Filter:
  - object
  html5lib.filters.inject_meta_charset.Filter: []
  html5lib.filters.lint.Filter: []
  html5lib.filters.optionaltags.Filter: []
  html5lib.filters.sanitizer.Filter: []
  html5lib.filters.whitespace.Filter: []
  html5lib.html5parser.HTMLParser:
  - object
  html5lib.html5parser.ParseError:
  - Exception
  html5lib.html5parser.getPhases.AfterAfterBodyPhase:
  - Phase
  html5lib.html5parser.getPhases.AfterAfterFramesetPhase:
  - Phase
  html5lib.html5parser.getPhases.AfterBodyPhase:
  - Phase
  html5lib.html5parser.getPhases.AfterFramesetPhase:
  - Phase
  html5lib.html5parser.getPhases.AfterHeadPhase:
  - Phase
  html5lib.html5parser.getPhases.BeforeHeadPhase:
  - Phase
  html5lib.html5parser.getPhases.BeforeHtmlPhase:
  - Phase
  html5lib.html5parser.getPhases.InBodyPhase:
  - Phase
  html5lib.html5parser.getPhases.InCaptionPhase:
  - Phase
  html5lib.html5parser.getPhases.InCellPhase:
  - Phase
  html5lib.html5parser.getPhases.InColumnGroupPhase:
  - Phase
  html5lib.html5parser.getPhases.InForeignContentPhase:
  - Phase
  html5lib.html5parser.getPhases.InFramesetPhase:
  - Phase
  html5lib.html5parser.getPhases.InHeadNoscriptPhase:
  - Phase
  html5lib.html5parser.getPhases.InHeadPhase:
  - Phase
  html5lib.html5parser.getPhases.InRowPhase:
  - Phase
  html5lib.html5parser.getPhases.InSelectInTablePhase:
  - Phase
  html5lib.html5parser.getPhases.InSelectPhase:
  - Phase
  html5lib.html5parser.getPhases.InTableBodyPhase:
  - Phase
  html5lib.html5parser.getPhases.InTablePhase:
  - Phase
  html5lib.html5parser.getPhases.InTableTextPhase:
  - Phase
  html5lib.html5parser.getPhases.InitialPhase:
  - Phase
  html5lib.html5parser.getPhases.Phase: []
  html5lib.html5parser.getPhases.TextPhase:
  - Phase
  html5lib.html5parser.method_decorator_metaclass.Decorated:
  - type
  html5lib.serializer.HTMLSerializer:
  - object
  html5lib.serializer.SerializeError:
  - Exception
  html5lib.treebuilders.base.ActiveFormattingElements:
  - list
  html5lib.treebuilders.base.Node:
  - object
  html5lib.treebuilders.base.TreeBuilder:
  - object
  html5lib.treebuilders.dom.getDomBuilder.AttrList:
  - MutableMapping
  html5lib.treebuilders.dom.getDomBuilder.NodeBuilder: []
  html5lib.treebuilders.dom.getDomBuilder.TreeBuilder: []
  html5lib.treebuilders.etree.getETreeBuilder.Comment:
  - Element
  html5lib.treebuilders.etree.getETreeBuilder.Document:
  - Element
  html5lib.treebuilders.etree.getETreeBuilder.DocumentFragment:
  - Element
  html5lib.treebuilders.etree.getETreeBuilder.DocumentType:
  - Element
  html5lib.treebuilders.etree.getETreeBuilder.Element: []
  html5lib.treebuilders.etree.getETreeBuilder.TreeBuilder: []
  html5lib.treebuilders.etree_lxml.Document:
  - object
  html5lib.treebuilders.etree_lxml.DocumentType:
  - object
  html5lib.treebuilders.etree_lxml.TreeBuilder: []
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Attributes:
  - MutableMapping
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Comment: []
  html5lib.treebuilders.etree_lxml.TreeBuilder.__init__.Element: []
  html5lib.treewalkers.base.NonRecursiveTreeWalker:
  - TreeWalker
  html5lib.treewalkers.base.TreeWalker:
  - object
  html5lib.treewalkers.dom.TreeWalker: []
  html5lib.treewalkers.etree.getETreeBuilder.TreeWalker: []
  html5lib.treewalkers.etree_lxml.Doctype:
  - object
  html5lib.treewalkers.etree_lxml.FragmentRoot:
  - Root
  html5lib.treewalkers.etree_lxml.FragmentWrapper:
  - object
  html5lib.treewalkers.etree_lxml.Root:
  - object
  html5lib.treewalkers.etree_lxml.TreeWalker: []
  html5lib.treewalkers.genshi.TreeWalker: []
ep:
  func_name: TestOneInput
  module: '...fuzz_parse'
