All classes:
- pdfminer.psexceptions.PSException
- pdfminer.psexceptions.PSEOF
- pdfminer.psexceptions.PSSyntaxError
- pdfminer.psexceptions.PSTypeError
- pdfminer.psexceptions.PSValueError
- pdfminer.pdfexceptions.PDFException
- pdfminer.pdfexceptions.PDFTypeError
- pdfminer.pdfexceptions.PDFValueError
- pdfminer.pdfexceptions.PDFObjectNotFound
- pdfminer.pdfexceptions.PDFNotImplementedError
- pdfminer.pdfexceptions.PDFKeyError
- pdfminer.pdfexceptions.PDFEOFError
- pdfminer.pdfexceptions.PDFIOError
- pdfminer.ccitt.BitParser
- pdfminer.ccitt.CCITTG4Parser
- pdfminer.ccitt.CCITTG4Parser.CCITTException
- pdfminer.ccitt.CCITTG4Parser.EOFB
- pdfminer.ccitt.CCITTG4Parser.InvalidData
- pdfminer.ccitt.CCITTG4Parser.ByteSkip
- pdfminer.ccitt.CCITTFaxDecoder
- pdfminer.ccitt.main.Parser
- pdfminer.lzw.CorruptDataError
- pdfminer.lzw.LZWDecoder
- pdfminer.pdfcolor.PDFColorSpace
- pdfminer.encodingdb.EncodingDB
- pdfminer.cmapdb.CMapError
- pdfminer.cmapdb.CMapBase
- pdfminer.cmapdb.CMap
- pdfminer.cmapdb.IdentityCMap
- pdfminer.cmapdb.IdentityCMapByte
- pdfminer.cmapdb.UnicodeMap
- pdfminer.cmapdb.IdentityUnicodeMap
- pdfminer.cmapdb.FileCMap
- pdfminer.cmapdb.FileUnicodeMap
- pdfminer.cmapdb.PyCMap
- pdfminer.cmapdb.PyUnicodeMap
- pdfminer.cmapdb.CMapDB
- pdfminer.cmapdb.CMapDB.CMapNotFound
- pdfminer.cmapdb.CMapParser
- pdfminer.arcfour.Arcfour
- pdfminer.pdfparser.PDFSyntaxError
- pdfminer.pdfparser.PDFParser
- pdfminer.pdfparser.PDFStreamParser
- pdfminer.data_structures.NumberTree
- pdfminer.pdfdocument.PDFNoValidXRef
- pdfminer.pdfdocument.PDFNoValidXRefWarning
- pdfminer.pdfdocument.PDFNoOutlines
- pdfminer.pdfdocument.PDFNoPageLabels
- pdfminer.pdfdocument.PDFDestinationNotFound
- pdfminer.pdfdocument.PDFEncryptionError
- pdfminer.pdfdocument.PDFPasswordIncorrect
- pdfminer.pdfdocument.PDFEncryptionWarning
- pdfminer.pdfdocument.PDFTextExtractionNotAllowedWarning
- pdfminer.pdfdocument.PDFTextExtractionNotAllowed
- pdfminer.pdfdocument.PDFBaseXRef
- pdfminer.pdfdocument.PDFXRef
- pdfminer.pdfdocument.PDFXRefFallback
- pdfminer.pdfdocument.PDFXRefStream
- pdfminer.pdfdocument.PDFStandardSecurityHandler
- pdfminer.pdfdocument.PDFStandardSecurityHandlerV4
- pdfminer.pdfdocument.PDFStandardSecurityHandlerV5
- pdfminer.pdfdocument.PDFDocument
- pdfminer.pdfdocument.PageLabels
- pdfminer.pdfpage.PDFPage
- pdfminer.pdfdevice.PDFDevice
- pdfminer.pdfdevice.PDFTextDevice
- pdfminer.pdfdevice.TagExtractor
- pdfminer.pdfinterp.PDFResourceError
- pdfminer.pdfinterp.PDFInterpreterError
- pdfminer.pdfinterp.PDFTextState
- pdfminer.pdfinterp.PDFGraphicState
- pdfminer.pdfinterp.PDFResourceManager
- pdfminer.pdfinterp.PDFContentParser
- pdfminer.pdfinterp.PDFPageInterpreter
- pdfminer.pdffont.FontMetricsDB
- pdfminer.pdffont.Type1FontHeaderParser
- pdfminer.pdffont.CFFFont
- pdfminer.pdffont.CFFFont.INDEX
- pdfminer.pdffont.TrueTypeFont
- pdfminer.pdffont.TrueTypeFont.CMapNotFound
- pdfminer.pdffont.PDFFontError
- pdfminer.pdffont.PDFUnicodeNotDefined
- pdfminer.pdffont.PDFFont
- pdfminer.pdffont.PDFSimpleFont
- pdfminer.pdffont.PDFType1Font
- pdfminer.pdffont.PDFTrueTypeFont
- pdfminer.pdffont.PDFType3Font
- pdfminer.pdffont.PDFCIDFont
- pdfminer.layout.IndexAssigner
- pdfminer.layout.LAParams
- pdfminer.layout.LTItem
- pdfminer.layout.LTText
- pdfminer.layout.LTComponent
- pdfminer.layout.LTCurve
- pdfminer.layout.LTLine
- pdfminer.layout.LTRect
- pdfminer.layout.LTImage
- pdfminer.layout.LTAnno
- pdfminer.layout.LTChar
- pdfminer.layout.LTContainer
- pdfminer.layout.LTExpandableContainer
- pdfminer.layout.LTTextContainer
- pdfminer.layout.LTTextLine
- pdfminer.layout.LTTextLineHorizontal
- pdfminer.layout.LTTextLineVertical
- pdfminer.layout.LTTextBox
- pdfminer.layout.LTTextBoxHorizontal
- pdfminer.layout.LTTextBoxVertical
- pdfminer.layout.LTTextGroup
- pdfminer.layout.LTTextGroupLRTB
- pdfminer.layout.LTTextGroupTBRL
- pdfminer.layout.LTLayoutContainer
- pdfminer.layout.LTFigure
- pdfminer.layout.LTPage
- pdfminer.utils.open_filename
- pdfminer.utils.Plane
- pdfminer.psparser.PSObject
- pdfminer.psparser.PSLiteral
- pdfminer.psparser.PSKeyword
- pdfminer.psparser.PSSymbolTable
- pdfminer.psparser.PSBaseParser
- pdfminer.psparser.PSStackParser
- pdfminer.pdftypes.DecipherCallable
- pdfminer.pdftypes.PDFObject
- pdfminer.pdftypes.PDFObjRef
- pdfminer.pdftypes.PDFStream
- pdfplumber.utils.exceptions.MalformedPDFException
- pdfplumber.utils.exceptions.PdfminerException
- pdfplumber.utils.text.TextMap
- pdfplumber.utils.text.WordMap
- pdfplumber.utils.text.WordExtractor
- pdfplumber.convert.Serializer
- pdfplumber.container.Container
- pdfminer.jbig2.JBIG2StreamReader
- pdfminer.jbig2.JBIG2StreamWriter
- pdfminer.image.BMPWriter
- pdfminer.image.ImageWriter
- pdfminer.converter.PDFLayoutAnalyzer
- pdfminer.converter.PDFPageAggregator
- pdfminer.converter.PDFConverter
- pdfminer.converter.TextConverter
- pdfminer.converter.HTMLConverter
- pdfminer.converter.XMLConverter
- pdfminer.converter.HOCRConverter
- pdfplumber.structure.Findable
- pdfplumber.structure.PDFStructElement
- pdfplumber.structure.StructTreeMissing
- pdfplumber.structure.PDFStructTree
- pdfplumber.table.CellGroup
- pdfplumber.table.Row
- pdfplumber.table.Column
- pdfplumber.table.Table
- pdfplumber.table.UnsetFloat
- pdfplumber.table.TableSettings
- pdfplumber.table.TableFinder
- pdfplumber.display.COLORS
- pdfplumber.display.PageImage
- pdfplumber.page.PDFPageAggregatorWithMarkedContent
- pdfplumber.page.Page
- pdfplumber.page.DerivedPage
- pdfplumber.page.CroppedPage
- pdfplumber.page.FilteredPage
- pdfplumber.pdf.PDF
- '...pdfplumber.fuzz.pdf_load_fuzzer.CastType'
- pdfplumber.ctm.CTM
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: '...pdfplumber.fuzz.pdf_load_fuzzer'
    functionSourceFile: '...pdfplumber.fuzz.pdf_load_fuzzer'
    functionUses: 0
    functionsReached:
    - '...pdfplumber.fuzz.pdf_load_fuzzer.main'
    - atheris.instrument_imports
    - 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_imports
    functionSourceFile: atheris
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 23
    functionName: '...pdfplumber.fuzz.pdf_load_fuzzer.TestOneInput'
    functionSourceFile: '...pdfplumber.fuzz.pdf_load_fuzzer'
    functionUses: 0
    functionsReached:
    - fuzz_helpers.EnhancedFuzzedDataProvider.ConsumeMemoryFile
    - fuzz_helpers.EnhancedFuzzedDataProvider
    - pdf.to_json
    - pdf.to_csv
    - fuzz_helpers.EnhancedFuzzedDataProvider.ConsumeEnum
    - pdf.to_dict
    - <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: fuzz_helpers.EnhancedFuzzedDataProvider
    functionSourceFile: fuzz_helpers
    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: fuzz_helpers.EnhancedFuzzedDataProvider.ConsumeMemoryFile
    functionSourceFile: fuzz_helpers
    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: fuzz_helpers.EnhancedFuzzedDataProvider.ConsumeEnum
    functionSourceFile: fuzz_helpers
    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: pdf.to_csv
    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: pdf.to_json
    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: pdf.to_dict
    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>.str
    functionSourceFile: <builtin>
    functionUses: 153
    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: 54
    functionName: '...pdfplumber.fuzz.pdf_load_fuzzer.main'
    functionSourceFile: '...pdfplumber.fuzz.pdf_load_fuzzer'
    functionUses: 1
    functionsReached:
    - atheris.Setup
    - atheris.Fuzz
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber
    functionSourceFile: pdfplumber
    functionUses: 0
    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: pdfminer
    functionSourceFile: pdfminer
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - importlib.metadata.version
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: importlib.metadata.version
    functionSourceFile: importlib
    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>.print
    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: 1
    functionLinenumber: -1
    functionName: pdfplumber.pdf
    functionSourceFile: pdfplumber.pdf
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logging.getLogger
    functionSourceFile: logging
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d14c70>
    - <ast.Constant object at 0x7f8798d14610>
    - <ast.Constant object at 0x7f8798d14ca0>
    - <ast.Constant object at 0x7f8798d14b20>
    - <ast.Constant object at 0x7f8798d14880>
    - <ast.Constant object at 0x7f8798d14d60>
    - <ast.Constant object at 0x7f8798d140a0>
    - <ast.Constant object at 0x7f8798d144f0>
    argNames:
    - self
    - stream
    - stream_is_external
    - path
    - pages
    - laparams
    - password
    - strict_metadata
    - unicode_norm
    - raise_unicode_errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 28
    functionName: pdfplumber.pdf.PDF.__init__
    functionSourceFile: pdfplumber.pdf
    functionUses: 3
    functionsReached:
    - typing.cast.startswith
    - obj.get
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - prev.isdigit
    - line.strip
    - pdfminer.pdftypes.dict_value
    - handler.is_extractable
    - <builtin>.map
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - parser.seek
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - xref.get_trailer
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - parser.nexttoken
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - pdfminer.pdfinterp.PDFResourceManager.__init__
    - <builtin>.list
    - param.get
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - handler.is_printable
    - start_re.sub
    - pdfminer.psparser.PSStackParser.__init__
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - parser1.nextobject
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - parser.pop
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfdocument.PDFDocument.__init__
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - <builtin>.hasattr
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - parser.revreadlines
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - end_re.sub
    - pdfminer.layout.LAParams._validate
    - arr.tobytes
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdocument.PDFDocument.find_xref
    - pdfminer.utils.apply_png_predictor
    - line_bytes.decode
    - pdfminer.pdfdocument.PDFXRef.__init__
    - pdfminer.lzw.LZWDecoder.__init__
    - parser.reset
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.layout.LAParams.__init__
    - obj.resolve
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - obj.items
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast.name.startswith
    - typing.cast
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - pdfplumber.utils.pdfinternals.decode_text
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - xrefs.append
    - pdfplumber.utils.pdfinternals.resolve_and_decode
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - parser.nextline
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdfdocument.PDFDocument._initialize_password
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.psparser.literal_name
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - pdfminer.pdftypes.PDFStream.decode
    - line_bytes.startswith
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - handler.is_modifiable
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.utils.paeth_predictor
    - <builtin>.iter
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PdfminerException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d93bb0>
    - <ast.Constant object at 0x7f8798d93eb0>
    - <ast.Constant object at 0x7f8798d93a30>
    - <ast.Constant object at 0x7f8798d934f0>
    - <ast.Constant object at 0x7f8798d932e0>
    - <ast.Constant object at 0x7f8798d93460>
    - <ast.Constant object at 0x7f8798d93370>
    argNames:
    - self
    - line_overlap
    - char_margin
    - line_margin
    - word_margin
    - boxes_flow
    - detect_vertical
    - all_texts
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 76
    functionName: pdfminer.layout.LAParams.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 6
    functionsReached:
    - <builtin>.isinstance
    - pdfminer.layout.LAParams._validate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 39
    functionName: pdfminer.pdfparser.PDFParser.__init__
    functionSourceFile: pdfminer.pdfparser
    functionUses: 20
    functionsReached:
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.psparser.PSStackParser.seek
    - log.debug
    - pdfminer.psparser.PSStackParser.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 7
    IfCount: 6
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f8798f1bf40>
    - <ast.Constant object at 0x7f8798f1bbe0>
    - <ast.Constant object at 0x7f8798f1be80>
    argNames:
    - self
    - parser
    - password
    - caching
    - fallback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 693
    functionName: pdfminer.pdfdocument.PDFDocument.__init__
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 8
    functionsReached:
    - obj.get
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - line.strip
    - prev.isdigit
    - pdfminer.pdftypes.dict_value
    - handler.is_extractable
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - parser.seek
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - xref.get_trailer
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - parser.nexttoken
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - <builtin>.list
    - param.get
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - handler.is_printable
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - parser1.nextobject
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - parser.pop
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - parser.revreadlines
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - end_re.sub
    - arr.tobytes
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdocument.PDFDocument.find_xref
    - pdfminer.utils.apply_png_predictor
    - line_bytes.decode
    - pdfminer.pdfdocument.PDFXRef.__init__
    - pdfminer.lzw.LZWDecoder.__init__
    - parser.reset
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - xrefs.append
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - parser.nextline
    - <builtin>.range
    - logger.error
    - pdfminer.lzw.LZWDecoder.feed
    - typing.cast.resolve
    - zlib.decompressobj
    - pdfminer.pdfdocument.PDFDocument._initialize_password
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.psparser.literal_name
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - pdfminer.pdftypes.PDFStream.decode
    - line_bytes.startswith
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - handler.is_modifiable
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.utils.paeth_predictor
    - <builtin>.iter
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d26730>
    argNames:
    - self
    - caching
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 193
    functionName: pdfminer.pdfinterp.PDFResourceManager.__init__
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - obj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 24
    functionName: pdfplumber.utils.pdfinternals.resolve_and_decode
    functionSourceFile: pdfplumber.utils.pdfinternals
    functionUses: 8
    functionsReached:
    - obj.resolve
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - <builtin>.hasattr
    - <builtin>.list
    - pdfplumber.utils.pdfinternals.resolve_and_decode
    - obj.items
    - <builtin>.ord
    - typing.cast.name.startswith
    - <builtin>.isinstance
    - <builtin>.map
    - <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: logger.warning
    functionSourceFile: <builtin>
    functionUses: 55
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7f879887a940>
    - <ast.Constant object at 0x7f879887ae80>
    - <ast.Constant object at 0x7f879887a820>
    - <ast.Constant object at 0x7f879887a430>
    - <ast.Constant object at 0x7f879887a5b0>
    - <ast.Constant object at 0x7f879887ac70>
    - <ast.Constant object at 0x7f879887af10>
    - <ast.Constant object at 0x7f879887ac40>
    - <ast.Constant object at 0x7f879887a8e0>
    argNames:
    - cls
    - path_or_fp
    - pages
    - laparams
    - password
    - strict_metadata
    - unicode_norm
    - repair
    - gs_path
    - repair_setting
    - raise_unicode_errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 73
    functionName: pdfplumber.pdf.PDF.open
    functionSourceFile: pdfplumber.pdf
    functionUses: 2
    functionsReached:
    - io.BytesIO.close
    - typing.cast.startswith
    - obj.get
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - prev.isdigit
    - line.strip
    - pdfminer.pdftypes.dict_value
    - handler.is_extractable
    - <builtin>.map
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - parser.seek
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - xref.get_trailer
    - <builtin>.ord
    - <builtin>.isinstance
    - parser.nexttoken
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - stdin.read
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - pdfminer.pdfinterp.PDFResourceManager.__init__
    - <builtin>.list
    - param.get
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - handler.is_printable
    - pdfplumber.pdf.PDF.__init__
    - start_re.sub
    - pdfminer.psparser.PSStackParser.__init__
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - parser1.nextobject
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - parser.pop
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfdocument.PDFDocument.__init__
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - <builtin>.hasattr
    - binascii.unhexlify.find
    - pdfplumber.pdf.PDF.open
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - parser.revreadlines
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - pdfminer.layout.LAParams._validate
    - arr.tobytes
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdocument.PDFDocument.find_xref
    - pdfminer.utils.apply_png_predictor
    - line_bytes.decode
    - pdfminer.pdfdocument.PDFXRef.__init__
    - parser.reset
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfplumber.repair._repair
    - shutil.which
    - pdfminer.layout.LAParams.__init__
    - obj.resolve
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - proc.communicate
    - pdfminer.utils.apply_tiff_predictor
    - obj.items
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast.name.startswith
    - typing.cast
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pathlib.Path
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - subprocess.Popen
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - pdfplumber.utils.pdfinternals.decode_text
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - xrefs.append
    - pdfplumber.utils.pdfinternals.resolve_and_decode
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - parser.nextline
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdfdocument.PDFDocument._initialize_password
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.psparser.literal_name
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - pdfminer.pdftypes.PDFStream.decode
    - line_bytes.startswith
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - handler.is_modifiable
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798a10070>
    - <ast.Constant object at 0x7f8798a10370>
    - <ast.Constant object at 0x7f8798a107c0>
    argNames:
    - path_or_fp
    - password
    - gs_path
    - setting
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 10
    functionName: pdfplumber.repair._repair
    functionSourceFile: pdfplumber.repair
    functionUses: 4
    functionsReached:
    - io.BytesIO
    - shutil.which
    - proc.communicate
    - pathlib.Path
    - <builtin>.isinstance
    - stdin.read
    - subprocess.Popen
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - Exception
    returnType: N/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: 249
    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: pathlib.Path
    functionSourceFile: pathlib
    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: io.BytesIO.close
    functionSourceFile: io
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 124
    functionName: pdfplumber.pdf.PDF.close
    functionSourceFile: pdfplumber.pdf
    functionUses: 1
    functionsReached:
    - pdfplumber.container.Container.flush_cache
    - <builtin>.delattr
    - <builtin>.hasattr
    - io.BytesIO.close
    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 0x7f8799043760>
    argNames:
    - self
    - properties
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: pdfplumber.container.Container.flush_cache
    functionSourceFile: pdfplumber.container
    functionUses: 4
    functionsReached:
    - <builtin>.delattr
    - <builtin>.hasattr
    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: 133
    functionName: pdfplumber.pdf.PDF.__enter__
    functionSourceFile: pdfplumber.pdf
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - t
    - value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 136
    functionName: pdfplumber.pdf.PDF.__exit__
    functionSourceFile: pdfplumber.pdf
    functionUses: 0
    functionsReached:
    - io.BytesIO.close
    - pdfplumber.pdf.PDF.close
    - pdfplumber.container.Container.flush_cache
    - <builtin>.delattr
    - <builtin>.hasattr
    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: 15
    functionLinenumber: 145
    functionName: pdfplumber.pdf.PDF.pages
    functionSourceFile: pdfplumber.pdf
    functionUses: 0
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - typing.cast.startswith
    - obj.get
    - decoded_array.extend
    - pdfminer.pdftypes.PDFStream.get
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - object_properties.get
    - visited.add
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - pdfplumber.page.Page.__init__
    - <builtin>.sorted
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.pdfpage.PDFPage._parse_cropbox
    - start_re.sub
    - x.resolve
    - <builtin>.enumerate
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.pdfpage.PDFPage.create_pages.depth_first_search
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - <builtin>.hasattr
    - box_name.lower
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - typing.cast.copy
    - pdfminer.pdftypes.decipher_all
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - page_obj.attrs.get
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.utils.parse_rect
    - pdfplumber.utils.pdfinternals.resolve_all
    - pdfplumber.utils.pdfinternals.get_dict_type
    - d.get
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.pdfpage.PDFPage._parse_mediabox
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfplumber.pdf.PDF.pages.iter_pages
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.next
    - <builtin>.bytes
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast.name.startswith
    - pdfminer.pdfpage.PDFPage.__init__
    - pdfminer.data_structures.NumberTree.__init__
    - x.append
    - typing.cast
    - xref.get_pos
    - pdfminer.pdfdocument.PDFDocument.get_page_labels
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfplumber.page.Page.__init__.get_attr
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - pdfminer.pdftypes.PDFStream.get_filters
    - x.items
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - pdfplumber.utils.pdfinternals.decode_text
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - itertools.repeat
    - pdfplumber.page._invert_box
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - <builtin>.float
    - parser.nextobject
    - log.warning
    - base64.a85decode.find
    - <builtin>.all
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfplumber.page._normalize_box
    - <builtin>.setattr
    - <builtin>.set
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdfpage.PDFPage._parse_contents
    - pdfminer.pdftypes.PDFStream.decode
    - functools.lru_cache
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.pdfpage.PDFPage.create_pages
    - xref.get_objids
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 41
    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: 14
    functionLinenumber: 153
    functionName: pdfplumber.pdf.PDF.pages.iter_pages
    functionSourceFile: pdfplumber.pdf
    functionUses: 1
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - obj.get
    - decoded_array.extend
    - pdfminer.pdftypes.PDFStream.get
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - object_properties.get
    - visited.add
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.pdfpage.PDFPage._parse_cropbox
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.pdfpage.PDFPage.create_pages.depth_first_search
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - typing.cast.copy
    - pdfminer.pdftypes.decipher_all
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.utils.parse_rect
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.pdfpage.PDFPage._parse_mediabox
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.next
    - <builtin>.bytes
    - x.append
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - pdfminer.pdfpage.PDFPage.__init__
    - pdfminer.data_structures.NumberTree.__init__
    - typing.cast
    - typing.cast.get
    - pdfminer.pdfdocument.PDFDocument.get_page_labels
    - xref.get_pos
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - x.items
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - itertools.repeat
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - <builtin>.float
    - parser.nextobject
    - log.warning
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.set
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdfpage.PDFPage._parse_contents
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.pdfpage.PDFPage.create_pages
    - xref.get_objids
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PdfminerException
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - document
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 91
    functionName: pdfminer.pdfpage.PDFPage.create_pages
    functionSourceFile: pdfminer.pdfpage
    functionUses: 6
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - obj.get
    - decoded_array.extend
    - pdfminer.pdftypes.PDFStream.get
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - object_properties.get
    - visited.add
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.pdfpage.PDFPage._parse_cropbox
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.pdfpage.PDFPage.create_pages.depth_first_search
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - typing.cast.copy
    - pdfminer.pdftypes.decipher_all
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.utils.parse_rect
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.pdfpage.PDFPage._parse_mediabox
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.next
    - <builtin>.bytes
    - x.append
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - pdfminer.data_structures.NumberTree.__init__
    - pdfminer.pdfpage.PDFPage.__init__
    - typing.cast
    - typing.cast.get
    - pdfminer.pdfdocument.PDFDocument.get_page_labels
    - xref.get_pos
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - x.items
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - itertools.repeat
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - <builtin>.float
    - parser.nextobject
    - log.warning
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.set
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdfpage.PDFPage._parse_contents
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - xref.get_objids
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 41
    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>.enumerate
    functionSourceFile: <builtin>
    functionUses: 71
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f879991e5e0>
    argNames:
    - self
    - pdf
    - page_obj
    - page_number
    - initial_doctop
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 191
    functionName: pdfplumber.page.Page.__init__
    functionSourceFile: pdfplumber.page
    functionUses: 1
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - pdfplumber.page._invert_box
    - x.resolve
    - <builtin>.all
    - pdfplumber.utils.pdfinternals.resolve_all
    - d.get
    - pdfplumber.utils.pdfinternals.get_dict_type
    - pdfplumber.page._normalize_box
    - <builtin>.setattr
    - <builtin>.type
    - <builtin>.ord
    - <builtin>.isinstance
    - box_name.lower
    - functools.lru_cache
    - typing.cast.name.startswith
    - pdfplumber.page.Page.__init__.get_attr
    - x.items
    - page_obj.attrs.get
    - <builtin>.sorted
    - <builtin>.str
    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: 173
    functionName: pdfplumber.pdf.PDF.objects
    functionSourceFile: pdfplumber.pdf
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    - p.objects.keys
    - all_objects.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: p.objects.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: all_objects.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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 184
    functionName: pdfplumber.pdf.PDF.annots
    functionSourceFile: pdfplumber.pdf
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - itertools.chain
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.chain
    functionSourceFile: itertools
    functionUses: 30
    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: 124
    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: 189
    functionName: pdfplumber.pdf.PDF.hyperlinks
    functionSourceFile: pdfplumber.pdf
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - itertools.chain
    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: 5
    functionLinenumber: 194
    functionName: pdfplumber.pdf.PDF.structure_tree
    functionSourceFile: pdfplumber.pdf
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - attr_obj_list.extend
    - typing.cast.items
    - pdfminer.pdftypes.dict_value
    - pdfplumber.structure.PDFStructTree._make_attributes
    - collections.deque
    - collections.deque.append
    - next_elements.append
    - pdfminer.pdftypes.list_value
    - <builtin>.repr
    - <builtin>.ord
    - seen.get
    - <builtin>.isinstance
    - logger.error
    - typing.cast.resolve
    - attr_obj_list.append
    - element.mcids.append
    - pdfplumber.structure.PDFStructTree.__init__
    - pdfplumber.structure.PDFStructTree.on_parsed_page
    - pdfplumber.structure.PDFStructTree._resolve_children
    - pdfplumber.structure.PDFStructTree._parse_parent_tree
    - <builtin>.next
    - typing.cast.name.startswith
    - pdfminer.data_structures.NumberTree.__init__
    - pdfminer.pdftypes.resolve1
    - pdfplumber.structure.PDFStructTree._make_element
    - elem.to_dict
    - typing.cast.get
    - collections.deque.popleft
    - pdfplumber.structure.PDFStructTree._parse_struct_tree
    - attr_objs.append
    - pdfplumber.structure.PDFStructTree._parse_struct_tree.prune
    - element.children.append
    - logger.warning
    - parsed_root.append
    - <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: elem.to_dict
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f87996f6a90>
    argNames:
    - self
    - doc
    - page
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 171
    functionName: pdfplumber.structure.PDFStructTree.__init__
    functionSourceFile: pdfplumber.structure
    functionUses: 2
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - attr_obj_list.extend
    - typing.cast.items
    - pdfminer.pdftypes.dict_value
    - pdfplumber.structure.PDFStructTree._make_attributes
    - collections.deque
    - collections.deque.append
    - next_elements.append
    - pdfminer.pdftypes.list_value
    - <builtin>.repr
    - <builtin>.ord
    - seen.get
    - <builtin>.isinstance
    - logger.error
    - typing.cast.resolve
    - attr_obj_list.append
    - element.mcids.append
    - pdfplumber.structure.PDFStructTree.on_parsed_page
    - pdfplumber.structure.PDFStructTree._resolve_children
    - pdfplumber.structure.PDFStructTree._parse_parent_tree
    - <builtin>.next
    - typing.cast.name.startswith
    - pdfminer.pdftypes.resolve1
    - pdfminer.data_structures.NumberTree.__init__
    - pdfplumber.structure.PDFStructTree._make_element
    - typing.cast.get
    - collections.deque.popleft
    - pdfplumber.structure.PDFStructTree._parse_struct_tree
    - attr_objs.append
    - pdfplumber.structure.PDFStructTree._parse_struct_tree.prune
    - element.children.append
    - logger.warning
    - parsed_root.append
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - StructTreeMissing
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d4ee80>
    argNames:
    - self
    - object_types
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 201
    functionName: pdfplumber.pdf.PDF.to_dict
    functionSourceFile: pdfplumber.pdf
    functionUses: 1
    functionsReached:
    - page.to_dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: page.to_dict
    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: pdfminer.pdfparser
    functionSourceFile: pdfminer.pdfparser
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 523
    functionName: pdfminer.psparser.PSStackParser.__init__
    functionSourceFile: pdfminer.psparser
    functionUses: 35
    functionsReached:
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.psparser.PSStackParser.seek
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - doc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: pdfminer.pdfparser.PDFParser.set_document
    functionSourceFile: pdfminer.pdfparser
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 21
    ICount: 12
    IfCount: 14
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - pos
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 55
    functionName: pdfminer.pdfparser.PDFParser.do_keyword
    functionSourceFile: pdfminer.pdfparser
    functionUses: 0
    functionsReached:
    - pdfminer.pdftypes.PDFObjRef.__init__
    - pdfminer.casting.safe_int
    - typing.cast.resolve
    - pdfminer.pdftypes.int_value
    - <builtin>.int
    - pdfminer.pdftypes.PDFStream.__init__
    - warnings.warn
    - line.index
    - log.debug
    - <builtin>.type
    - <builtin>.bytearray
    - <builtin>.bytes
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - <builtin>.len
    - logger.error
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    returnType: N/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: 202
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - o
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 10
    functionName: pdfminer.casting.safe_int
    functionSourceFile: pdfminer.casting
    functionUses: 4
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f8798cea790>
    argNames:
    - self
    - doc
    - objid
    - _
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 70
    functionName: pdfminer.pdftypes.PDFObjRef.__init__
    functionSourceFile: pdfminer.pdftypes
    functionUses: 2
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 202
    functionName: pdfminer.pdftypes.dict_value
    functionSourceFile: pdfminer.pdftypes
    functionUses: 43
    functionsReached:
    - typing.cast.resolve
    - <builtin>.isinstance
    - logger.error
    - pdfminer.pdftypes.resolve1
    linkageType: pythonLinkage
    raised:
    - PDFTypeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 148
    functionName: pdfminer.pdftypes.int_value
    functionSourceFile: pdfminer.pdftypes
    functionUses: 47
    functionsReached:
    - typing.cast.resolve
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    linkageType: pythonLinkage
    raised:
    - PDFTypeError
    returnType: N/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>.bytearray
    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: line.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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: log.debug
    functionSourceFile: <builtin>
    functionUses: 88
    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>.bytes
    functionSourceFile: <builtin>
    functionUses: 59
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798a10a30>
    argNames:
    - self
    - attrs
    - rawdata
    - decipher
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 244
    functionName: pdfminer.pdftypes.PDFStream.__init__
    functionSourceFile: pdfminer.pdftypes
    functionUses: 37
    functionsReached:
    - <builtin>.type
    - <builtin>.isinstance
    - <builtin>.str
    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: 6
    functionLinenumber: 147
    functionName: pdfminer.pdfparser.PDFStreamParser.__init__
    functionSourceFile: pdfminer.pdfparser
    functionUses: 19
    functionsReached:
    - io.BytesIO
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.psparser.PSStackParser.seek
    - log.debug
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.psparser.PSStackParser.__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: io.BytesIO
    functionSourceFile: io
    functionUses: 55
    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: 150
    functionName: pdfminer.pdfparser.PDFStreamParser.flush
    functionSourceFile: pdfminer.pdfparser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - pos
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 155
    functionName: pdfminer.pdfparser.PDFStreamParser.do_keyword
    functionSourceFile: pdfminer.pdfparser
    functionUses: 0
    functionsReached:
    - pdfminer.pdftypes.PDFObjRef.__init__
    - pdfminer.casting.safe_int
    - warnings.warn
    - <builtin>.int
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    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: pdfminer.pdftypes
    functionSourceFile: pdfminer.pdftypes
    functionUses: 0
    functionsReached:
    - <builtin>.object
    - pdfminer.psparser.PSSymbolTable.intern
    - logging.getLogger
    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: 0
    functionLinenumber: 87
    functionName: pdfminer.psparser.PSSymbolTable.intern
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f8798b1a940>
    argNames:
    - self
    - objid
    - genno
    - data
    - attrs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 45
    functionName: pdfminer.pdftypes.DecipherCallable.__call__
    functionSourceFile: pdfminer.pdftypes
    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>.object
    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: warnings.warn
    functionSourceFile: warnings
    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: 96
    functionName: pdfminer.pdftypes.PDFObjRef.__repr__
    functionSourceFile: pdfminer.pdftypes
    functionUses: 0
    functionsReached: []
    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 0x7f8798cea670>
    argNames:
    - self
    - default
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 99
    functionName: pdfminer.pdftypes.PDFObjRef.resolve
    functionSourceFile: pdfminer.pdftypes
    functionUses: 0
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - decoded_array.extend
    - pdfminer.pdftypes.PDFStream.get
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.pdftypes.decipher_all
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - x.append
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - xref.get_pos
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - x.items
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - objid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 832
    functionName: pdfminer.pdfdocument.PDFDocument.getobj
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 9
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - decoded_array.extend
    - pdfminer.pdftypes.PDFStream.get
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.pdftypes.decipher_all
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - x.append
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - xref.get_pos
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - x.items
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PDFException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f8798f52280>
    argNames:
    - x
    - default
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 107
    functionName: pdfminer.pdftypes.resolve1
    functionSourceFile: pdfminer.pdftypes
    functionUses: 82
    functionsReached:
    - typing.cast.resolve
    - <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: typing.cast.resolve
    functionSourceFile: typing
    functionUses: 85
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f8798f52340>
    argNames:
    - x
    - default
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 118
    functionName: pdfminer.pdftypes.resolve_all
    functionSourceFile: pdfminer.pdftypes
    functionUses: 15
    functionsReached:
    - pdfminer.pdftypes.resolve_all
    - typing.cast.resolve
    - <builtin>.isinstance
    - typing.cast.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: typing.cast.items
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - decipher
    - objid
    - genno
    - x
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 134
    functionName: pdfminer.pdftypes.decipher_all
    functionSourceFile: pdfminer.pdftypes
    functionUses: 10
    functionsReached:
    - pdfminer.pdftypes.decipher_all
    - <builtin>.isinstance
    - x.items
    - <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: x.items
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 157
    functionName: pdfminer.pdftypes.float_value
    functionSourceFile: pdfminer.pdftypes
    functionUses: 0
    functionsReached:
    - typing.cast.resolve
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    linkageType: pythonLinkage
    raised:
    - PDFTypeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 166
    functionName: pdfminer.pdftypes.num_value
    functionSourceFile: pdfminer.pdftypes
    functionUses: 14
    functionsReached:
    - typing.cast.resolve
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    linkageType: pythonLinkage
    raised:
    - PDFTypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - x
    - n_bits
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 175
    functionName: pdfminer.pdftypes.uint_value
    functionSourceFile: pdfminer.pdftypes
    functionUses: 3
    functionsReached:
    - typing.cast.resolve
    - pdfminer.pdftypes.int_value
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast
    functionSourceFile: typing
    functionUses: 136
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 184
    functionName: pdfminer.pdftypes.str_value
    functionSourceFile: pdfminer.pdftypes
    functionUses: 7
    functionsReached:
    - typing.cast.resolve
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    linkageType: pythonLinkage
    raised:
    - PDFTypeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 193
    functionName: pdfminer.pdftypes.list_value
    functionSourceFile: pdfminer.pdftypes
    functionUses: 35
    functionsReached:
    - typing.cast.resolve
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    linkageType: pythonLinkage
    raised:
    - PDFTypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logger.error
    functionSourceFile: <builtin>
    functionUses: 44
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 212
    functionName: pdfminer.pdftypes.stream_value
    functionSourceFile: pdfminer.pdftypes
    functionUses: 35
    functionsReached:
    - typing.cast.resolve
    - pdfminer.pdftypes.resolve1
    - pdfminer.pdftypes.PDFStream.__init__
    - <builtin>.type
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFTypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 221
    functionName: pdfminer.pdftypes.decompress_corrupted
    functionSourceFile: pdfminer.pdftypes
    functionUses: 36
    functionsReached:
    - io.BytesIO
    - zlib.decompressobj
    - f.read
    - d.decompress
    - logger.warning
    - <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: zlib.decompressobj
    functionSourceFile: zlib
    functionUses: 37
    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: f.read
    functionSourceFile: <builtin>
    functionUses: 37
    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: d.decompress
    functionSourceFile: <builtin>
    functionUses: 37
    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: 85
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - objid
    - genno
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 258
    functionName: pdfminer.pdftypes.PDFStream.set_objid
    functionSourceFile: pdfminer.pdftypes
    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: 1
    functionLinenumber: 262
    functionName: pdfminer.pdftypes.PDFStream.__repr__
    functionSourceFile: pdfminer.pdftypes
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 272
    functionName: pdfminer.pdftypes.PDFStream.__contains__
    functionSourceFile: pdfminer.pdftypes
    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: 0
    functionLinenumber: 275
    functionName: pdfminer.pdftypes.PDFStream.__getitem__
    functionSourceFile: pdfminer.pdftypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - PDFKeyError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f87986aa0d0>
    argNames:
    - self
    - name
    - default
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 283
    functionName: pdfminer.pdftypes.PDFStream.get
    functionSourceFile: pdfminer.pdftypes
    functionUses: 13
    functionsReached:
    - typing.cast.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: typing.cast.get
    functionSourceFile: typing
    functionUses: 39
    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 0x7f87986aaa60>
    argNames:
    - self
    - names
    - default
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 286
    functionName: pdfminer.pdftypes.PDFStream.get_any
    functionSourceFile: pdfminer.pdftypes
    functionUses: 37
    functionsReached: []
    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: 2
    functionLinenumber: 292
    functionName: pdfminer.pdftypes.PDFStream.get_filters
    functionSourceFile: pdfminer.pdftypes
    functionUses: 36
    functionsReached:
    - typing.cast.resolve
    - pdfminer.pdftypes.PDFStream.get_any
    - <builtin>.zip
    - pdfminer.pdftypes.resolve1
    - <builtin>.list
    - <builtin>.isinstance
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - PDFException
    returnType: N/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>.zip
    functionSourceFile: <builtin>
    functionUses: 58
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 0
    IfCount: 16
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 309
    functionName: pdfminer.pdftypes.PDFStream.decode
    functionSourceFile: pdfminer.pdftypes
    functionUses: 35
    functionsReached:
    - pdfminer.lzw.lzwdecode
    - params.get
    - io.BytesIO
    - arr.tobytes
    - pdfminer.pdftypes.PDFStream.get_any
    - <builtin>.int
    - decoded_array.extend
    - bits.startswith
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - base64.a85decode
    - <builtin>.abs
    - pdfminer.utils.apply_png_predictor
    - start_re.sub
    - pdfminer.lzw.LZWDecoder.__init__
    - base64.a85decode.find
    - <builtin>.len
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.pdftypes.int_value
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - io.BytesIO.read
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.ccitt.get_bytes
    - <builtin>.range
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - typing.cast.resolve
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - zlib.decompressobj
    - pdfminer.ccitt.CCITTG4Parser.reset
    - <builtin>.zip
    - f.read
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.lzw.LZWDecoder.feed
    - pdfminer.ccitt.ccittfaxdecode
    - bws_re.sub
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - binascii.unhexlify
    - pdfminer.utils.apply_tiff_predictor
    - binascii.unhexlify.find
    - array.array
    - pdfminer.runlength.rldecode
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - buf.extend
    - pdfminer.pdftypes.resolve1
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - zlib.decompress
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - <builtin>.min
    - typing.cast
    - d.decompress
    - logger.debug
    - pdfminer.ascii85.asciihexdecode
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - <builtin>.list
    - end_re.sub
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFNotImplementedError
    - PDFException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zlib.decompress
    functionSourceFile: zlib
    functionUses: 36
    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: 3
    functionLinenumber: 103
    functionName: pdfminer.lzw.lzwdecode
    functionSourceFile: pdfminer.lzw
    functionUses: 36
    functionsReached:
    - io.BytesIO
    - pdfminer.lzw.LZWDecoder.feed
    - logger.debug
    - io.BytesIO.read
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - <builtin>.bytes
    - <builtin>.ord
    - <builtin>.range
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - typing.cast
    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: 11
    functionName: pdfminer.ascii85.ascii85decode
    functionSourceFile: pdfminer.ascii85
    functionUses: 36
    functionsReached:
    - base64.a85decode
    - end_re.sub
    - start_re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: pdfminer.ascii85.asciihexdecode
    functionSourceFile: pdfminer.ascii85
    functionUses: 36
    functionsReached:
    - bws_re.sub
    - binascii.unhexlify.find
    - binascii.unhexlify
    - base64.a85decode.find
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 9
    functionName: pdfminer.runlength.rldecode
    functionSourceFile: pdfminer.runlength
    functionUses: 36
    functionsReached:
    - decoded_array.extend
    - <builtin>.iter
    - <builtin>.next
    - <builtin>.range
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - data
    - params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 556
    functionName: pdfminer.ccitt.ccittfaxdecode
    functionSourceFile: pdfminer.ccitt
    functionUses: 36
    functionsReached:
    - params.get
    - arr.tobytes
    - <builtin>.int
    - bits.startswith
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - <builtin>.len
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.ccitt.get_bytes
    - <builtin>.range
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - <builtin>.min
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - typing.cast
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.max
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: params.get
    functionSourceFile: <builtin>
    functionUses: 37
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - colors
    - columns
    - bitspercomponent
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 125
    functionName: pdfminer.utils.apply_tiff_predictor
    functionSourceFile: pdfminer.utils
    functionUses: 36
    functionsReached:
    - raw.append
    - <builtin>.bytes
    - <builtin>.range
    - buf.extend
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 6
    IfCount: 7
    argCount: 5
    argDefaultValues: []
    argNames:
    - pred
    - colors
    - columns
    - bitspercomponent
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 153
    functionName: pdfminer.utils.apply_png_predictor
    functionSourceFile: pdfminer.utils
    functionUses: 36
    functionsReached:
    - <builtin>.zip
    - <builtin>.int
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.abs
    - <builtin>.bytes
    - <builtin>.list
    - <builtin>.range
    - buf.extend
    - <builtin>.len
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    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: 8
    functionLinenumber: 399
    functionName: pdfminer.pdftypes.PDFStream.get_data
    functionSourceFile: pdfminer.pdftypes
    functionUses: 34
    functionsReached:
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdftypes.int_value
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - <builtin>.min
    - pdfminer.ascii85.asciihexdecode
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - end_re.sub
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - pdfminer.lzw.lzwdecode
    - io.BytesIO
    - <builtin>.int
    - bits.startswith
    - <builtin>.abs
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    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: 405
    functionName: pdfminer.pdftypes.PDFStream.get_rawdata
    functionSourceFile: pdfminer.pdftypes
    functionUses: 0
    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: pdfminer.ascii85
    functionSourceFile: pdfminer.ascii85
    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: 0
    functionLinenumber: -1
    functionName: re.compile
    functionSourceFile: re
    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: start_re.sub
    functionSourceFile: <builtin>
    functionUses: 37
    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: end_re.sub
    functionSourceFile: <builtin>
    functionUses: 37
    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: base64.a85decode
    functionSourceFile: base64
    functionUses: 37
    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: bws_re.sub
    functionSourceFile: <builtin>
    functionUses: 37
    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: base64.a85decode.find
    functionSourceFile: base64
    functionUses: 37
    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: binascii.unhexlify.find
    functionSourceFile: binascii
    functionUses: 37
    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: binascii.unhexlify
    functionSourceFile: binascii
    functionUses: 37
    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: pdfminer.pdfdocument
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - logging.getLogger
    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: 108
    functionName: pdfminer.pdfdocument.PDFBaseXRef.get_trailer
    functionSourceFile: pdfminer.pdfdocument
    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: 111
    functionName: pdfminer.pdfdocument.PDFBaseXRef.get_objids
    functionSourceFile: pdfminer.pdfdocument
    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
    - objid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 117
    functionName: pdfminer.pdfdocument.PDFBaseXRef.get_pos
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - PDFKeyError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 120
    functionName: pdfminer.pdfdocument.PDFBaseXRef.load
    functionSourceFile: pdfminer.pdfdocument
    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: 125
    functionName: pdfminer.pdfdocument.PDFXRef.__init__
    functionSourceFile: pdfminer.pdfdocument
    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: 0
    functionLinenumber: 129
    functionName: pdfminer.pdfdocument.PDFXRef.__repr__
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 132
    functionName: pdfminer.pdfdocument.PDFXRef.load
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - line.split
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - <builtin>.int
    - line.strip
    - parser.nextobject
    - pdfminer.pdftypes.dict_value
    - log.warning
    - <builtin>.len
    - <builtin>.map
    - parser.seek
    - parser.pop
    - parser.nextline
    - <builtin>.str
    - <builtin>.range
    - <builtin>.isinstance
    - logger.error
    - parser.nexttoken
    - typing.cast.resolve
    - pdfminer.pdftypes.resolve1
    - pdfminer.casting.safe_int
    - log.debug
    - line.startswith
    linkageType: pythonLinkage
    raised:
    - PDFNoValidXRef
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.nextline
    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: line.strip
    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: line.startswith
    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: parser.seek
    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: line.split
    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>.map
    functionSourceFile: <builtin>
    functionUses: 84
    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: 132
    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: log.warning
    functionSourceFile: <builtin>
    functionUses: 60
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 183
    functionName: pdfminer.pdfdocument.PDFXRef.load_trailer
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 12
    functionsReached:
    - parser.nexttoken
    - typing.cast.resolve
    - pdfminer.pdftypes.resolve1
    - log.debug
    - parser.pop
    - parser.nextobject
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - logger.error
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFNoValidXRef
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.nexttoken
    functionSourceFile: <builtin>
    functionUses: 14
    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: parser.nextobject
    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: 0
    functionLinenumber: -1
    functionName: parser.pop
    functionSourceFile: <builtin>
    functionUses: 13
    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: 196
    functionName: pdfminer.pdfdocument.PDFXRef.get_trailer
    functionSourceFile: pdfminer.pdfdocument
    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: 0
    functionLinenumber: 199
    functionName: pdfminer.pdfdocument.PDFXRef.get_objids
    functionSourceFile: pdfminer.pdfdocument
    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
    - objid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 202
    functionName: pdfminer.pdfdocument.PDFXRef.get_pos
    functionSourceFile: pdfminer.pdfdocument
    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: 207
    functionName: pdfminer.pdfdocument.PDFXRefFallback.__repr__
    functionSourceFile: pdfminer.pdfdocument
    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: pdfminer.pdfdocument.PDFXRefFallback
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 212
    functionName: pdfminer.pdfdocument.PDFXRefFallback.load
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 10
    functionsReached:
    - obj.get
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.dict_value
    - parser.seek
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - parser.nexttoken
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - parser1.nextobject
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - parser.pop
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - line_bytes.decode
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - parser.nextline
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - line_bytes.startswith
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.utils.paeth_predictor
    - <builtin>.iter
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line_bytes.startswith
    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: line_bytes.decode
    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: m.groups
    functionSourceFile: <builtin>
    functionUses: 14
    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: 104
    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: obj.get
    functionSourceFile: <builtin>
    functionUses: 14
    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: typing.cast.get_data
    functionSourceFile: typing
    functionUses: 34
    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: parser1.nextobject
    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: objs.append
    functionSourceFile: <builtin>
    functionUses: 19
    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: 123
    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: 258
    functionName: pdfminer.pdfdocument.PDFXRefStream.__init__
    functionSourceFile: pdfminer.pdfdocument
    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: 0
    functionLinenumber: 266
    functionName: pdfminer.pdfdocument.PDFXRefStream.__repr__
    functionSourceFile: pdfminer.pdfdocument
    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
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 269
    functionName: pdfminer.pdfdocument.PDFXRefStream.load
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - stream.get
    - parser.nexttoken
    - <builtin>.tuple
    - stream.get_data
    - pdfminer.utils.choplist
    - <builtin>.map
    - log.debug
    - parser.nextobject
    - r.append
    - <builtin>.isinstance
    - <builtin>.len
    - typing.cast
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    - PDFNoValidXRef
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stream.get
    functionSourceFile: <builtin>
    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:
    - n
    - seq
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 402
    functionName: pdfminer.utils.choplist
    functionSourceFile: pdfminer.utils
    functionUses: 20
    functionsReached:
    - <builtin>.tuple
    - <builtin>.len
    - r.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: stream.get_data
    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: 294
    functionName: pdfminer.pdfdocument.PDFXRefStream.get_trailer
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    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: 2
    functionLinenumber: 297
    functionName: pdfminer.pdfdocument.PDFXRefStream.get_objids
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - pdfminer.utils.nunpack
    - <builtin>.len
    - int.from_bytes
    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 0x7f8798b999d0>
    argNames:
    - s
    - default
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 412
    functionName: pdfminer.utils.nunpack
    functionSourceFile: pdfminer.utils
    functionUses: 5
    functionsReached:
    - <builtin>.len
    - int.from_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - objid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 308
    functionName: pdfminer.pdfdocument.PDFXRefStream.get_pos
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - pdfminer.utils.nunpack
    - <builtin>.len
    - int.from_bytes
    linkageType: pythonLinkage
    raised:
    - PDFKeyError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d021f0>
    argNames:
    - self
    - docid
    - param
    - password
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 341
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.__init__
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.init_params
    - pdfminer.pdftypes.str_value
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_user_password
    - <builtin>.len
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_encryption_key
    - struct.pack
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.uint_value
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.init_key
    - <builtin>.range
    - pdfminer.arcfour.Arcfour.process
    - <builtin>.isinstance
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_owner_password
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_u
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.init
    - typing.cast.resolve
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate
    - pdfminer.arcfour.Arcfour.__init__
    - <builtin>.bytes
    - hashlib.md5.digest
    - pdfminer.pdftypes.resolve1
    - typing.cast
    - hashlib.md5
    - <builtin>.iter
    - hashlib.md5.update
    - password.encode
    - <builtin>.list
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.verify_encryption_key
    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: 7
    functionLinenumber: 352
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.init
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 1
    functionsReached:
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.init_params
    - pdfminer.pdftypes.str_value
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_user_password
    - <builtin>.len
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_encryption_key
    - struct.pack
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.uint_value
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.init_key
    - <builtin>.range
    - pdfminer.arcfour.Arcfour.process
    - <builtin>.isinstance
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_owner_password
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_u
    - typing.cast.resolve
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate
    - pdfminer.arcfour.Arcfour.__init__
    - <builtin>.bytes
    - hashlib.md5.digest
    - pdfminer.pdftypes.resolve1
    - typing.cast
    - hashlib.md5
    - <builtin>.iter
    - hashlib.md5.update
    - password.encode
    - <builtin>.list
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.verify_encryption_key
    linkageType: pythonLinkage
    raised:
    - PDFEncryptionError
    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: 3
    functionLinenumber: 359
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.init_params
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 2
    functionsReached:
    - typing.cast.resolve
    - pdfminer.pdftypes.str_value
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.uint_value
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - typing.cast
    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: 6
    functionLinenumber: 367
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.init_key
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 2
    functionsReached:
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_user_password
    - <builtin>.len
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_encryption_key
    - struct.pack
    - <builtin>.range
    - pdfminer.arcfour.Arcfour.process
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_owner_password
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_u
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate
    - pdfminer.arcfour.Arcfour.__init__
    - <builtin>.bytes
    - hashlib.md5.digest
    - typing.cast
    - hashlib.md5
    - <builtin>.iter
    - hashlib.md5.update
    - password.encode
    - <builtin>.list
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.verify_encryption_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - password
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 417
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 3
    functionsReached:
    - struct.pack
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_user_password
    - hashlib.md5.digest
    - <builtin>.range
    - pdfminer.arcfour.Arcfour.__init__
    - <builtin>.iter
    - hashlib.md5.update
    - typing.cast
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_encryption_key
    - password.encode
    - <builtin>.bytes
    - <builtin>.list
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.verify_encryption_key
    - pdfminer.arcfour.Arcfour.process
    - <builtin>.len
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_owner_password
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_u
    - hashlib.md5
    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: 372
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.is_printable
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - <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: 26
    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: 375
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.is_modifiable
    functionSourceFile: pdfminer.pdfdocument
    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: 1
    functionLinenumber: 378
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.is_extractable
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 381
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_u
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 7
    functionsReached:
    - hashlib.md5.digest
    - <builtin>.iter
    - pdfminer.arcfour.Arcfour.__init__
    - hashlib.md5.update
    - <builtin>.bytes
    - <builtin>.list
    - <builtin>.range
    - pdfminer.arcfour.Arcfour.process
    - <builtin>.len
    - hashlib.md5
    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: 11
    functionName: pdfminer.arcfour.Arcfour.__init__
    functionSourceFile: pdfminer.arcfour
    functionUses: 10
    functionsReached:
    - <builtin>.list
    - <builtin>.range
    - <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
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: pdfminer.arcfour.Arcfour.process
    functionSourceFile: pdfminer.arcfour
    functionUses: 10
    functionsReached:
    - <builtin>.iter
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hashlib.md5
    functionSourceFile: hashlib
    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: hashlib.md5.update
    functionSourceFile: hashlib
    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: hashlib.md5.digest
    functionSourceFile: hashlib
    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: <builtin>.iter
    functionSourceFile: <builtin>
    functionUses: 53
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - password
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 396
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_encryption_key
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 6
    functionsReached:
    - struct.pack
    - hashlib.md5.update
    - hashlib.md5.digest
    - <builtin>.range
    - typing.cast
    - hashlib.md5
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: struct.pack
    functionSourceFile: struct
    functionUses: 28
    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: password.encode
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - password
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 424
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_user_password
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 5
    functionsReached:
    - struct.pack
    - hashlib.md5.digest
    - <builtin>.range
    - <builtin>.iter
    - pdfminer.arcfour.Arcfour.__init__
    - hashlib.md5.update
    - typing.cast
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_encryption_key
    - <builtin>.bytes
    - <builtin>.list
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.verify_encryption_key
    - pdfminer.arcfour.Arcfour.process
    - <builtin>.len
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_u
    - hashlib.md5
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - password
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 438
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_owner_password
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 4
    functionsReached:
    - struct.pack
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_user_password
    - hashlib.md5.digest
    - <builtin>.range
    - <builtin>.iter
    - pdfminer.arcfour.Arcfour.__init__
    - hashlib.md5.update
    - typing.cast
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_encryption_key
    - <builtin>.bytes
    - <builtin>.list
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.verify_encryption_key
    - pdfminer.arcfour.Arcfour.process
    - <builtin>.len
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_u
    - hashlib.md5
    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: 3
    functionLinenumber: 431
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.verify_encryption_key
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 6
    functionsReached:
    - hashlib.md5.digest
    - pdfminer.arcfour.Arcfour.__init__
    - <builtin>.iter
    - hashlib.md5.update
    - <builtin>.bytes
    - <builtin>.list
    - <builtin>.range
    - pdfminer.arcfour.Arcfour.process
    - <builtin>.len
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_u
    - hashlib.md5
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f8798e14940>
    argNames:
    - self
    - objid
    - genno
    - data
    - attrs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 458
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.decrypt
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - struct.pack
    - pdfminer.pdfdocument.PDFStandardSecurityHandler.decrypt_rc4
    - <builtin>.range
    - <builtin>.list
    - <builtin>.iter
    - pdfminer.arcfour.Arcfour.__init__
    - <builtin>.bytes
    - hashlib.md5.digest
    - <builtin>.min
    - pdfminer.arcfour.Arcfour.process
    - <builtin>.len
    - hashlib.md5
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - objid
    - genno
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 467
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandler.decrypt_rc4
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 1
    functionsReached:
    - struct.pack
    - <builtin>.range
    - <builtin>.list
    - <builtin>.iter
    - pdfminer.arcfour.Arcfour.__init__
    - <builtin>.bytes
    - hashlib.md5.digest
    - <builtin>.min
    - pdfminer.arcfour.Arcfour.process
    - <builtin>.len
    - hashlib.md5
    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: 3
    functionLinenumber: 478
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.init_params
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    - typing.cast.resolve
    - <builtin>.super
    - pdfminer.pdftypes.resolve1
    - pdfminer.psparser.literal_name
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.get_cfm
    - typing.cast.items
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - logger.error
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFEncryptionError
    returnType: N/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: 69
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 110
    functionName: pdfminer.psparser.literal_name
    functionSourceFile: pdfminer.psparser
    functionUses: 37
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PSTypeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 500
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.get_cfm
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d307c0>
    - <ast.Constant object at 0x7f8798d30490>
    argNames:
    - self
    - objid
    - genno
    - data
    - attrs
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 508
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.decrypt
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - attrs.get
    - <builtin>.isinstance
    - pdfminer.psparser.literal_name
    - <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: attrs.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: 4
    argDefaultValues: []
    argNames:
    - self
    - objid
    - genno
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 524
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.decrypt_identity
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - objid
    - genno
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 527
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.decrypt_aes128
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - struct.pack
    - <builtin>.all
    - cryptography.hazmat.primitives.ciphers.modes.CBC
    - cryptography.hazmat.primitives.ciphers.Cipher.decryptor
    - cryptography.hazmat.primitives.ciphers.algorithms.AES
    - pdfminer.utils.unpad_aes
    - cryptography.hazmat.backends.default_backend
    - cryptography.hazmat.primitives.ciphers.Cipher
    - hashlib.md5.digest
    - <builtin>.min
    - <builtin>.len
    - hashlib.md5
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cryptography.hazmat.primitives.ciphers.algorithms.AES
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.ciphers.modes.CBC
    functionSourceFile: cryptography
    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: cryptography.hazmat.backends.default_backend
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.ciphers.Cipher
    functionSourceFile: cryptography
    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: cryptography.hazmat.primitives.ciphers.Cipher.decryptor
    functionSourceFile: cryptography
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - padded
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 858
    functionName: pdfminer.utils.unpad_aes
    functionSourceFile: pdfminer.utils
    functionUses: 2
    functionsReached:
    - <builtin>.all
    - <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: 3
    functionLinenumber: 551
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5.init_params
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - typing.cast.resolve
    - pdfminer.pdftypes.str_value
    - <builtin>.super
    - pdfminer.pdftypes.resolve1
    - <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: 0
    functionLinenumber: 563
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5.get_cfm
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - password
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 569
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5.authenticate
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - hashlib.sha256.update
    - <builtin>.sum
    - cryptography.hazmat.primitives.ciphers.Cipher.decryptor
    - cryptography.hazmat.primitives.ciphers.algorithms.AES
    - pdfminer._saslprep.saslprep
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._password_hash
    - encryptor.update
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._normalize_password
    - <builtin>.len
    - encryptor.finalize
    - cryptography.hazmat.primitives.ciphers.modes.CBC
    - cryptography.hazmat.backends.default_backend
    - stringprep.in_table_d1
    - cryptography.hazmat.primitives.ciphers.Cipher
    - stringprep.in_table_b1
    - unicodedata.ucd_3_2_0.normalize
    - cryptography.hazmat.primitives.ciphers.Cipher.encryptor
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._aes_cbc_encrypt
    - hashlib.sha256
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._r6_password
    - stringprep.in_table_c12
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._r5_password
    - password.encode
    - hashlib.sha256.digest
    - <builtin>.any
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._bytes_mod_3
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - password
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 591
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._normalize_password
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 1
    functionsReached:
    - stringprep.in_table_c12
    - pdfminer._saslprep.saslprep
    - stringprep.in_table_d1
    - password.encode
    - unicodedata.ucd_3_2_0.normalize
    - stringprep.in_table_b1
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798c9ab50>
    argNames:
    - self
    - password
    - salt
    - vector
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 601
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._password_hash
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 1
    functionsReached:
    - hashlib.sha256.update
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._aes_cbc_encrypt
    - <builtin>.sum
    - cryptography.hazmat.primitives.ciphers.modes.CBC
    - cryptography.hazmat.primitives.ciphers.algorithms.AES
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._r5_password
    - encryptor.update
    - hashlib.sha256
    - cryptography.hazmat.primitives.ciphers.Cipher
    - hashlib.sha256.digest
    - cryptography.hazmat.primitives.ciphers.Cipher.encryptor
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._bytes_mod_3
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._r6_password
    - <builtin>.len
    - encryptor.finalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f8798a8cac0>
    argNames:
    - data
    - prohibit_unassigned_code_points
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 46
    functionName: pdfminer._saslprep.saslprep
    functionSourceFile: pdfminer._saslprep
    functionUses: 2
    functionsReached:
    - stringprep.in_table_c12
    - stringprep.in_table_d1
    - stringprep.in_table_b1
    - <builtin>.any
    - unicodedata.ucd_3_2_0.normalize
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d262b0>
    argNames:
    - self
    - password
    - salt
    - vector
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 612
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._r5_password
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 2
    functionsReached:
    - hashlib.sha256.update
    - hashlib.sha256
    - hashlib.sha256.digest
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d26ee0>
    argNames:
    - self
    - password
    - salt
    - vector
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 625
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._r6_password
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 2
    functionsReached:
    - hashlib.sha256.update
    - <builtin>.sum
    - cryptography.hazmat.primitives.ciphers.modes.CBC
    - cryptography.hazmat.primitives.ciphers.algorithms.AES
    - encryptor.update
    - hashlib.sha256
    - cryptography.hazmat.primitives.ciphers.Cipher
    - hashlib.sha256.digest
    - cryptography.hazmat.primitives.ciphers.Cipher.encryptor
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._bytes_mod_3
    - pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._aes_cbc_encrypt
    - <builtin>.len
    - encryptor.finalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hashlib.sha256
    functionSourceFile: hashlib
    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: hashlib.sha256.update
    functionSourceFile: hashlib
    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: hashlib.sha256.digest
    functionSourceFile: hashlib
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - key
    - iv
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 655
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._aes_cbc_encrypt
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 3
    functionsReached:
    - cryptography.hazmat.primitives.ciphers.modes.CBC
    - cryptography.hazmat.primitives.ciphers.algorithms.AES
    - encryptor.update
    - cryptography.hazmat.primitives.ciphers.Cipher
    - cryptography.hazmat.primitives.ciphers.Cipher.encryptor
    - encryptor.finalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - input_bytes
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 651
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._bytes_mod_3
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 3
    functionsReached:
    - <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: <builtin>.sum
    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: cryptography.hazmat.primitives.ciphers.Cipher.encryptor
    functionSourceFile: cryptography
    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: encryptor.update
    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: encryptor.finalize
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - objid
    - genno
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 660
    functionName: pdfminer.pdfdocument.PDFStandardSecurityHandlerV5.decrypt_aes256
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - <builtin>.all
    - cryptography.hazmat.primitives.ciphers.modes.CBC
    - cryptography.hazmat.primitives.ciphers.Cipher.decryptor
    - cryptography.hazmat.primitives.ciphers.algorithms.AES
    - pdfminer.utils.unpad_aes
    - cryptography.hazmat.backends.default_backend
    - cryptography.hazmat.primitives.ciphers.Cipher
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 953
    functionName: pdfminer.pdfdocument.PDFDocument.find_xref
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 9
    functionsReached:
    - <builtin>.int
    - log.debug
    - parser.revreadlines
    - prev.isdigit
    - line.strip
    linkageType: pythonLinkage
    raised:
    - PDFNoValidXRef
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 13
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - parser
    - start
    - xrefs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 984
    functionName: pdfminer.pdfdocument.PDFDocument.read_xref_from
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 9
    functionsReached:
    - obj.get
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - parser.seek
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - parser.nexttoken
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - parser1.nextobject
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - parser.pop
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - line_bytes.decode
    - pdfminer.pdfdocument.PDFXRef.__init__
    - parser.reset
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - xrefs.append
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - parser.nextline
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - pdfminer.pdftypes.PDFStream.decode
    - line_bytes.startswith
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.utils.paeth_predictor
    - <builtin>.iter
    - <builtin>.max
    - raw.append
    linkageType: pythonLinkage
    raised:
    - PDFNoValidXRef
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xref.get_trailer
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d48430>
    argNames:
    - self
    - password
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 752
    functionName: pdfminer.pdfdocument.PDFDocument._initialize_password
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 9
    functionsReached:
    - typing.cast.resolve
    - handler.is_modifiable
    - pdfminer.pdftypes.int_value
    - pdfminer.psparser.literal_name
    - handler.is_printable
    - <builtin>.str
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - handler.is_extractable
    - param.get
    linkageType: pythonLinkage
    raised:
    - PDFEncryptionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: param.get
    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: handler.is_printable
    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: handler.is_modifiable
    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: handler.is_extractable
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - stream
    - index
    - objid
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 769
    functionName: pdfminer.pdfdocument.PDFDocument._getobj_objstm
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 10
    functionsReached:
    - decoded_array.extend
    - pdfminer.pdftypes.PDFStream.get
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.int_value
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - pdfminer.lzw.lzwdecode
    - io.BytesIO
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 784
    functionName: pdfminer.pdfdocument.PDFDocument._get_objects
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 11
    functionsReached:
    - decoded_array.extend
    - pdfminer.pdftypes.PDFStream.get
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.int_value
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - pdfminer.lzw.lzwdecode
    - io.BytesIO
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - pos
    - objid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 804
    functionName: pdfminer.pdfdocument.PDFDocument._getobj_parse
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 10
    functionsReached:
    - x.append
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    returnType: N/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.append
    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: xref.get_pos
    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: obj.set_objid
    functionSourceFile: <builtin>
    functionUses: 10
    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: 4
    functionLinenumber: 874
    functionName: pdfminer.pdfdocument.PDFDocument.get_outlines
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - typing.cast.get
    - typing.cast.resolve
    - pdfminer.pdftypes.str_value
    - typing.cast.startswith
    - pdfminer.pdftypes.resolve1
    - pdfminer.utils.decode_text
    - pdfminer.pdfdocument.PDFDocument.get_outlines.search
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - logger.error
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - entry
    - level
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 878
    functionName: pdfminer.pdfdocument.PDFDocument.get_outlines.search
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 1
    functionsReached:
    - typing.cast.get
    - typing.cast.resolve
    - pdfminer.pdftypes.str_value
    - typing.cast.startswith
    - pdfminer.utils.decode_text
    - pdfminer.pdfdocument.PDFDocument.get_outlines.search
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - logger.error
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 684
    functionName: pdfminer.utils.decode_text
    functionSourceFile: pdfminer.utils
    functionUses: 3
    functionsReached:
    - typing.cast.startswith
    - <builtin>.str
    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: 893
    functionName: pdfminer.pdfdocument.PDFDocument.get_page_labels
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 7
    functionsReached:
    - typing.cast.resolve
    - pdfminer.pdftypes.resolve1
    - pdfminer.pdftypes.list_value
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - pdfminer.data_structures.NumberTree.__init__
    - logger.error
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 17
    functionName: pdfminer.data_structures.NumberTree.__init__
    functionSourceFile: pdfminer.data_structures
    functionUses: 13
    functionsReached:
    - typing.cast.resolve
    - pdfminer.pdftypes.resolve1
    - pdfminer.pdftypes.list_value
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - logger.error
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cat
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 910
    functionName: pdfminer.pdfdocument.PDFDocument.lookup_name
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 1
    functionsReached:
    - typing.cast.resolve
    - <builtin>.dict
    - <builtin>.tuple
    - pdfminer.utils.choplist
    - pdfminer.pdfdocument.PDFDocument.lookup_name.lookup
    - pdfminer.pdftypes.list_value
    - typing.cast
    - r.append
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - <builtin>.len
    - logger.error
    linkageType: pythonLinkage
    raised:
    - PDFKeyError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 918
    functionName: pdfminer.pdfdocument.PDFDocument.lookup_name.lookup
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 2
    functionsReached:
    - <builtin>.tuple
    - <builtin>.dict
    - typing.cast.resolve
    - logger.error
    - pdfminer.utils.choplist
    - pdfminer.pdfdocument.PDFDocument.lookup_name.lookup
    - pdfminer.pdftypes.list_value
    - r.append
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - <builtin>.len
    - typing.cast
    linkageType: pythonLinkage
    raised:
    - PDFKeyError
    returnType: N/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>.dict
    functionSourceFile: <builtin>
    functionUses: 27
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 938
    functionName: pdfminer.pdfdocument.PDFDocument.get_dest
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - typing.cast.resolve
    - <builtin>.dict
    - <builtin>.tuple
    - pdfminer.utils.choplist
    - pdfminer.pdfdocument.PDFDocument.lookup_name.lookup
    - pdfminer.pdftypes.list_value
    - typing.cast
    - pdfminer.pdfdocument.PDFDocument.lookup_name
    - r.append
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - <builtin>.len
    - logger.error
    linkageType: pythonLinkage
    raised:
    - PDFDestinationNotFound
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.revreadlines
    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: prev.isdigit
    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: parser.reset
    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: xrefs.append
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1028
    functionName: pdfminer.pdfdocument.PageLabels.labels
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 0
    functionsReached:
    - pdfminer.pdftypes.str_value
    - itertools.count
    - typing.cast.startswith
    - pdfminer.utils.format_int_roman
    - pdfminer.pdftypes.dict_value
    - log.warning
    - result.insert
    - <builtin>.len
    - <builtin>.enumerate
    - pdfminer.pdftypes.int_value
    - result.append
    - pdfminer.pdfdocument.PageLabels._format_page_label
    - pdfminer.utils.decode_text
    - <builtin>.range
    - <builtin>.isinstance
    - logger.error
    - pdfminer.utils.format_int_alpha
    - typing.cast.resolve
    - result.reverse
    - pdfminer.pdftypes.resolve1
    - typing.cast.get
    - <builtin>.divmod
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.count
    functionSourceFile: itertools
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - value
    - style
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1059
    functionName: pdfminer.pdfdocument.PageLabels._format_page_label
    functionSourceFile: pdfminer.pdfdocument
    functionUses: 1
    functionsReached:
    - <builtin>.divmod
    - result.append
    - pdfminer.utils.format_int_roman
    - result.reverse
    - log.warning
    - result.insert
    - <builtin>.len
    - pdfminer.utils.format_int_alpha
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 7
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 820
    functionName: pdfminer.utils.format_int_roman
    functionSourceFile: pdfminer.utils
    functionUses: 2
    functionsReached:
    - result.insert
    - <builtin>.divmod
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 845
    functionName: pdfminer.utils.format_int_alpha
    functionSourceFile: pdfminer.utils
    functionUses: 2
    functionsReached:
    - result.append
    - result.reverse
    - <builtin>.divmod
    - <builtin>.len
    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: pdfminer.arcfour
    functionSourceFile: pdfminer.arcfour
    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: pdfminer.settings
    functionSourceFile: pdfminer.settings
    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: pdfminer.casting
    functionSourceFile: pdfminer.casting
    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:
    - o
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 17
    functionName: pdfminer.casting.safe_float
    functionSourceFile: pdfminer.casting
    functionUses: 52
    functionsReached:
    - <builtin>.float
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.float
    functionSourceFile: <builtin>
    functionUses: 82
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - a
    - b
    - c
    - d
    - e
    - f
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 24
    functionName: pdfminer.casting.safe_matrix
    functionSourceFile: pdfminer.casting
    functionUses: 2
    functionsReached:
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - r
    - g
    - b
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 45
    functionName: pdfminer.casting.safe_rgb
    functionSourceFile: pdfminer.casting
    functionUses: 7
    functionsReached:
    - pdfminer.casting._safe_float_triple
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - a
    - b
    - c
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 71
    functionName: pdfminer.casting._safe_float_triple
    functionSourceFile: pdfminer.casting
    functionUses: 8
    functionsReached:
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - c
    - m
    - y
    - k
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 49
    functionName: pdfminer.casting.safe_cmyk
    functionSourceFile: pdfminer.casting
    functionUses: 7
    functionsReached:
    - pdfminer.casting._safe_float_quadruple
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 82
    functionName: pdfminer.casting._safe_float_quadruple
    functionSourceFile: pdfminer.casting
    functionUses: 25
    functionsReached:
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 55
    functionName: pdfminer.casting.safe_rect_list
    functionSourceFile: pdfminer.casting
    functionUses: 15
    functionsReached:
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - pdfminer.casting.safe_float
    - <builtin>.float
    - <builtin>.list
    - <builtin>.len
    - pdfminer.casting.safe_rect
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.islice
    functionSourceFile: itertools
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 67
    functionName: pdfminer.casting.safe_rect
    functionSourceFile: pdfminer.casting
    functionUses: 16
    functionsReached:
    - pdfminer.casting._safe_float_quadruple
    - <builtin>.float
    - pdfminer.casting.safe_float
    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: pdfminer.utils
    functionSourceFile: pdfminer.utils
    functionUses: 0
    functionsReached:
    - <builtin>.chr
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - filename
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: pdfminer.utils.open_filename.__init__
    functionSourceFile: pdfminer.utils
    functionUses: 2
    functionsReached:
    - <builtin>.open
    - <builtin>.isinstance
    - typing.cast
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFTypeError
    returnType: N/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>.open
    functionSourceFile: <builtin>
    functionUses: 21
    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: pdfminer.utils.open_filename.__enter__
    functionSourceFile: pdfminer.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 57
    functionName: pdfminer.utils.open_filename.__exit__
    functionSourceFile: pdfminer.utils
    functionUses: 0
    functionsReached:
    - typing.cast.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.close
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - in_str
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 62
    functionName: pdfminer.utils.make_compat_bytes
    functionSourceFile: pdfminer.utils
    functionUses: 5
    functionsReached:
    - <builtin>.type
    - <builtin>.isinstance
    - typing.cast.encode
    - <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: typing.cast.encode
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - o
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 68
    functionName: pdfminer.utils.make_compat_str
    functionSourceFile: pdfminer.utils
    functionUses: 8
    functionsReached:
    - charset_normalizer.detect
    - <builtin>.isinstance
    - o.decode
    - <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: charset_normalizer.detect
    functionSourceFile: charset_normalizer
    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: o.decode
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - s
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: pdfminer.utils.shorten_str
    functionSourceFile: pdfminer.utils
    functionUses: 0
    functionsReached:
    - <builtin>.len
    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 0x7f8798c9b3a0>
    - <ast.Constant object at 0x7f8798c9baf0>
    argNames:
    - bytesorstring
    - encoding
    - erraction
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 92
    functionName: pdfminer.utils.compatible_encode_method
    functionSourceFile: pdfminer.utils
    functionUses: 3
    functionsReached:
    - <builtin>.type
    - bytesorstring.decode
    - <builtin>.isinstance
    - <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: bytesorstring.decode
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - left
    - above
    - upper_left
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 107
    functionName: pdfminer.utils.paeth_predictor
    functionSourceFile: pdfminer.utils
    functionUses: 37
    functionsReached:
    - <builtin>.abs
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.abs
    functionSourceFile: <builtin>
    functionUses: 62
    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: raw.append
    functionSourceFile: <builtin>
    functionUses: 38
    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: buf.extend
    functionSourceFile: <builtin>
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - o
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 262
    functionName: pdfminer.utils.parse_rect
    functionSourceFile: pdfminer.utils
    functionUses: 10
    functionsReached:
    - <builtin>.float
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - m1
    - m0
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 270
    functionName: pdfminer.utils.mult_matrix
    functionSourceFile: pdfminer.utils
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - m
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 284
    functionName: pdfminer.utils.translate_matrix
    functionSourceFile: pdfminer.utils
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - m
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 295
    functionName: pdfminer.utils.apply_matrix_pt
    functionSourceFile: pdfminer.utils
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - m
    - rect
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 302
    functionName: pdfminer.utils.apply_matrix_rect
    functionSourceFile: pdfminer.utils
    functionUses: 12
    functionsReached:
    - pdfminer.utils.apply_matrix_pt
    - <builtin>.min
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.max
    functionSourceFile: <builtin>
    functionUses: 122
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - m
    - v
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 332
    functionName: pdfminer.utils.apply_matrix_norm
    functionSourceFile: pdfminer.utils
    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:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 342
    functionName: pdfminer.utils.isnumber
    functionSourceFile: pdfminer.utils
    functionUses: 0
    functionsReached:
    - <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: typing.TypeVar
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - objs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 349
    functionName: pdfminer.utils.uniq
    functionSourceFile: pdfminer.utils
    functionUses: 9
    functionsReached:
    - <builtin>.set
    - done.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 66
    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: done.add
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - pred
    - objs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 359
    functionName: pdfminer.utils.fsplit
    functionSourceFile: pdfminer.utils
    functionUses: 8
    functionsReached:
    - f.append
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    - obj.is_empty
    - t.append
    - <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: 1
    functionLinenumber: -1
    functionName: pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - <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: 1
    functionLinenumber: -1
    functionName: pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - obj.is_empty
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: t.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: f.append
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - v0
    - v1
    - d
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 371
    functionName: pdfminer.utils.drange
    functionSourceFile: pdfminer.utils
    functionUses: 5
    functionsReached:
    - <builtin>.range
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - pts
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 376
    functionName: pdfminer.utils.get_bound
    functionSourceFile: pdfminer.utils
    functionUses: 4
    functionsReached:
    - <builtin>.min
    - <builtin>.max
    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 0x7f8798c6edf0>
    argNames:
    - seq
    - func
    - maxobj
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 388
    functionName: pdfminer.utils.pick
    functionSourceFile: pdfminer.utils
    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: r.append
    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: <builtin>.tuple
    functionSourceFile: <builtin>
    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: int.from_bytes
    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: <builtin>.chr
    functionSourceFile: <builtin>
    functionUses: 31
    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: typing.cast.startswith
    functionSourceFile: typing
    functionUses: 53
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 692
    functionName: pdfminer.utils.enc
    functionSourceFile: pdfminer.utils
    functionUses: 22
    functionsReached:
    - <builtin>.isinstance
    - html.escape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: html.escape
    functionSourceFile: html
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - bbox
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 699
    functionName: pdfminer.utils.bbox2str
    functionSourceFile: pdfminer.utils
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - m
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 704
    functionName: pdfminer.utils.matrix2str
    functionSourceFile: pdfminer.utils
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - obj1
    - obj2
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 709
    functionName: pdfminer.utils.vecBetweenBoxes
    functionSourceFile: pdfminer.utils
    functionUses: 0
    functionsReached:
    - <builtin>.min
    - <builtin>.max
    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 0x7f8798b27640>
    argNames:
    - self
    - bbox
    - gridsize
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 746
    functionName: pdfminer.utils.Plane.__init__
    functionSourceFile: pdfminer.utils
    functionUses: 10
    functionsReached:
    - <builtin>.set
    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: 753
    functionName: pdfminer.utils.Plane.__repr__
    functionSourceFile: pdfminer.utils
    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: 0
    functionLinenumber: 756
    functionName: pdfminer.utils.Plane.__iter__
    functionSourceFile: pdfminer.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: 759
    functionName: pdfminer.utils.Plane.__len__
    functionSourceFile: pdfminer.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
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 762
    functionName: pdfminer.utils.Plane.__contains__
    functionSourceFile: pdfminer.utils
    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
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 765
    functionName: pdfminer.utils.Plane._getrange
    functionSourceFile: pdfminer.utils
    functionUses: 4
    functionsReached:
    - pdfminer.utils.drange
    - <builtin>.int
    - <builtin>.max
    - <builtin>.range
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - objs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 777
    functionName: pdfminer.utils.Plane.extend
    functionSourceFile: pdfminer.utils
    functionUses: 0
    functionsReached:
    - pdfminer.utils.drange
    - <builtin>.int
    - pdfminer.utils.Plane._getrange
    - pdfminer.utils.Plane.add
    - <builtin>.max
    - r.append
    - <builtin>.range
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 781
    functionName: pdfminer.utils.Plane.add
    functionSourceFile: pdfminer.utils
    functionUses: 1
    functionsReached:
    - pdfminer.utils.drange
    - <builtin>.int
    - pdfminer.utils.Plane._getrange
    - <builtin>.max
    - r.append
    - <builtin>.range
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 793
    functionName: pdfminer.utils.Plane.remove
    functionSourceFile: pdfminer.utils
    functionUses: 0
    functionsReached:
    - pdfminer.utils.drange
    - <builtin>.int
    - pdfminer.utils.Plane._getrange
    - contextlib.suppress
    - <builtin>.max
    - <builtin>.range
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: contextlib.suppress
    functionSourceFile: contextlib
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 800
    functionName: pdfminer.utils.Plane.find
    functionSourceFile: pdfminer.utils
    functionUses: 0
    functionsReached:
    - pdfminer.utils.drange
    - <builtin>.int
    - pdfminer.utils.Plane._getrange
    - <builtin>.max
    - <builtin>.set
    - done.add
    - <builtin>.range
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.divmod
    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: result.insert
    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: result.append
    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: result.reverse
    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: <builtin>.all
    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: pdfminer.pdfexceptions
    functionSourceFile: pdfminer.pdfexceptions
    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: pdfminer.psexceptions
    functionSourceFile: pdfminer.psexceptions
    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: pdfminer.layout
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    - logging.getLogger
    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 0x7f87996fc280>
    argNames:
    - self
    - index
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: pdfminer.layout.IndexAssigner.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: pdfminer.layout.IndexAssigner.run
    functionSourceFile: pdfminer.layout
    functionUses: 8
    functionsReached:
    - pdfminer.layout.IndexAssigner.run
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: pdfminer.layout.LAParams._validate
    functionSourceFile: pdfminer.layout
    functionUses: 7
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    - PDFTypeError
    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: 106
    functionName: pdfminer.layout.LAParams.__repr__
    functionSourceFile: pdfminer.layout
    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
    - laparams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 118
    functionName: pdfminer.layout.LTItem.analyze
    functionSourceFile: pdfminer.layout
    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: 125
    functionName: pdfminer.layout.LTText.__repr__
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.layout.LTText.get_text
    - pdfminer.layout.LTChar.get_text
    - pdfminer.layout.LTAnno.get_text
    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: 343
    functionName: pdfminer.layout.LTAnno.get_text
    functionSourceFile: ''
    functionUses: 1
    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: 128
    functionName: pdfminer.layout.LTText.get_text
    functionSourceFile: ''
    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: 404
    functionName: pdfminer.layout.LTChar.get_text
    functionSourceFile: ''
    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
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 136
    functionName: pdfminer.layout.LTComponent.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 28
    functionsReached:
    - pdfminer.layout.LTComponent.set_bbox
    - LTItem.__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: LTItem.__init__
    functionSourceFile: <builtin>
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 156
    functionName: pdfminer.layout.LTComponent.set_bbox
    functionSourceFile: ''
    functionUses: 29
    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: 140
    functionName: pdfminer.layout.LTComponent.__repr__
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.utils.bbox2str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - _
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 144
    functionName: pdfminer.layout.LTComponent.__lt__
    functionSourceFile: pdfminer.layout
    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
    - _
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 147
    functionName: pdfminer.layout.LTComponent.__le__
    functionSourceFile: pdfminer.layout
    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
    - _
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 150
    functionName: pdfminer.layout.LTComponent.__gt__
    functionSourceFile: pdfminer.layout
    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
    - _
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 153
    functionName: pdfminer.layout.LTComponent.__ge__
    functionSourceFile: pdfminer.layout
    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: 166
    functionName: pdfminer.layout.LTComponent.is_empty
    functionSourceFile: pdfminer.layout
    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
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 169
    functionName: pdfminer.layout.LTComponent.is_hoverlap
    functionSourceFile: pdfminer.layout
    functionUses: 2
    functionsReached:
    - <builtin>.type
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 173
    functionName: pdfminer.layout.LTComponent.hdistance
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.layout.LTComponent.is_hoverlap
    - <builtin>.type
    - <builtin>.abs
    - <builtin>.min
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 180
    functionName: pdfminer.layout.LTComponent.hoverlap
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.layout.LTComponent.is_hoverlap
    - <builtin>.type
    - <builtin>.abs
    - <builtin>.min
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 187
    functionName: pdfminer.layout.LTComponent.is_voverlap
    functionSourceFile: pdfminer.layout
    functionUses: 2
    functionsReached:
    - <builtin>.type
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 191
    functionName: pdfminer.layout.LTComponent.vdistance
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - <builtin>.type
    - <builtin>.abs
    - <builtin>.min
    - <builtin>.isinstance
    - pdfminer.layout.LTComponent.is_voverlap
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 198
    functionName: pdfminer.layout.LTComponent.voverlap
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - <builtin>.type
    - <builtin>.abs
    - <builtin>.min
    - <builtin>.isinstance
    - pdfminer.layout.LTComponent.is_voverlap
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7f8798c3f760>
    - <ast.Constant object at 0x7f8798c3f130>
    - <ast.Constant object at 0x7f8798c3f310>
    - <ast.Constant object at 0x7f8798c3fc10>
    - <ast.Constant object at 0x7f8798c3f730>
    - <ast.Constant object at 0x7f8798c3fa60>
    - <ast.Constant object at 0x7f8798c3f160>
    argNames:
    - self
    - linewidth
    - pts
    - stroke
    - fill
    - evenodd
    - stroking_color
    - non_stroking_color
    - original_path
    - dashing_style
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 215
    functionName: pdfminer.layout.LTCurve.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 3
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - LTItem.__init__
    - <builtin>.max
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.utils.get_bound
    - <builtin>.min
    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: 238
    functionName: pdfminer.layout.LTCurve.get_pts
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7f8798c18730>
    - <ast.Constant object at 0x7f8798c182e0>
    - <ast.Constant object at 0x7f8798c18fa0>
    - <ast.Constant object at 0x7f8798c18af0>
    - <ast.Constant object at 0x7f8798c18c40>
    - <ast.Constant object at 0x7f8798c18220>
    - <ast.Constant object at 0x7f8798c18910>
    argNames:
    - self
    - linewidth
    - p0
    - p1
    - stroke
    - fill
    - evenodd
    - stroking_color
    - non_stroking_color
    - original_path
    - dashing_style
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 248
    functionName: pdfminer.layout.LTLine.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - LTItem.__init__
    - <builtin>.max
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.utils.get_bound
    - <builtin>.min
    - pdfminer.layout.LTCurve.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7f87990a9ee0>
    - <ast.Constant object at 0x7f87990a9bb0>
    - <ast.Constant object at 0x7f87990a9880>
    - <ast.Constant object at 0x7f87990a96d0>
    - <ast.Constant object at 0x7f87990a98b0>
    - <ast.Constant object at 0x7f879850b670>
    - <ast.Constant object at 0x7f879850bdf0>
    argNames:
    - self
    - linewidth
    - bbox
    - stroke
    - fill
    - evenodd
    - stroking_color
    - non_stroking_color
    - original_path
    - dashing_style
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 281
    functionName: pdfminer.layout.LTRect.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - LTItem.__init__
    - <builtin>.max
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.utils.get_bound
    - <builtin>.min
    - pdfminer.layout.LTCurve.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - stream
    - bbox
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 314
    functionName: pdfminer.layout.LTImage.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - LTItem.__init__
    - typing.cast.name.get_any
    - pdfminer.layout.LTComponent.set_bbox
    - <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: typing.cast.name.get_any
    functionSourceFile: typing
    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: 325
    functionName: pdfminer.layout.LTImage.__repr__
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.utils.bbox2str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 340
    functionName: pdfminer.layout.LTAnno.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 11
    argDefaultValues: []
    argNames:
    - self
    - matrix
    - font
    - fontsize
    - scaling
    - rise
    - text
    - textwidth
    - textdisp
    - ncs
    - graphicstate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 350
    functionName: pdfminer.layout.LTChar.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.utils.apply_matrix_pt
    - pdfminer.utils.apply_matrix_rect
    - LTItem.__init__
    - <builtin>.max
    - font.get_descent
    - pdfminer.layout.LTComponent.set_bbox
    - LTText.__init__
    - <builtin>.min
    - <builtin>.isinstance
    - font.is_vertical
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: LTText.__init__
    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: font.is_vertical
    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: font.get_descent
    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: 395
    functionName: pdfminer.layout.LTChar.__repr__
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.utils.bbox2str
    - pdfminer.layout.LTChar.get_text
    - pdfminer.utils.matrix2str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 414
    functionName: pdfminer.layout.LTContainer.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 19
    functionsReached:
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTComponent.__init__
    - LTItem.__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: 1
    functionLinenumber: 418
    functionName: pdfminer.layout.LTContainer.__iter__
    functionSourceFile: pdfminer.layout
    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: 421
    functionName: pdfminer.layout.LTContainer.__len__
    functionSourceFile: pdfminer.layout
    functionUses: 0
    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
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 424
    functionName: pdfminer.layout.LTContainer.add
    functionSourceFile: pdfminer.layout
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - objs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 427
    functionName: pdfminer.layout.LTContainer.extend
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.layout.LTContainer.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - laparams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 431
    functionName: pdfminer.layout.LTContainer.analyze
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - obj.analyze
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: obj.analyze
    functionSourceFile: <builtin>
    functionUses: 10
    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: 3
    functionLinenumber: 437
    functionName: pdfminer.layout.LTExpandableContainer.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 11
    functionsReached:
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTContainer.__init__
    - pdfminer.layout.LTComponent.__init__
    - LTItem.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 442
    functionName: pdfminer.layout.LTExpandableContainer.add
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - <builtin>.min
    - pdfminer.layout.LTContainer.add
    - typing.cast
    - <builtin>.max
    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: 4
    functionLinenumber: 455
    functionName: pdfminer.layout.LTTextContainer.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 10
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - LTItem.__init__
    - pdfminer.layout.LTExpandableContainer.__init__
    - pdfminer.layout.LTComponent.set_bbox
    - LTText.__init__
    - pdfminer.layout.LTContainer.__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: 1
    functionLinenumber: 459
    functionName: pdfminer.layout.LTTextContainer.get_text
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - typing.cast.get_text
    - <builtin>.isinstance
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.get_text
    functionSourceFile: typing
    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
    - word_margin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 475
    functionName: pdfminer.layout.LTTextLine.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 11
    functionsReached:
    - <builtin>.super
    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: 479
    functionName: pdfminer.layout.LTTextLine.__repr__
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.utils.bbox2str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - laparams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 482
    functionName: pdfminer.layout.LTTextLine.analyze
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.layout.LTAnno.__init__
    - pdfminer.layout.LTContainer.add
    - obj.analyze
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - plane
    - ratio
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 487
    functionName: pdfminer.layout.LTTextLine.find_neighbors
    functionSourceFile: pdfminer.layout
    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: 494
    functionName: pdfminer.layout.LTTextLine.is_empty
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - word_margin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 499
    functionName: pdfminer.layout.LTTextLineHorizontal.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - pdfminer.layout.LTTextLine.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 505
    functionName: pdfminer.layout.LTTextLineHorizontal.add
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - <builtin>.super
    - pdfminer.layout.LTAnno.__init__
    - <builtin>.max
    - <builtin>.isinstance
    - pdfminer.layout.LTContainer.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - plane
    - ratio
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 513
    functionName: pdfminer.layout.LTTextLineHorizontal.find_neighbors
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.layout.LTTextLineHorizontal._is_left_aligned_with
    - pdfminer.layout.LTTextLineHorizontal._is_centrally_aligned_with
    - pdfminer.layout.LTTextLineHorizontal._is_same_height_as
    - pdfminer.layout.LTTextLineHorizontal._is_right_aligned_with
    - <builtin>.abs
    - <builtin>.isinstance
    - plane.find
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: plane.find
    functionSourceFile: <builtin>
    functionUses: 12
    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 0x7f8798e14e80>
    argNames:
    - self
    - other
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 557
    functionName: pdfminer.layout.LTTextLineHorizontal._is_same_height_as
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - <builtin>.abs
    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 0x7f8798fcdfa0>
    argNames:
    - self
    - other
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 541
    functionName: pdfminer.layout.LTTextLineHorizontal._is_left_aligned_with
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - <builtin>.abs
    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 0x7f8798fcd5b0>
    argNames:
    - self
    - other
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 545
    functionName: pdfminer.layout.LTTextLineHorizontal._is_right_aligned_with
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - <builtin>.abs
    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 0x7f8798fcd730>
    argNames:
    - self
    - other
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 549
    functionName: pdfminer.layout.LTTextLineHorizontal._is_centrally_aligned_with
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - <builtin>.abs
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - word_margin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 562
    functionName: pdfminer.layout.LTTextLineVertical.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - pdfminer.layout.LTTextLine.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 568
    functionName: pdfminer.layout.LTTextLineVertical.add
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - <builtin>.super
    - pdfminer.layout.LTAnno.__init__
    - <builtin>.max
    - <builtin>.isinstance
    - pdfminer.layout.LTContainer.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - plane
    - ratio
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 576
    functionName: pdfminer.layout.LTTextLineVertical.find_neighbors
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.layout.LTTextLineVertical._is_same_width_as
    - pdfminer.layout.LTTextLineVertical._is_lower_aligned_with
    - pdfminer.layout.LTTextLineVertical._is_upper_aligned_with
    - <builtin>.abs
    - pdfminer.layout.LTTextLineVertical._is_centrally_aligned_with
    - <builtin>.isinstance
    - plane.find
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - other
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 620
    functionName: pdfminer.layout.LTTextLineVertical._is_same_width_as
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - <builtin>.abs
    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 0x7f8798d30460>
    argNames:
    - self
    - other
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 604
    functionName: pdfminer.layout.LTTextLineVertical._is_lower_aligned_with
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - <builtin>.abs
    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 0x7f8798c38b50>
    argNames:
    - self
    - other
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 608
    functionName: pdfminer.layout.LTTextLineVertical._is_upper_aligned_with
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - <builtin>.abs
    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 0x7f8798c38640>
    argNames:
    - self
    - other
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 612
    functionName: pdfminer.layout.LTTextLineVertical._is_centrally_aligned_with
    functionSourceFile: pdfminer.layout
    functionUses: 1
    functionsReached:
    - <builtin>.abs
    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: 5
    functionLinenumber: 632
    functionName: pdfminer.layout.LTTextBox.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.layout.LTTextContainer.__init__
    - LTItem.__init__
    - pdfminer.layout.LTExpandableContainer.__init__
    - pdfminer.layout.LTComponent.set_bbox
    - LTText.__init__
    - pdfminer.layout.LTContainer.__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: 1
    functionLinenumber: 636
    functionName: pdfminer.layout.LTTextBox.__repr__
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.utils.bbox2str
    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: 642
    functionName: pdfminer.layout.LTTextBox.get_writing_mode
    functionSourceFile: pdfminer.layout
    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
    - laparams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 647
    functionName: pdfminer.layout.LTTextBoxHorizontal.analyze
    functionSourceFile: pdfminer.layout
    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: pdfminer.layout.LTTextBoxHorizontal.analyze.<lambda1>
    functionSourceFile: pdfminer.layout
    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: 651
    functionName: pdfminer.layout.LTTextBoxHorizontal.get_writing_mode
    functionSourceFile: pdfminer.layout
    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
    - laparams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 656
    functionName: pdfminer.layout.LTTextBoxVertical.analyze
    functionSourceFile: pdfminer.layout
    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: pdfminer.layout.LTTextBoxVertical.analyze.<lambda1>
    functionSourceFile: pdfminer.layout
    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: 660
    functionName: pdfminer.layout.LTTextBoxVertical.get_writing_mode
    functionSourceFile: pdfminer.layout
    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
    - objs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 668
    functionName: pdfminer.layout.LTTextGroup.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - laparams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 674
    functionName: pdfminer.layout.LTTextGroupLRTB.analyze
    functionSourceFile: pdfminer.layout
    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: pdfminer.layout.LTTextGroupLRTB.analyze.<lambda1>
    functionSourceFile: pdfminer.layout
    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
    - laparams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 686
    functionName: pdfminer.layout.LTTextGroupTBRL.analyze
    functionSourceFile: pdfminer.layout
    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: pdfminer.layout.LTTextGroupTBRL.analyze.<lambda1>
    functionSourceFile: pdfminer.layout
    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
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 698
    functionName: pdfminer.layout.LTLayoutContainer.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 11
    functionsReached:
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTContainer.__init__
    - pdfminer.layout.LTComponent.__init__
    - LTItem.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 10
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - laparams
    - objs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 703
    functionName: pdfminer.layout.LTLayoutContainer.group_objects
    functionSourceFile: pdfminer.layout
    functionUses: 8
    functionsReached:
    - obj0.voverlap
    - <builtin>.super
    - obj0.is_voverlap
    - pdfminer.layout.LTAnno.__init__
    - pdfminer.layout.LTTextLineVertical.add
    - obj0.hoverlap
    - <builtin>.max
    - obj0.vdistance
    - pdfminer.layout.LTTextLineHorizontal.__init__
    - obj0.hdistance
    - pdfminer.layout.LTTextLineVertical.__init__
    - pdfminer.layout.LTTextLine.__init__
    - pdfminer.layout.LTTextLineHorizontal.add
    - <builtin>.min
    - <builtin>.isinstance
    - pdfminer.layout.LTContainer.add
    - obj0.is_hoverlap
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: obj0.is_voverlap
    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: obj0.voverlap
    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: obj0.hdistance
    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: obj0.is_hoverlap
    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: obj0.hoverlap
    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: obj0.vdistance
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - laparams
    - lines
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 780
    functionName: pdfminer.layout.LTLayoutContainer.group_textlines
    functionSourceFile: pdfminer.layout
    functionUses: 8
    functionsReached:
    - members.extend
    - line.find_neighbors
    - box.is_empty
    - pdfminer.utils.Plane.__init__
    - members.append
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.layout.LTExpandableContainer.__init__
    - <builtin>.set
    - boxes.pop
    - done.add
    - <builtin>.isinstance
    - pdfminer.layout.LTTextBox.__init__
    - LTItem.__init__
    - pdfminer.layout.LTComponent.set_bbox
    - box.add
    - plane.extend
    - pdfminer.layout.LTTextContainer.__init__
    - LTText.__init__
    - pdfminer.utils.uniq
    - pdfminer.layout.LTContainer.__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: plane.extend
    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: line.find_neighbors
    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: members.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: boxes.pop
    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: members.extend
    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: box.add
    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: box.is_empty
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 10
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - laparams
    - boxes
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 814
    functionName: pdfminer.layout.LTLayoutContainer.group_textboxes
    functionSourceFile: pdfminer.layout
    functionUses: 8
    functionsReached:
    - done.update
    - pdfminer.utils.Plane.__init__
    - <builtin>.len
    - plane.remove
    - plane.find
    - heapq.heappop
    - heapq.heappush
    - <builtin>.set
    - <builtin>.range
    - <builtin>.isinstance
    - <builtin>.super
    - dists.append
    - pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    - <builtin>.min
    - <builtin>.id
    - typing.cast
    - plane.extend
    - objs.difference
    - heapq.heapify
    - <builtin>.max
    - pdfminer.layout.LTTextGroup.__init__
    - plane.add
    - pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - obj1
    - obj2
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 839
    functionName: pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - <builtin>.min
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - obj1
    - obj2
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 861
    functionName: pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    functionSourceFile: pdfminer.layout
    functionUses: 9
    functionsReached:
    - objs.difference
    - <builtin>.max
    - <builtin>.set
    - <builtin>.min
    - plane.find
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: objs.difference
    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: <builtin>.id
    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: dists.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: heapq.heapify
    functionSourceFile: heapq
    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: heapq.heappop
    functionSourceFile: heapq
    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: heapq.heappush
    functionSourceFile: heapq
    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: plane.remove
    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: done.update
    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: plane.add
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - laparams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 907
    functionName: pdfminer.layout.LTLayoutContainer.analyze
    functionSourceFile: pdfminer.layout
    functionUses: 7
    functionsReached:
    - done.update
    - members.extend
    - obj0.hoverlap
    - line.find_neighbors
    - box.is_empty
    - pdfminer.layout.IndexAssigner.run
    - pdfminer.layout.LTTextLineVertical.__init__
    - pdfminer.utils.Plane.__init__
    - pdfminer.layout.LTTextLineHorizontal.add
    - <builtin>.len
    - plane.remove
    - heapq.heappop
    - plane.find
    - pdfminer.layout.LTContainer.add
    - heapq.heappush
    - members.append
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.layout.LTLayoutContainer.group_textlines
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    - pdfminer.layout.LTExpandableContainer.__init__
    - obj0.vdistance
    - group.analyze
    - obj0.hdistance
    - <builtin>.set
    - boxes.pop
    - <builtin>.range
    - done.add
    - <builtin>.isinstance
    - obj0.is_hoverlap
    - pdfminer.layout.LTTextBox.__init__
    - obj0.voverlap
    - <builtin>.super
    - pdfminer.layout.LTLayoutContainer.group_objects
    - obj0.is_voverlap
    - pdfminer.layout.LTAnno.__init__
    - f.append
    - dists.append
    - t.append
    - LTItem.__init__
    - pdfminer.layout.IndexAssigner.__init__
    - pdfminer.layout.LTTextLineHorizontal.__init__
    - textboxes.sort
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    - <builtin>.min
    - textbox.analyze
    - <builtin>.id
    - box.add
    - typing.cast
    - obj.is_empty
    - plane.extend
    - pdfminer.layout.LTLayoutContainer.group_textboxes
    - obj.analyze
    - objs.difference
    - pdfminer.layout.LTTextContainer.__init__
    - heapq.heapify
    - pdfminer.layout.LTTextLineVertical.add
    - <builtin>.max
    - LTText.__init__
    - pdfminer.layout.LTTextLine.__init__
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    - pdfminer.utils.uniq
    - <builtin>.list
    - pdfminer.layout.LTContainer.__init__
    - pdfminer.utils.fsplit
    - pdfminer.layout.LTTextGroup.__init__
    - plane.add
    - pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: obj.is_empty
    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: textbox.analyze
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - box
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 924
    functionName: pdfminer.layout.LTLayoutContainer.analyze.getkey
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - <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: textboxes.sort
    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: group.analyze
    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: pdfminer.layout.LTLayoutContainer.analyze.<lambda3>
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - bbox
    - matrix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 953
    functionName: pdfminer.layout.LTFigure.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 3
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.utils.apply_matrix_pt
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.layout.LTLayoutContainer.__init__
    - LTItem.__init__
    - <builtin>.max
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTContainer.__init__
    - <builtin>.min
    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: 961
    functionName: pdfminer.layout.LTFigure.__repr__
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.utils.bbox2str
    - pdfminer.utils.matrix2str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - laparams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 968
    functionName: pdfminer.layout.LTFigure.analyze
    functionSourceFile: pdfminer.layout
    functionUses: 6
    functionsReached:
    - done.update
    - members.extend
    - obj0.hoverlap
    - line.find_neighbors
    - pdfminer.layout.LTFigure.analyze
    - box.is_empty
    - pdfminer.layout.IndexAssigner.run
    - pdfminer.layout.LTTextLineVertical.__init__
    - pdfminer.utils.Plane.__init__
    - pdfminer.layout.LTTextLineHorizontal.add
    - <builtin>.len
    - plane.remove
    - heapq.heappop
    - plane.find
    - pdfminer.layout.LTContainer.add
    - heapq.heappush
    - pdfminer.layout.LTLayoutContainer.analyze
    - members.append
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.layout.LTLayoutContainer.group_textlines
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    - pdfminer.layout.LTExpandableContainer.__init__
    - obj0.vdistance
    - group.analyze
    - obj0.hdistance
    - <builtin>.set
    - boxes.pop
    - <builtin>.range
    - done.add
    - <builtin>.isinstance
    - obj0.is_hoverlap
    - pdfminer.layout.LTTextBox.__init__
    - obj0.voverlap
    - <builtin>.super
    - pdfminer.layout.LTLayoutContainer.group_objects
    - obj0.is_voverlap
    - pdfminer.layout.LTAnno.__init__
    - f.append
    - dists.append
    - t.append
    - LTItem.__init__
    - pdfminer.layout.IndexAssigner.__init__
    - pdfminer.layout.LTTextLineHorizontal.__init__
    - textboxes.sort
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    - <builtin>.min
    - textbox.analyze
    - <builtin>.id
    - box.add
    - typing.cast
    - obj.is_empty
    - plane.extend
    - pdfminer.layout.LTLayoutContainer.group_textboxes
    - obj.analyze
    - objs.difference
    - pdfminer.layout.LTTextContainer.__init__
    - heapq.heapify
    - pdfminer.layout.LTTextLineVertical.add
    - <builtin>.max
    - LTText.__init__
    - pdfminer.layout.LTTextLine.__init__
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    - pdfminer.utils.uniq
    - <builtin>.list
    - pdfminer.layout.LTContainer.__init__
    - pdfminer.utils.fsplit
    - pdfminer.layout.LTTextGroup.__init__
    - plane.add
    - pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    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 0x7f8798d880d0>
    argNames:
    - self
    - pageid
    - bbox
    - rotate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 981
    functionName: pdfminer.layout.LTPage.__init__
    functionSourceFile: pdfminer.layout
    functionUses: 6
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.layout.LTLayoutContainer.__init__
    - LTItem.__init__
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTContainer.__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: 1
    functionLinenumber: 986
    functionName: pdfminer.layout.LTPage.__repr__
    functionSourceFile: pdfminer.layout
    functionUses: 0
    functionsReached:
    - pdfminer.utils.bbox2str
    linkageType: 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: pdfminer.pdfcolor
    functionSourceFile: pdfminer.pdfcolor
    functionUses: 0
    functionsReached:
    - collections.OrderedDict
    - pdfminer.pdfcolor.PDFColorSpace.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - ncomponents
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 15
    functionName: pdfminer.pdfcolor.PDFColorSpace.__init__
    functionSourceFile: pdfminer.pdfcolor
    functionUses: 9
    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: 19
    functionName: pdfminer.pdfcolor.PDFColorSpace.__repr__
    functionSourceFile: pdfminer.pdfcolor
    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: collections.OrderedDict
    functionSourceFile: collections
    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: pdfminer.psparser
    functionSourceFile: pdfminer.psparser
    functionUses: 0
    functionsReached:
    - logging.getLogger
    - re.compile
    - pdfminer.psparser.PSSymbolTable.intern
    - typing.TypeVar
    - pdfminer.psparser.PSSymbolTable.__init__
    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: 0
    functionLinenumber: 47
    functionName: pdfminer.psparser.PSLiteral.__init__
    functionSourceFile: pdfminer.psparser
    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: 50
    functionName: pdfminer.psparser.PSLiteral.__repr__
    functionSourceFile: pdfminer.psparser
    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: 0
    functionLinenumber: 66
    functionName: pdfminer.psparser.PSKeyword.__init__
    functionSourceFile: pdfminer.psparser
    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: 69
    functionName: pdfminer.psparser.PSKeyword.__repr__
    functionSourceFile: pdfminer.psparser
    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
    - klass
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 83
    functionName: pdfminer.psparser.PSSymbolTable.__init__
    functionSourceFile: pdfminer.psparser
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 124
    functionName: pdfminer.psparser.keyword_name
    functionSourceFile: pdfminer.psparser
    functionUses: 7
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PSTypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 166
    functionName: pdfminer.psparser.PSBaseParser.__init__
    functionSourceFile: pdfminer.psparser
    functionUses: 36
    functionsReached:
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSBaseParser.seek
    - log.debug
    - pdfminer.psparser.PSStackParser.seek
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - pos
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 177
    functionName: pdfminer.psparser.PSBaseParser.seek
    functionSourceFile: pdfminer.psparser
    functionUses: 42
    functionsReached:
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSStackParser.seek
    - log.debug
    - pdfminer.psparser.PSBaseParser.seek
    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: 171
    functionName: pdfminer.psparser.PSBaseParser.__repr__
    functionSourceFile: pdfminer.psparser
    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: 174
    functionName: pdfminer.psparser.PSBaseParser.flush
    functionSourceFile: pdfminer.psparser
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - pos
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 533
    functionName: pdfminer.psparser.PSStackParser.seek
    functionSourceFile: pdfminer.psparser
    functionUses: 42
    functionsReached:
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSBaseParser.seek
    - log.debug
    - pdfminer.psparser.PSStackParser.seek
    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: 192
    functionName: pdfminer.psparser.PSBaseParser.fillbuf
    functionSourceFile: pdfminer.psparser
    functionUses: 3
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - PSEOF
    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: 2
    functionLinenumber: 203
    functionName: pdfminer.psparser.PSBaseParser.nextline
    functionSourceFile: pdfminer.psparser
    functionUses: 0
    functionsReached:
    - pdfminer.psparser.PSBaseParser.fillbuf
    - EOL.search
    - log.debug
    - m.end
    - <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: EOL.search
    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: m.end
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    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: 3
    functionLinenumber: 232
    functionName: pdfminer.psparser.PSBaseParser.revreadlines
    functionSourceFile: pdfminer.psparser
    functionUses: 0
    functionsReached:
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.psparser.PSBaseParser.seek
    - log.debug
    - s.rfind
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.rfind
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 1
    IfCount: 10
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 256
    functionName: pdfminer.psparser.PSBaseParser._parse_main
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - c.isalpha
    - pdfminer.psparser.PSBaseParser._add_token
    - NONSPC.search
    - m.start
    - c.isdigit
    - pdfminer.psparser.PSSymbolTable.intern
    - <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: NONSPC.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: m.start
    functionSourceFile: <builtin>
    functionUses: 14
    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.isdigit
    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: c.isalpha
    functionSourceFile: <builtin>
    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
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 302
    functionName: pdfminer.psparser.PSBaseParser._add_token
    functionSourceFile: ''
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 305
    functionName: pdfminer.psparser.PSBaseParser._parse_comment
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - m.start
    - EOL.search
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 317
    functionName: pdfminer.psparser.PSBaseParser._parse_literal
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - END_LITERAL.search
    - pdfminer.psparser.PSBaseParser._add_token
    - m.start
    - pdfminer.psparser.PSSymbolTable.intern
    - <builtin>.len
    - <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: END_LITERAL.search
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 337
    functionName: pdfminer.psparser.PSBaseParser._parse_literal_hex
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - HEX.match
    - <builtin>.len
    - <builtin>.int
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: HEX.match
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 347
    functionName: pdfminer.psparser.PSBaseParser._parse_number
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - <builtin>.int
    - pdfminer.psparser.PSBaseParser._add_token
    - contextlib.suppress
    - m.start
    - <builtin>.len
    - END_NUMBER.search
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: END_NUMBER.search
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 364
    functionName: pdfminer.psparser.PSBaseParser._parse_float
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - pdfminer.psparser.PSBaseParser._add_token
    - contextlib.suppress
    - m.start
    - <builtin>.float
    - <builtin>.len
    - END_NUMBER.search
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 376
    functionName: pdfminer.psparser.PSBaseParser._parse_keyword
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - END_KEYWORD.search
    - pdfminer.psparser.PSBaseParser._add_token
    - m.start
    - pdfminer.psparser.PSSymbolTable.intern
    - <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: END_KEYWORD.search
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 394
    functionName: pdfminer.psparser.PSBaseParser._parse_string
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - m.start
    - pdfminer.psparser.PSBaseParser._add_token
    - END_STRING.search
    - <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: END_STRING.search
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 420
    functionName: pdfminer.psparser.PSBaseParser._parse_string_1
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - OCT_STRING.match
    - <builtin>.len
    - <builtin>.int
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: OCT_STRING.match
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 449
    functionName: pdfminer.psparser.PSBaseParser._parse_wopen
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - pdfminer.psparser.PSBaseParser._add_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 459
    functionName: pdfminer.psparser.PSBaseParser._parse_wclose
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - pdfminer.psparser.PSBaseParser._add_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 467
    functionName: pdfminer.psparser.PSBaseParser._parse_hexstring
    functionSourceFile: pdfminer.psparser
    functionUses: 2
    functionsReached:
    - HEX_PAIR.sub
    - SPC.sub
    - pdfminer.psparser.PSBaseParser._add_token
    - m.start
    - <builtin>.len
    - END_HEX_STRING.search
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: END_HEX_STRING.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: 1
    functionLinenumber: -1
    functionName: pdfminer.psparser.PSBaseParser._parse_hexstring.<lambda1>
    functionSourceFile: pdfminer.psparser
    functionUses: 0
    functionsReached:
    - m.group
    - <builtin>.int
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: SPC.sub
    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: HEX_PAIR.sub
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 482
    functionName: pdfminer.psparser.PSBaseParser.nexttoken
    functionSourceFile: pdfminer.psparser
    functionUses: 1
    functionsReached:
    - HEX.match
    - HEX_PAIR.sub
    - END_KEYWORD.search
    - <builtin>.int
    - SPC.sub
    - END_LITERAL.search
    - pdfminer.psparser.PSBaseParser._parse_float
    - pdfminer.psparser.PSBaseParser._add_token
    - m.start
    - pdfminer.psparser.PSBaseParser._parse_string
    - <builtin>.float
    - pdfminer.psparser.PSBaseParser._parse_number
    - <builtin>.len
    - pdfminer.psparser.PSBaseParser._parse_keyword
    - pdfminer.psparser.PSBaseParser._parse_main
    - pdfminer.psparser.PSBaseParser._parse_comment
    - pdfminer.psparser.PSBaseParser._parse_hexstring
    - END_NUMBER.search
    - OCT_STRING.match
    - c.isalpha
    - pdfminer.psparser.PSBaseParser._parse_wopen
    - NONSPC.search
    - pdfminer.psparser.PSBaseParser._parse_literal_hex
    - c.isdigit
    - END_STRING.search
    - <builtin>.bytes
    - pdfminer.psparser.PSBaseParser._parse_string_1
    - END_HEX_STRING.search
    - pdfminer.psparser.PSBaseParser.fillbuf
    - EOL.search
    - log.debug
    - contextlib.suppress
    - pdfminer.psparser.PSBaseParser._parse_literal
    - pdfminer.psparser.PSSymbolTable.intern
    - pdfminer.psparser.PSBaseParser._parse_wclose
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PSEOF
    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: 527
    functionName: pdfminer.psparser.PSStackParser.reset
    functionSourceFile: ''
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - objs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 537
    functionName: pdfminer.psparser.PSStackParser.push
    functionSourceFile: pdfminer.psparser
    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
    - n
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 540
    functionName: pdfminer.psparser.PSStackParser.pop
    functionSourceFile: pdfminer.psparser
    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: 545
    functionName: pdfminer.psparser.PSStackParser.popall
    functionSourceFile: pdfminer.psparser
    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
    - objs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 550
    functionName: pdfminer.psparser.PSStackParser.add_results
    functionSourceFile: pdfminer.psparser
    functionUses: 0
    functionsReached:
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - pos
    - type
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 557
    functionName: pdfminer.psparser.PSStackParser.start_type
    functionSourceFile: pdfminer.psparser
    functionUses: 1
    functionsReached:
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 562
    functionName: pdfminer.psparser.PSStackParser.end_type
    functionSourceFile: pdfminer.psparser
    functionUses: 1
    functionsReached:
    - log.debug
    linkageType: pythonLinkage
    raised:
    - PSTypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - pos
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 570
    functionName: pdfminer.psparser.PSStackParser.do_keyword
    functionSourceFile: pdfminer.psparser
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 15
    IfCount: 13
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 573
    functionName: pdfminer.psparser.PSStackParser.nextobject
    functionSourceFile: pdfminer.psparser
    functionUses: 0
    functionsReached:
    - HEX.match
    - HEX_PAIR.sub
    - pdfminer.psparser.PSStackParser.do_keyword
    - <builtin>.int
    - END_KEYWORD.search
    - SPC.sub
    - END_LITERAL.search
    - log.error
    - pdfminer.psparser.PSBaseParser._parse_float
    - pdfminer.psparser.PSBaseParser._add_token
    - m.start
    - pdfminer.psparser.PSBaseParser._parse_string
    - <builtin>.float
    - pdfminer.psparser.PSBaseParser._parse_number
    - <builtin>.len
    - pdfminer.psparser.PSBaseParser._parse_keyword
    - pdfminer.utils.choplist
    - pdfminer.psparser.PSBaseParser._parse_main
    - r.append
    - pdfminer.psparser.PSBaseParser._parse_comment
    - <builtin>.isinstance
    - pdfminer.psparser.PSBaseParser.nexttoken
    - pdfminer.psparser.PSBaseParser._parse_hexstring
    - END_NUMBER.search
    - OCT_STRING.match
    - c.isalpha
    - pdfminer.psparser.PSBaseParser._parse_wopen
    - NONSPC.search
    - pdfminer.psparser.literal_name
    - pdfminer.psparser.PSBaseParser._parse_literal_hex
    - pdfminer.psparser.PSStackParser.start_type
    - END_STRING.search
    - c.isdigit
    - <builtin>.bytes
    - pdfminer.psparser.PSBaseParser._parse_string_1
    - END_HEX_STRING.search
    - <builtin>.tuple
    - pdfminer.psparser.PSStackParser.push
    - pdfminer.psparser.PSBaseParser.fillbuf
    - EOL.search
    - log.debug
    - contextlib.suppress
    - pdfminer.psparser.PSBaseParser.flush
    - pdfminer.psparser.PSBaseParser._parse_literal
    - pdfminer.psparser.PSSymbolTable.intern
    - pdfminer.psparser.PSStackParser.end_type
    - pdfminer.psparser.PSBaseParser._parse_wclose
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PSSyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: log.error
    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: pdfminer.pdffont
    functionSourceFile: pdfminer.pdffont
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - seq
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 54
    functionName: pdfminer.pdffont.get_widths
    functionSourceFile: pdfminer.pdffont
    functionUses: 10
    functionsReached:
    - typing.cast.resolve
    - r.append
    - <builtin>.range
    - log.warning
    - pdfminer.pdftypes.resolve1
    - <builtin>.len
    - <builtin>.enumerate
    - typing.cast
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - seq
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 90
    functionName: pdfminer.pdffont.get_widths2
    functionSourceFile: pdfminer.pdffont
    functionUses: 10
    functionsReached:
    - <builtin>.tuple
    - pdfminer.utils.choplist
    - r.append
    - <builtin>.range
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.enumerate
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - fontname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 113
    functionName: pdfminer.pdffont.FontMetricsDB.get_metrics
    functionSourceFile: pdfminer.pdffont
    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: 5
    functionLinenumber: 128
    functionName: pdfminer.pdffont.Type1FontHeaderParser.__init__
    functionSourceFile: pdfminer.pdffont
    functionUses: 10
    functionsReached:
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.psparser.PSStackParser.seek
    - log.debug
    - pdfminer.psparser.PSStackParser.__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: 132
    functionName: pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    functionSourceFile: pdfminer.pdffont
    functionUses: 10
    functionsReached:
    - <builtin>.chr
    - typing.cast.startswith
    - <builtin>.int
    - pdfminer.encodingdb.name2unicode
    - log.debug
    - typing.cast.split
    - typing.cast
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - HEXADECIMAL.match
    - typing.cast.strip
    - <builtin>.range
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.map
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 3
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 16
    functionName: pdfminer.encodingdb.name2unicode
    functionSourceFile: pdfminer.encodingdb
    functionUses: 19
    functionsReached:
    - <builtin>.chr
    - typing.cast.startswith
    - <builtin>.int
    - <builtin>.range
    - typing.cast.split
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - typing.cast.strip
    - HEXADECIMAL.match
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.map
    linkageType: pythonLinkage
    raised:
    - PDFKeyError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - pos
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 157
    functionName: pdfminer.pdffont.Type1FontHeaderParser.do_keyword
    functionSourceFile: pdfminer.pdffont
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - pdfminer.psparser.literal_name
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 1
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 174
    functionName: pdfminer.pdffont.getdict
    functionSourceFile: pdfminer.pdffont
    functionUses: 1
    functionsReached:
    - io.BytesIO
    - io.BytesIO.read
    - stack.append
    - <builtin>.float
    - <builtin>.ord
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 64
    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>.ord
    functionSourceFile: <builtin>
    functionUses: 66
    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: struct.unpack
    functionSourceFile: struct
    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: stack.append
    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
    - fp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 616
    functionName: pdfminer.pdffont.CFFFont.INDEX.__init__
    functionSourceFile: pdfminer.pdffont
    functionUses: 1
    functionsReached:
    - pdfminer.utils.nunpack
    - <builtin>.range
    - int.from_bytes
    - struct.unpack
    - <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: 625
    functionName: pdfminer.pdffont.CFFFont.INDEX.__repr__
    functionSourceFile: pdfminer.pdffont
    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: 628
    functionName: pdfminer.pdffont.CFFFont.INDEX.__len__
    functionSourceFile: pdfminer.pdffont
    functionUses: 0
    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
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 631
    functionName: pdfminer.pdffont.CFFFont.INDEX.__getitem__
    functionSourceFile: pdfminer.pdffont
    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: 635
    functionName: pdfminer.pdffont.CFFFont.INDEX.__iter__
    functionSourceFile: pdfminer.pdffont
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - <builtin>.len
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - fp
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 638
    functionName: pdfminer.pdffont.CFFFont.__init__
    functionSourceFile: pdfminer.pdffont
    functionUses: 0
    functionsReached:
    - io.BytesIO
    - pdfminer.utils.nunpack
    - pdfminer.pdffont.CFFFont.INDEX.__init__
    - io.BytesIO.read
    - stack.append
    - pdfminer.pdffont.CFFFont.getstr
    - struct.unpack
    - <builtin>.float
    - int.from_bytes
    - <builtin>.enumerate
    - <builtin>.ord
    - <builtin>.range
    - <builtin>.len
    - pdfminer.pdffont.getdict
    - typing.cast
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    - AssertionError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - sid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 718
    functionName: pdfminer.pdffont.CFFFont.getstr
    functionSourceFile: pdfminer.pdffont
    functionUses: 1
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - fp
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 730
    functionName: pdfminer.pdffont.TrueTypeFont.__init__
    functionSourceFile: pdfminer.pdffont
    functionUses: 10
    functionsReached:
    - struct.unpack
    - <builtin>.range
    - io.BytesIO.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 10
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 748
    functionName: pdfminer.pdffont.TrueTypeFont.create_unicode_map
    functionSourceFile: pdfminer.pdffont
    functionUses: 10
    functionsReached:
    - typing.cast.startswith
    - pdfminer.cmapdb.UnicodeMap.__init__
    - <builtin>.int
    - pdfminer.cmapdb.CMapBase.__init__
    - typing.cast.strip
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - io.BytesIO.read
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - subtables.append
    - char2gid.update
    - <builtin>.type
    - typing.cast.split
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - <builtin>.range
    - <builtin>.isinstance
    - io.BytesIO.tell
    - <builtin>.zip
    - hdrs.append
    - char2gid.items
    - pdfminer.encodingdb.name2unicode
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - struct.unpack
    - code.decode
    - typing.cast
    - kwargs.copy
    - <builtin>.chr
    - log.debug
    - io.BytesIO.seek
    - <builtin>.max
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - HEXADECIMAL.match
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - AssertionError
    returnType: N/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: 27
    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: subtables.append
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - fp
    - char2gid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 789
    functionName: pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    functionSourceFile: pdfminer.pdffont
    functionUses: 11
    functionsReached:
    - log.debug
    - io.BytesIO.read
    - char2gid.update
    - struct.unpack
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - fp
    - char2gid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 795
    functionName: pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    functionSourceFile: pdfminer.pdffont
    functionUses: 11
    functionsReached:
    - hdrs.append
    - log.debug
    - io.BytesIO.read
    - io.BytesIO.seek
    - <builtin>.range
    - <builtin>.max
    - struct.unpack
    - io.BytesIO.tell
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - fp
    - char2gid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 819
    functionName: pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    functionSourceFile: pdfminer.pdffont
    functionUses: 11
    functionsReached:
    - <builtin>.zip
    - <builtin>.range
    - io.BytesIO.read
    - io.BytesIO.seek
    - log.debug
    - struct.unpack
    - io.BytesIO.tell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - fp
    - char2gid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 841
    functionName: pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    functionSourceFile: pdfminer.pdffont
    functionUses: 11
    functionsReached:
    - struct.unpack
    - <builtin>.range
    - io.BytesIO.read
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - fp
    - char2gid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 850
    functionName: pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    functionSourceFile: pdfminer.pdffont
    functionUses: 11
    functionsReached:
    - struct.unpack
    - <builtin>.range
    - io.BytesIO.read
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - fp
    - char2gid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 861
    functionName: pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    functionSourceFile: pdfminer.pdffont
    functionUses: 11
    functionsReached:
    - struct.unpack
    - <builtin>.range
    - io.BytesIO.read
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 140
    functionName: pdfminer.cmapdb.UnicodeMap.__init__
    functionSourceFile: pdfminer.cmapdb
    functionUses: 14
    functionsReached:
    - kwargs.copy
    - pdfminer.cmapdb.CMapBase.__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: char2gid.items
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cid
    - code
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 182
    functionName: pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    functionSourceFile: pdfminer.cmapdb
    functionUses: 12
    functionsReached:
    - typing.cast.startswith
    - <builtin>.chr
    - <builtin>.int
    - pdfminer.encodingdb.name2unicode
    - <builtin>.type
    - typing.cast.split
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - HEXADECIMAL.match
    - typing.cast.strip
    - <builtin>.range
    - code.decode
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.map
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFTypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: char2gid.update
    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: io.BytesIO.tell
    functionSourceFile: io
    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: hdrs.append
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798af3bb0>
    argNames:
    - self
    - descriptor
    - widths
    - default_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 892
    functionName: pdfminer.pdffont.PDFFont.__init__
    functionSourceFile: pdfminer.pdffont
    functionUses: 13
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - pdfminer.pdffont.PDFFont._parse_bbox
    - <builtin>.float
    - typing.cast.items
    - log.warning
    - <builtin>.len
    - pdfminer.pdftypes.int_value
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - descriptor.get
    - <builtin>.isinstance
    - pdfminer.casting.safe_rect
    - typing.cast.resolve
    - pdfminer.pdftypes.num_value
    - pdfminer.psparser.literal_name
    - pdfminer.casting.safe_float
    - pdfminer.pdftypes.resolve_all
    - pdfminer.pdftypes.resolve1
    - <builtin>.list
    - <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: descriptor.get
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - descriptor
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 984
    functionName: pdfminer.pdffont.PDFFont._parse_bbox
    functionSourceFile: pdfminer.pdffont
    functionUses: 14
    functionsReached:
    - typing.cast.resolve
    - pdfminer.casting.safe_rect_list
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - pdfminer.casting.safe_float
    - pdfminer.pdftypes.resolve_all
    - descriptor.get
    - <builtin>.float
    - typing.cast.items
    - <builtin>.list
    - log.warning
    - <builtin>.isinstance
    - <builtin>.len
    - pdfminer.casting.safe_rect
    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: 923
    functionName: pdfminer.pdffont.PDFFont.__repr__
    functionSourceFile: pdfminer.pdffont
    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: 926
    functionName: pdfminer.pdffont.PDFFont.is_vertical
    functionSourceFile: pdfminer.pdffont
    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: 929
    functionName: pdfminer.pdffont.PDFFont.is_multibyte
    functionSourceFile: pdfminer.pdffont
    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
    - bytes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 932
    functionName: pdfminer.pdffont.PDFFont.decode
    functionSourceFile: pdfminer.pdffont
    functionUses: 9
    functionsReached:
    - <builtin>.bytearray
    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: 935
    functionName: pdfminer.pdffont.PDFFont.get_ascent
    functionSourceFile: pdfminer.pdffont
    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: 939
    functionName: pdfminer.pdffont.PDFFont.get_descent
    functionSourceFile: pdfminer.pdffont
    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: 943
    functionName: pdfminer.pdffont.PDFFont.get_width
    functionSourceFile: pdfminer.pdffont
    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: 949
    functionName: pdfminer.pdffont.PDFFont.get_height
    functionSourceFile: pdfminer.pdffont
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 955
    functionName: pdfminer.pdffont.PDFFont.char_width
    functionSourceFile: pdfminer.pdffont
    functionUses: 1
    functionsReached:
    - pdfminer.pdffont.PDFCIDFont.to_unichr
    - <builtin>.chr
    - pdfminer.pdffont.PDFFont.to_unichr
    - pdfminer.cmapdb.UnicodeMap.get_unichr
    - log.debug
    - pdfminer.casting.safe_float
    - <builtin>.float
    - pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 980
    functionName: pdfminer.pdffont.PDFFont.to_unichr
    functionSourceFile: ''
    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
    - cid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1240
    functionName: pdfminer.pdffont.PDFCIDFont.to_unichr
    functionSourceFile: pdfminer.pdffont
    functionUses: 7
    functionsReached:
    - <builtin>.chr
    - pdfminer.cmapdb.UnicodeMap.get_unichr
    - log.debug
    - pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    linkageType: pythonLinkage
    raised:
    - PDFKeyError
    - PDFUnicodeNotDefined
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 973
    functionName: pdfminer.pdffont.PDFFont.char_disp
    functionSourceFile: pdfminer.pdffont
    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
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 977
    functionName: pdfminer.pdffont.PDFFont.string_width
    functionSourceFile: pdfminer.pdffont
    functionUses: 0
    functionsReached:
    - pdfminer.pdffont.PDFCIDFont.to_unichr
    - <builtin>.sum
    - <builtin>.chr
    - pdfminer.pdffont.PDFFont.to_unichr
    - pdfminer.cmapdb.UnicodeMap.get_unichr
    - log.debug
    - pdfminer.casting.safe_float
    - pdfminer.pdffont.PDFFont.char_width
    - <builtin>.bytearray
    - <builtin>.float
    - pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    - pdfminer.pdffont.PDFFont.decode
    - pdfminer.pdffont.PDFCIDFont.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bytes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1233
    functionName: pdfminer.pdffont.PDFCIDFont.decode
    functionSourceFile: ''
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - descriptor
    - widths
    - spec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 999
    functionName: pdfminer.pdffont.PDFSimpleFont.__init__
    functionSourceFile: pdfminer.pdffont
    functionUses: 11
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - typing.cast.startswith
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.cmapdb.CMapBase.__init__
    - <builtin>.map
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - cid2unicode.copy
    - d.decompress
    - logger.debug
    - contextlib.suppress
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.readbits
    - typing.cast.split
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.encodingdb.name2unicode
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - HEXADECIMAL.match
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - <builtin>.float
    - log.warning
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - cls.encodings.get
    - <builtin>.set
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.num_value
    - pdfminer.psparser.literal_name
    - pdfminer.casting.safe_float
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - kwargs.copy
    - <builtin>.chr
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f879886e8b0>
    argNames:
    - cls
    - name
    - diff
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 109
    functionName: pdfminer.encodingdb.EncodingDB.get_encoding
    functionSourceFile: pdfminer.encodingdb
    functionUses: 12
    functionsReached:
    - <builtin>.int
    - typing.cast.startswith
    - cid2unicode.copy
    - <builtin>.chr
    - pdfminer.encodingdb.name2unicode
    - log.debug
    - typing.cast.split
    - cls.encodings.get
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - typing.cast
    - HEXADECIMAL.match
    - typing.cast.strip
    - <builtin>.range
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.map
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cmap
    - fp
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 317
    functionName: pdfminer.cmapdb.CMapParser.__init__
    functionSourceFile: pdfminer.cmapdb
    functionUses: 13
    functionsReached:
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.psparser.PSStackParser.seek
    - log.debug
    - <builtin>.set
    - pdfminer.psparser.PSStackParser.__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: 324
    functionName: pdfminer.cmapdb.CMapParser.run
    functionSourceFile: pdfminer.cmapdb
    functionUses: 13
    functionsReached:
    - contextlib.suppress
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1032
    functionName: pdfminer.pdffont.PDFSimpleFont.to_unichr
    functionSourceFile: pdfminer.pdffont
    functionUses: 5
    functionsReached:
    - <builtin>.chr
    - pdfminer.cmapdb.UnicodeMap.get_unichr
    - log.debug
    - pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    linkageType: pythonLinkage
    raised:
    - PDFUnicodeNotDefined
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 147
    functionName: pdfminer.cmapdb.UnicodeMap.get_unichr
    functionSourceFile: pdfminer.cmapdb
    functionUses: 9
    functionsReached:
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 157
    functionName: pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    functionSourceFile: pdfminer.cmapdb
    functionUses: 9
    functionsReached:
    - log.debug
    - <builtin>.chr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - rsrcmgr
    - spec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1045
    functionName: pdfminer.pdffont.PDFType1Font.__init__
    functionSourceFile: pdfminer.pdffont
    functionUses: 9
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - typing.cast.startswith
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - pdfminer.pdftypes.dict_value
    - <builtin>.map
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - cid2unicode.copy
    - d.decompress
    - logger.debug
    - contextlib.suppress
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - end_re.sub
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.readbits
    - typing.cast.split
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.encodingdb.name2unicode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - HEXADECIMAL.match
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - <builtin>.float
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - log.warning
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - cls.encodings.get
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - <builtin>.set
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.num_value
    - pdfminer.psparser.literal_name
    - pdfminer.casting.safe_float
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - kwargs.copy
    - <builtin>.chr
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.utils.paeth_predictor
    - <builtin>.iter
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PDFFontError
    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: 1072
    functionName: pdfminer.pdffont.PDFType1Font.__repr__
    functionSourceFile: pdfminer.pdffont
    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: 1077
    functionName: pdfminer.pdffont.PDFTrueTypeFont.__repr__
    functionSourceFile: pdfminer.pdffont
    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
    - rsrcmgr
    - spec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1082
    functionName: pdfminer.pdffont.PDFType3Font.__init__
    functionSourceFile: pdfminer.pdffont
    functionUses: 9
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - typing.cast.startswith
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - <builtin>.map
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - cid2unicode.copy
    - d.decompress
    - logger.debug
    - contextlib.suppress
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.readbits
    - typing.cast.split
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.encodingdb.name2unicode
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - <builtin>.tuple
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - HEXADECIMAL.match
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.utils.apply_matrix_norm
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - <builtin>.float
    - log.warning
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - cls.encodings.get
    - <builtin>.set
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.num_value
    - pdfminer.psparser.literal_name
    - pdfminer.casting.safe_float
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - kwargs.copy
    - <builtin>.chr
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    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: 1098
    functionName: pdfminer.pdffont.PDFType3Font.__repr__
    functionSourceFile: pdfminer.pdffont
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 2
    IfCount: 9
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7f8798984850>
    argNames:
    - self
    - rsrcmgr
    - spec
    - strict
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1105
    functionName: pdfminer.pdffont.PDFCIDFont.__init__
    functionSourceFile: pdfminer.pdffont
    functionUses: 9
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - typing.cast.startswith
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.pdftypes.dict_value
    - json.load
    - <builtin>.map
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - subtables.append
    - <builtin>.type
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - r.append
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - struct.unpack
    - code.decode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.items
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - contextlib.suppress
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - os.environ.get
    - widths2.items
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - io.BytesIO.read
    - char2gid.update
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - os.path.exists
    - char2gid.items
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - <builtin>.hasattr
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - binascii.unhexlify.find
    - os.path.realpath
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.cmapdb.PyCMap.__init__
    - data.get
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - pdfminer.pdffont.get_widths
    - typing.cast.name.replace
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - gzip.open
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - resolved_json_path.startswith
    - typing.cast.decode
    - pdfminer.lzw.LZWDecoder.readbits
    - typing.cast.split
    - pdfminer.pdftypes.list_value
    - os.path.join
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - hdrs.append
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.encodingdb.name2unicode
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - pdfminer.cmapdb.CMapDB._load_data
    - <builtin>.next
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - <builtin>.tuple
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdffont.get_widths2
    - pdfminer.pdftypes.PDFStream.get_filters
    - os.path.dirname
    - logger.warning
    - pdfminer.cmapdb.CMap.__init__
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - HEXADECIMAL.match
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - cid_registry.strip
    - pdfminer.pdftypes.stream_value
    - cmap_name_stream.get
    - <builtin>.abs
    - <builtin>.float
    - log.warning
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.set
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - pdfminer.pdffont.TrueTypeFont.__init__
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.num_value
    - <builtin>.super
    - pdfminer.psparser.literal_name
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.casting.safe_float
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - <builtin>.chr
    - io.BytesIO.seek
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - <builtin>.max
    - raw.append
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - cid_ordering.strip
    linkageType: pythonLinkage
    raised:
    - PDFFontError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.decode
    functionSourceFile: typing
    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: cid_registry.strip
    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: cid_ordering.strip
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - spec
    - strict
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1182
    functionName: pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    functionSourceFile: pdfminer.pdffont
    functionUses: 10
    functionsReached:
    - <builtin>.int
    - os.environ.get
    - gzip.open
    - cmap_name_stream.get
    - pdfminer.cmapdb.CMapBase.__init__
    - json.load
    - resolved_json_path.startswith
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - <builtin>.type
    - os.path.join
    - <builtin>.isinstance
    - <builtin>.super
    - os.path.exists
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.psparser.literal_name
    - <builtin>.hasattr
    - pdfminer.cmapdb.CMapDB._load_data
    - os.path.realpath
    - typing.cast
    - d.items
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - pdfminer.cmapdb.PyCMap.__init__
    - data.get
    - log.debug
    - os.path.dirname
    - pdfminer.cmapdb.CMap.__init__
    - typing.cast.name.replace
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFFontError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f8798c9a3a0>
    argNames:
    - cls
    - name
    - vertical
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 306
    functionName: pdfminer.cmapdb.CMapDB.get_unicode_map
    functionSourceFile: pdfminer.cmapdb
    functionUses: 10
    functionsReached:
    - <builtin>.int
    - os.environ.get
    - gzip.open
    - json.load
    - resolved_json_path.startswith
    - <builtin>.type
    - os.path.join
    - <builtin>.isinstance
    - <builtin>.super
    - os.path.exists
    - pdfminer.cmapdb.CMapDB._load_data
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - os.path.realpath
    - d.items
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - data.get
    - log.debug
    - os.path.dirname
    - typing.cast.name.replace
    - <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: widths2.items
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - spec
    - strict
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1201
    functionName: pdfminer.pdffont.PDFCIDFont._get_cmap_name
    functionSourceFile: pdfminer.pdffont
    functionUses: 11
    functionsReached:
    - IDENTITY_ENCODER.get
    - pdfminer.psparser.literal_name
    - <builtin>.hasattr
    - <builtin>.type
    - cmap_name_stream.get
    - <builtin>.isinstance
    - typing.cast
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFFontError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 288
    functionName: pdfminer.cmapdb.CMapDB.get_cmap
    functionSourceFile: pdfminer.cmapdb
    functionUses: 13
    functionsReached:
    - <builtin>.int
    - os.environ.get
    - gzip.open
    - pdfminer.cmapdb.CMapBase.__init__
    - json.load
    - resolved_json_path.startswith
    - <builtin>.type
    - os.path.join
    - <builtin>.isinstance
    - <builtin>.super
    - os.path.exists
    - pdfminer.cmapdb.CMapDB._load_data
    - os.path.realpath
    - d.items
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - kwargs.copy
    - pdfminer.cmapdb.PyCMap.__init__
    - data.get
    - log.debug
    - os.path.dirname
    - typing.cast.name.replace
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 69
    functionName: pdfminer.cmapdb.CMap.__init__
    functionSourceFile: pdfminer.cmapdb
    functionUses: 12
    functionsReached:
    - kwargs.copy
    - pdfminer.cmapdb.CMapBase.__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: cmap_name_stream.get
    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: IDENTITY_ENCODER.get
    functionSourceFile: <builtin>
    functionUses: 12
    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: 1224
    functionName: pdfminer.pdffont.PDFCIDFont.__repr__
    functionSourceFile: pdfminer.pdffont
    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: 1227
    functionName: pdfminer.pdffont.PDFCIDFont.is_vertical
    functionSourceFile: pdfminer.pdffont
    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: 1230
    functionName: pdfminer.pdffont.PDFCIDFont.is_multibyte
    functionSourceFile: pdfminer.pdffont
    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
    - cid
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1236
    functionName: pdfminer.pdffont.PDFCIDFont.char_disp
    functionSourceFile: pdfminer.pdffont
    functionUses: 0
    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: pdfminer.cmapdb
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 46
    functionName: pdfminer.cmapdb.CMapBase.__init__
    functionSourceFile: pdfminer.cmapdb
    functionUses: 20
    functionsReached:
    - kwargs.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.copy
    functionSourceFile: <builtin>
    functionUses: 21
    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: 49
    functionName: pdfminer.cmapdb.CMapBase.is_vertical
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - k
    - v
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 52
    functionName: pdfminer.cmapdb.CMapBase.set_attr
    functionSourceFile: pdfminer.cmapdb
    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
    - code
    - cid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 55
    functionName: pdfminer.cmapdb.CMapBase.add_code2cid
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cid
    - code
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 58
    functionName: pdfminer.cmapdb.CMapBase.add_cid2unichr
    functionSourceFile: pdfminer.cmapdb
    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
    - cmap
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 61
    functionName: pdfminer.cmapdb.CMapBase.use_cmap
    functionSourceFile: pdfminer.cmapdb
    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
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: pdfminer.cmapdb.CMapBase.decode
    functionSourceFile: pdfminer.cmapdb
    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: 73
    functionName: pdfminer.cmapdb.CMap.__repr__
    functionSourceFile: pdfminer.cmapdb
    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
    - cmap
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 76
    functionName: pdfminer.cmapdb.CMap.use_cmap
    functionSourceFile: pdfminer.cmapdb
    functionUses: 1
    functionsReached:
    - <builtin>.type
    - src.items
    - pdfminer.cmapdb.CMap.use_cmap.copy
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - dst
    - src
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: pdfminer.cmapdb.CMap.use_cmap.copy
    functionSourceFile: pdfminer.cmapdb
    functionUses: 2
    functionsReached:
    - src.items
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMap.use_cmap.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: src.items
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 90
    functionName: pdfminer.cmapdb.CMap.decode
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached:
    - typing.cast
    - <builtin>.isinstance
    - <builtin>.iter
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7f879886e550>
    - <ast.Constant object at 0x7f879886e8e0>
    - <ast.Tuple object at 0x7f879886efa0>
    argNames:
    - self
    - out
    - code2cid
    - code
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 104
    functionName: pdfminer.cmapdb.CMap.dump
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached:
    - <builtin>.sorted
    - pdfminer.cmapdb.CMap.dump
    - typing.cast.items
    - out.write
    - <builtin>.isinstance
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 47
    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: out.write
    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
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: pdfminer.cmapdb.IdentityCMap.decode
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached:
    - struct.unpack
    - <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
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 131
    functionName: pdfminer.cmapdb.IdentityCMapByte.decode
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached:
    - struct.unpack
    - <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: 144
    functionName: pdfminer.cmapdb.UnicodeMap.__repr__
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Attribute object at 0x7f8798984220>
    argNames:
    - self
    - out
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 151
    functionName: pdfminer.cmapdb.UnicodeMap.dump
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached:
    - out.write
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - code
    - cid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 164
    functionName: pdfminer.cmapdb.FileCMap.add_code2cid
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached:
    - <builtin>.type
    - <builtin>.ord
    - <builtin>.isinstance
    - typing.cast
    - <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: code.decode
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 203
    functionName: pdfminer.cmapdb.PyCMap.__init__
    functionSourceFile: pdfminer.cmapdb
    functionUses: 14
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - module
    - vertical
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 211
    functionName: pdfminer.cmapdb.PyUnicodeMap.__init__
    functionSourceFile: pdfminer.cmapdb
    functionUses: 11
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 228
    functionName: pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    functionSourceFile: pdfminer.cmapdb
    functionUses: 16
    functionsReached:
    - d.items
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - <builtin>.isinstance
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: d.items
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 249
    functionName: pdfminer.cmapdb.CMapDB._load_data
    functionSourceFile: pdfminer.cmapdb
    functionUses: 15
    functionsReached:
    - d.items
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - resolved_json_path.startswith
    - <builtin>.int
    - os.path.exists
    - data.get
    - log.debug
    - os.environ.get
    - <builtin>.type
    - gzip.open
    - os.path.join
    - os.path.dirname
    - os.path.realpath
    - typing.cast.name.replace
    - json.load
    - <builtin>.isinstance
    - <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: typing.cast.name.replace
    functionSourceFile: typing
    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: os.environ.get
    functionSourceFile: os
    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: os.path.dirname
    functionSourceFile: os
    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: os.path.join
    functionSourceFile: os
    functionUses: 31
    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: os.path.realpath
    functionSourceFile: os
    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: resolved_json_path.startswith
    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: os.path.exists
    functionSourceFile: os
    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: gzip.open
    functionSourceFile: gzip
    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: json.load
    functionSourceFile: json
    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: data.get
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 29
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 15
    EdgeCount: 42
    ICount: 27
    IfCount: 29
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - pos
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 345
    functionName: pdfminer.cmapdb.CMapParser.do_keyword
    functionSourceFile: pdfminer.cmapdb
    functionUses: 0
    functionsReached:
    - typing.cast.startswith
    - <builtin>.int
    - os.environ.get
    - gzip.open
    - pdfminer.cmapdb.CMapBase.__init__
    - typing.cast.strip
    - json.load
    - log.warning
    - <builtin>.len
    - <builtin>.map
    - struct.pack
    - pdfminer.utils.nunpack
    - resolved_json_path.startswith
    - pdfminer.utils.choplist
    - <builtin>.type
    - typing.cast.split
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - os.path.join
    - r.append
    - pdfminer.cmapdb.CMap.use_cmap.copy
    - <builtin>.range
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapBase.use_cmap
    - <builtin>.zip
    - <builtin>.super
    - os.path.exists
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.psparser.literal_name
    - pdfminer.encodingdb.name2unicode
    - pdfminer.cmapdb.CMapBase.set_attr
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - pdfminer.cmapdb.CMapDB._load_data
    - os.path.realpath
    - code.decode
    - d.items
    - <builtin>.tuple
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - kwargs.copy
    - pdfminer.cmapdb.PyCMap.__init__
    - <builtin>.chr
    - data.get
    - log.debug
    - pdfminer.cmapdb.CMapParser._warn_once
    - src.items
    - pdfminer.cmapdb.CMap.use_cmap
    - os.path.dirname
    - int.from_bytes
    - typing.cast.name.replace
    - HEXADECIMAL.match
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 498
    functionName: pdfminer.cmapdb.CMapParser._warn_once
    functionSourceFile: pdfminer.cmapdb
    functionUses: 1
    functionsReached:
    - log.warning
    linkageType: 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: pdfminer.encodingdb
    functionSourceFile: pdfminer.encodingdb
    functionUses: 0
    functionsReached:
    - re.compile
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.split
    functionSourceFile: typing
    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: typing.cast.strip
    functionSourceFile: typing
    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: HEXADECIMAL.match
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - unicode_digit
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 72
    functionName: pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    functionSourceFile: ''
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - PDFKeyError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: pdfminer.encodingdb.EncodingDB
    functionSourceFile: pdfminer.encodingdb
    functionUses: 0
    functionsReached:
    - <builtin>.chr
    - typing.cast.startswith
    - <builtin>.int
    - pdfminer.encodingdb.name2unicode
    - <builtin>.range
    - typing.cast.split
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - typing.cast.strip
    - HEXADECIMAL.match
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.encodings.get
    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: cid2unicode.copy
    functionSourceFile: <builtin>
    functionUses: 13
    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: pdfminer.latin_enc
    functionSourceFile: pdfminer.latin_enc
    functionUses: 0
    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: pdfminer.glyphlist
    functionSourceFile: pdfminer.glyphlist
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: pdfminer.glyphlist.convert_glyphlist
    functionSourceFile: pdfminer.glyphlist
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - line.split
    - <builtin>.print
    - x.split
    - line.strip
    - fileinput.readlines
    - line.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: fileinput.readlines
    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: x.split
    functionSourceFile: <builtin>
    functionUses: 1
    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: pdfminer.fontmetrics
    functionSourceFile: pdfminer.fontmetrics
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 5
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: pdfminer.fontmetrics.convert_font_metrics
    functionSourceFile: pdfminer.fontmetrics
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - <builtin>.tuple
    - <builtin>.int
    - <builtin>.print
    - line.strip
    - <builtin>.float
    - fonts.items
    - fileinput.readlines
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fonts.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: pdfminer.pdfinterp
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - logging.getLogger
    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: 74
    functionName: pdfminer.pdfinterp.PDFTextState.__init__
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 10
    functionsReached:
    - pdfminer.pdfinterp.PDFTextState.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: 115
    functionName: pdfminer.pdfinterp.PDFTextState.reset
    functionSourceFile: ''
    functionUses: 12
    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: 87
    functionName: pdfminer.pdfinterp.PDFTextState.__repr__
    functionSourceFile: pdfminer.pdfinterp
    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: 2
    functionLinenumber: 101
    functionName: pdfminer.pdfinterp.PDFTextState.copy
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 2
    functionsReached:
    - pdfminer.pdfinterp.PDFTextState.reset
    - pdfminer.pdfinterp.PDFTextState.__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: 138
    functionName: pdfminer.pdfinterp.PDFGraphicState.__init__
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 14
    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: 155
    functionName: pdfminer.pdfinterp.PDFGraphicState.copy
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 6
    functionsReached:
    - pdfminer.pdfinterp.PDFGraphicState.__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: 170
    functionName: pdfminer.pdfinterp.PDFGraphicState.__repr__
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - procs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 197
    functionName: pdfminer.pdfinterp.PDFResourceManager.get_procset
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 7
    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 0x7f8798d26610>
    argNames:
    - self
    - cmapname
    - strict
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 204
    functionName: pdfminer.pdfinterp.PDFResourceManager.get_cmap
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - os.environ.get
    - gzip.open
    - pdfminer.cmapdb.CMapBase.__init__
    - json.load
    - resolved_json_path.startswith
    - <builtin>.type
    - os.path.join
    - <builtin>.isinstance
    - <builtin>.super
    - os.path.exists
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.cmapdb.CMapDB._load_data
    - os.path.realpath
    - d.items
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - kwargs.copy
    - pdfminer.cmapdb.PyCMap.__init__
    - data.get
    - log.debug
    - os.path.dirname
    - pdfminer.cmapdb.CMap.__init__
    - typing.cast.name.replace
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 1
    IfCount: 12
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - objid
    - spec
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 212
    functionName: pdfminer.pdfinterp.PDFResourceManager.get_font
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 8
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - typing.cast.startswith
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdfinterp.PDFResourceManager.get_font
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - json.load
    - <builtin>.map
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - pdfminer.pdffont.PDFType3Font.__init__
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - subtables.append
    - <builtin>.type
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - r.append
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - struct.unpack
    - code.decode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.items
    - pdfminer.psparser.PSBaseParser.seek
    - cid2unicode.copy
    - d.decompress
    - logger.debug
    - contextlib.suppress
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - os.environ.get
    - widths2.items
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - <builtin>.enumerate
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - io.BytesIO.read
    - char2gid.update
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - char2gid.items
    - os.path.exists
    - binascii.unhexlify
    - <builtin>.hasattr
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - binascii.unhexlify.find
    - os.path.realpath
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - pdfminer.cmapdb.PyCMap.__init__
    - typing.cast.copy
    - data.get
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - pdfminer.pdffont.get_widths
    - pdfminer.pdffont.PDFType1Font.__init__
    - typing.cast.name.replace
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - gzip.open
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - resolved_json_path.startswith
    - typing.cast.decode
    - pdfminer.lzw.LZWDecoder.readbits
    - typing.cast.split
    - pdfminer.pdftypes.list_value
    - os.path.join
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - hdrs.append
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.encodingdb.name2unicode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - pdfminer.cmapdb.CMapDB._load_data
    - <builtin>.next
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - <builtin>.tuple
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdffont.get_widths2
    - pdfminer.pdftypes.PDFStream.get_filters
    - os.path.dirname
    - logger.warning
    - pdfminer.cmapdb.CMap.__init__
    - HEXADECIMAL.match
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdffont.PDFCIDFont.__init__
    - cid_registry.strip
    - pdfminer.utils.apply_matrix_norm
    - pdfminer.pdftypes.stream_value
    - cmap_name_stream.get
    - <builtin>.abs
    - <builtin>.float
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - log.warning
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - cls.encodings.get
    - <builtin>.set
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - pdfminer.pdffont.TrueTypeFont.__init__
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.num_value
    - <builtin>.super
    - pdfminer.psparser.literal_name
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.casting.safe_float
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - <builtin>.chr
    - io.BytesIO.seek
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.utils.paeth_predictor
    - <builtin>.iter
    - <builtin>.max
    - raw.append
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - cid_ordering.strip
    linkageType: pythonLinkage
    raised:
    - PDFFontError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.copy
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - streams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 257
    functionName: pdfminer.pdfinterp.PDFContentParser.__init__
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 7
    functionsReached:
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.psparser.PSStackParser.seek
    - log.debug
    - pdfminer.psparser.PSStackParser.__init__
    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: 9
    functionLinenumber: 265
    functionName: pdfminer.pdfinterp.PDFContentParser.fillfp
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 4
    functionsReached:
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.ascii85.asciihexdecode
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PSEOF
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - pos
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 276
    functionName: pdfminer.pdfinterp.PDFContentParser.seek
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 2
    functionsReached:
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdfinterp.PDFContentParser.fillfp
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    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: 10
    functionLinenumber: 280
    functionName: pdfminer.pdfinterp.PDFContentParser.fillbuf
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 2
    functionsReached:
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdfinterp.PDFContentParser.fillfp
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.ascii85.asciihexdecode
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    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 0x7f8798c38f40>
    argNames:
    - self
    - pos
    - target
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 294
    functionName: pdfminer.pdfinterp.PDFContentParser.get_inline_data
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdfinterp.PDFContentParser.fillfp
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - re.sub
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - c.isspace
    - pdfminer.pdfinterp.PDFContentParser.fillbuf
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - pdfminer.pdfinterp.PDFContentParser.seek
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.isspace
    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: re.sub
    functionSourceFile: re
    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: 0
    functionLinenumber: 324
    functionName: pdfminer.pdfinterp.PDFContentParser.flush
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 4
    IfCount: 9
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - pos
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 331
    functionName: pdfminer.pdfinterp.PDFContentParser.do_keyword
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdfinterp.PDFContentParser.fillfp
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - r.append
    - <builtin>.ord
    - <builtin>.isinstance
    - re.sub
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - c.isspace
    - pdfminer.pdfinterp.PDFContentParser.fillbuf
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - pdfminer.pdfinterp.PDFContentParser.seek
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - d.get
    - pdfminer.pdfinterp.PDFContentParser.get_inline_data
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - <builtin>.tuple
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.psparser.literal_name
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PSTypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: d.get
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - rsrcmgr
    - device
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 373
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.__init__
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 4
    functionsReached:
    - <builtin>.set
    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: 381
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.dup
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 2
    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: 1
    functionLinenumber: 384
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.subinterp
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - pdfminer.pdfinterp.PDFPageInterpreter.dup
    - interp.parent_stream_ids.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: interp.parent_stream_ids.update
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 3
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - resources
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 397
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.init_resources
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 6
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - typing.cast.startswith
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdfinterp.PDFResourceManager.get_font
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - PREDEFINED_COLORSPACE.get
    - json.load
    - <builtin>.map
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - pdfminer.pdffont.PDFType3Font.__init__
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - subtables.append
    - <builtin>.type
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - r.append
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - struct.unpack
    - code.decode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.items
    - pdfminer.psparser.PSBaseParser.seek
    - cid2unicode.copy
    - d.decompress
    - logger.debug
    - contextlib.suppress
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - os.environ.get
    - widths2.items
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - <builtin>.enumerate
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - io.BytesIO.read
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - char2gid.update
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - char2gid.items
    - os.path.exists
    - binascii.unhexlify
    - <builtin>.hasattr
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - binascii.unhexlify.find
    - os.path.realpath
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.cmapdb.PyCMap.__init__
    - typing.cast.copy
    - data.get
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - pdfminer.pdffont.get_widths
    - pdfminer.pdffont.PDFType1Font.__init__
    - typing.cast.name.replace
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - gzip.open
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources.get_colorspace
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - resolved_json_path.startswith
    - typing.cast.decode
    - pdfminer.lzw.LZWDecoder.readbits
    - typing.cast.split
    - pdfminer.pdftypes.list_value
    - os.path.join
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - hdrs.append
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.encodingdb.name2unicode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - pdfminer.cmapdb.CMapDB._load_data
    - <builtin>.next
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - <builtin>.tuple
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdffont.get_widths2
    - pdfminer.pdftypes.PDFStream.get_filters
    - os.path.dirname
    - logger.warning
    - pdfminer.cmapdb.CMap.__init__
    - HEXADECIMAL.match
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - PREDEFINED_COLORSPACE.copy
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdffont.PDFCIDFont.__init__
    - cid_registry.strip
    - pdfminer.utils.apply_matrix_norm
    - pdfminer.pdftypes.stream_value
    - pdfminer.pdfinterp.PDFResourceManager.get_procset
    - cmap_name_stream.get
    - <builtin>.abs
    - <builtin>.float
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - log.warning
    - base64.a85decode.find
    - pdfminer.pdfcolor.PDFColorSpace.__init__
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - cls.encodings.get
    - <builtin>.set
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - pdfminer.pdffont.TrueTypeFont.__init__
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.num_value
    - <builtin>.super
    - pdfminer.psparser.literal_name
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.casting.safe_float
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - <builtin>.chr
    - io.BytesIO.seek
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.utils.paeth_predictor
    - <builtin>.iter
    - <builtin>.max
    - raw.append
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - cid_ordering.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: PREDEFINED_COLORSPACE.copy
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - spec
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 406
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.init_resources.get_colorspace
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 7
    functionsReached:
    - typing.cast.resolve
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.psparser.literal_name
    - pdfminer.pdftypes.stream_value
    - <builtin>.type
    - pdfminer.pdftypes.list_value
    - <builtin>.str
    - PREDEFINED_COLORSPACE.get
    - pdfminer.pdftypes.resolve1
    - <builtin>.len
    - pdfminer.pdfcolor.PDFColorSpace.__init__
    - <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: PREDEFINED_COLORSPACE.get
    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
    - ctm
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 438
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.init_state
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 6
    functionsReached:
    - pdfminer.pdfinterp.PDFTextState.reset
    - pdfminer.pdfinterp.PDFTextState.__init__
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ctm
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 51
    functionName: pdfminer.pdfdevice.PDFDevice.set_ctm
    functionSourceFile: ''
    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
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 450
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.push
    functionSourceFile: pdfminer.pdfinterp
    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
    - n
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 453
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.pop
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 11
    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: 3
    functionLinenumber: 460
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.get_current_state
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - pdfminer.pdfinterp.PDFTextState.copy
    - pdfminer.pdfinterp.PDFTextState.__init__
    - pdfminer.pdfinterp.PDFGraphicState.copy
    - pdfminer.pdfinterp.PDFTextState.reset
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - state
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 463
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.set_current_state
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    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: 4
    functionLinenumber: 470
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_q
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.pdfinterp.PDFTextState.copy
    - pdfminer.pdfinterp.PDFTextState.__init__
    - pdfminer.pdfinterp.PDFGraphicState.copy
    - pdfminer.pdfinterp.PDFTextState.reset
    - pdfminer.pdfinterp.PDFPageInterpreter.get_current_state
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    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: 2
    functionLinenumber: 474
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Q
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.pdfinterp.PDFPageInterpreter.set_current_state
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - a1
    - b1
    - c1
    - d1
    - e1
    - f1
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 479
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_cm
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.casting.safe_matrix
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    - pdfminer.casting.safe_float
    - <builtin>.float
    - pdfminer.utils.mult_matrix
    - log.warning
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - linewidth
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 501
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_w
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - linecap
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 513
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_J
    functionSourceFile: pdfminer.pdfinterp
    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
    - linejoin
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 517
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_j
    functionSourceFile: pdfminer.pdfinterp
    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
    - miterlimit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 521
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_M
    functionSourceFile: pdfminer.pdfinterp
    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
    - dash
    - phase
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 525
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_d
    functionSourceFile: pdfminer.pdfinterp
    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
    - intent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 529
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_ri
    functionSourceFile: pdfminer.pdfinterp
    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
    - flatness
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 533
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_i
    functionSourceFile: pdfminer.pdfinterp
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 537
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_gs
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - x
    - y
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 541
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_m
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - x
    - y
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 557
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_l
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - x1
    - y1
    - x2
    - y2
    - x3
    - y3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 572
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_c
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - x2
    - y2
    - x3
    - y3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 606
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_v
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - x1
    - y1
    - x3
    - y3
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 623
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_y
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    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: 640
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_h
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 7
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - x
    - y
    - w
    - h
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 644
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_re
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    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: 665
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_S
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - <builtin>.super
    - pdfminer.converter.TextConverter.paint_path
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - gstate
    - stroke
    - fill
    - evenodd
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 372
    functionName: pdfminer.converter.TextConverter.paint_path
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 155
    functionName: pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    functionSourceFile: pdfplumber.page
    functionUses: 9
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - <builtin>.super
    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: 3
    functionLinenumber: 670
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_s
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.converter.TextConverter.paint_path
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    - pdfminer.pdfinterp.PDFPageInterpreter.do_S
    - <builtin>.super
    - pdfminer.pdfinterp.PDFPageInterpreter.do_h
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    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: 675
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_f
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - <builtin>.super
    - pdfminer.converter.TextConverter.paint_path
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    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: 680
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_F
    functionSourceFile: pdfminer.pdfinterp
    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: 2
    functionLinenumber: 683
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_f_a
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - <builtin>.super
    - pdfminer.converter.TextConverter.paint_path
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    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: 688
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_B
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - <builtin>.super
    - pdfminer.converter.TextConverter.paint_path
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    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: 693
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_B_a
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - <builtin>.super
    - pdfminer.converter.TextConverter.paint_path
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    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: 3
    functionLinenumber: 698
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_b
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.converter.TextConverter.paint_path
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    - <builtin>.super
    - pdfminer.pdfinterp.PDFPageInterpreter.do_h
    - pdfminer.pdfinterp.PDFPageInterpreter.do_B
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    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: 3
    functionLinenumber: 703
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_b_a
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.converter.TextConverter.paint_path
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    - <builtin>.super
    - pdfminer.pdfinterp.PDFPageInterpreter.do_h
    - pdfminer.pdfinterp.PDFPageInterpreter.do_B_a
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    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: 708
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_n
    functionSourceFile: pdfminer.pdfinterp
    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: 712
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_W
    functionSourceFile: pdfminer.pdfinterp
    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: 715
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_W_a
    functionSourceFile: pdfminer.pdfinterp
    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: 2
    functionLinenumber: 718
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_CS
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - pdfminer.psparser.literal_name
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFInterpreterError
    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: 2
    functionLinenumber: 729
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_cs
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - pdfminer.psparser.literal_name
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFInterpreterError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - gray
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 737
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_G
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - gray
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 750
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_g
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - r
    - g
    - b
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 763
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_RG
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.casting._safe_float_triple
    - pdfminer.casting.safe_rgb
    - pdfminer.casting.safe_float
    - <builtin>.float
    - log.warning
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - r
    - g
    - b
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 777
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_rg
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.casting._safe_float_triple
    - pdfminer.casting.safe_rgb
    - pdfminer.casting.safe_float
    - <builtin>.float
    - log.warning
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - c
    - m
    - y
    - k
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 791
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_K
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.casting._safe_float_quadruple
    - pdfminer.casting.safe_cmyk
    - pdfminer.casting.safe_float
    - <builtin>.float
    - log.warning
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - c
    - m
    - y
    - k
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 805
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_k
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.casting._safe_float_quadruple
    - pdfminer.casting.safe_cmyk
    - pdfminer.casting.safe_float
    - <builtin>.float
    - log.warning
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 5
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - components
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 819
    functionName: pdfminer.pdfinterp.PDFPageInterpreter._parse_color_components
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 4
    functionsReached:
    - pdfminer.casting._safe_float_quadruple
    - pdfminer.casting._safe_float_triple
    - pdfminer.casting.safe_cmyk
    - pdfminer.casting.safe_rgb
    - pdfminer.casting.safe_float
    - <builtin>.float
    - log.warning
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 870
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_SCN
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - pdfminer.pdfinterp.PDFPageInterpreter._parse_color_components
    - pdfminer.casting._safe_float_quadruple
    - log.debug
    - pdfminer.psparser.literal_name
    - pdfminer.casting.safe_cmyk
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.casting.safe_float
    - <builtin>.type
    - pdfminer.casting.safe_rgb
    - pdfminer.casting._safe_float_triple
    - <builtin>.float
    - log.warning
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 936
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_scn
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - pdfminer.pdfinterp.PDFPageInterpreter._parse_color_components
    - pdfminer.casting._safe_float_quadruple
    - log.debug
    - pdfminer.psparser.literal_name
    - pdfminer.casting.safe_cmyk
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.casting.safe_float
    - <builtin>.type
    - pdfminer.casting.safe_rgb
    - pdfminer.casting._safe_float_triple
    - <builtin>.float
    - log.warning
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.str
    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: 1004
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_SC
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.pdfinterp.PDFPageInterpreter._parse_color_components
    - pdfminer.casting._safe_float_quadruple
    - log.debug
    - pdfminer.psparser.literal_name
    - pdfminer.casting.safe_cmyk
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.casting.safe_float
    - pdfminer.pdfinterp.PDFPageInterpreter.do_SCN
    - <builtin>.type
    - pdfminer.casting.safe_rgb
    - pdfminer.casting._safe_float_triple
    - <builtin>.float
    - log.warning
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.str
    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: 1008
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_sc
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.pdfinterp.PDFPageInterpreter._parse_color_components
    - pdfminer.casting._safe_float_quadruple
    - log.debug
    - pdfminer.psparser.literal_name
    - pdfminer.casting.safe_cmyk
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.casting.safe_float
    - <builtin>.type
    - pdfminer.casting.safe_rgb
    - pdfminer.casting._safe_float_triple
    - <builtin>.float
    - pdfminer.pdfinterp.PDFPageInterpreter.do_scn
    - log.warning
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.str
    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: 1012
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_sh
    functionSourceFile: pdfminer.pdfinterp
    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: 1
    functionLinenumber: 1015
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_BT
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.pdfinterp.PDFTextState.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: 0
    functionLinenumber: 1024
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_ET
    functionSourceFile: pdfminer.pdfinterp
    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: 1027
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_BX
    functionSourceFile: pdfminer.pdfinterp
    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: 1030
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_EX
    functionSourceFile: pdfminer.pdfinterp
    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
    - tag
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1033
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_MP
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.utils.enc
    - charset_normalizer.detect
    - pdfminer.pdfdevice.TagExtractor.begin_tag
    - o.decode
    - html.escape.encode
    - <builtin>.str
    - pdfminer.utils.make_compat_str
    - <builtin>.sorted
    - pdfminer.pdfdevice.TagExtractor.do_tag
    - props.items
    - log.warning
    - <builtin>.isinstance
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - typing.cast
    - typing.cast.write
    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 0x7f8798afebb0>
    argNames:
    - self
    - tag
    - props
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 322
    functionName: pdfminer.pdfdevice.TagExtractor.do_tag
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 2
    functionsReached:
    - pdfminer.utils.enc
    - charset_normalizer.detect
    - pdfminer.pdfdevice.TagExtractor.begin_tag
    - o.decode
    - html.escape.encode
    - pdfminer.utils.make_compat_str
    - <builtin>.sorted
    - props.items
    - typing.cast.write
    - <builtin>.isinstance
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - typing.cast
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tag
    - props
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1043
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_DP
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.utils.enc
    - charset_normalizer.detect
    - pdfminer.pdfdevice.TagExtractor.begin_tag
    - o.decode
    - html.escape.encode
    - <builtin>.str
    - pdfminer.utils.make_compat_str
    - <builtin>.sorted
    - pdfminer.pdfdevice.TagExtractor.do_tag
    - props.items
    - log.warning
    - <builtin>.isinstance
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - typing.cast
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tag
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1054
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_BMC
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - pdfminer.pdfdevice.TagExtractor.begin_tag
    - pdfminer.utils.make_compat_str
    - props.items
    - log.warning
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - html.escape.encode
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.utils.enc
    - typing.cast.write
    - typing.cast.name.startswith
    - typing.cast
    - charset_normalizer.detect
    - o.decode
    - <builtin>.sorted
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.begin_tag
    - <builtin>.str
    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 0x7f8798c38640>
    argNames:
    - self
    - tag
    - props
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 303
    functionName: pdfminer.pdfdevice.TagExtractor.begin_tag
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 5
    functionsReached:
    - pdfminer.utils.enc
    - charset_normalizer.detect
    - o.decode
    - html.escape.encode
    - pdfminer.utils.make_compat_str
    - <builtin>.sorted
    - props.items
    - typing.cast.write
    - <builtin>.isinstance
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - typing.cast
    - <builtin>.str
    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 0x7f8798f2d3a0>
    argNames:
    - self
    - tag
    - props
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 117
    functionName: pdfplumber.page.PDFPageAggregatorWithMarkedContent.begin_tag
    functionSourceFile: pdfplumber.page
    functionUses: 2
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - <builtin>.ord
    - typing.cast.name.startswith
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tag
    - props
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1064
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_BDC
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - pdfminer.pdfdevice.TagExtractor.begin_tag
    - pdfminer.utils.make_compat_str
    - props.items
    - log.warning
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - html.escape.encode
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.utils.enc
    - typing.cast.write
    - typing.cast.name.startswith
    - typing.cast
    - charset_normalizer.detect
    - o.decode
    - <builtin>.sorted
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.begin_tag
    - <builtin>.str
    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: 3
    functionLinenumber: 1075
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_EMC
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.utils.enc
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.end_tag
    - pdfminer.pdfdevice.TagExtractor.end_tag
    - html.escape.encode
    - typing.cast.write
    - <builtin>.isinstance
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - typing.cast
    - <builtin>.str
    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: 316
    functionName: pdfminer.pdfdevice.TagExtractor.end_tag
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 1
    functionsReached:
    - pdfminer.utils.enc
    - html.escape.encode
    - typing.cast.write
    - <builtin>.isinstance
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - typing.cast
    - <builtin>.str
    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: 125
    functionName: pdfplumber.page.PDFPageAggregatorWithMarkedContent.end_tag
    functionSourceFile: ''
    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
    - space
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1079
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Tc
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - space
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1095
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Tw
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 1
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - scale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1111
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Tz
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - leading
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1126
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_TL
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - fontid
    - fontsize
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 1142
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Tf
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - typing.cast.startswith
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - pdfminer.pdfinterp.PDFResourceManager.get_font
    - pdfminer.pdftypes.dict_value
    - json.load
    - <builtin>.map
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - pdfminer.pdffont.PDFType3Font.__init__
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - subtables.append
    - <builtin>.type
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - r.append
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - struct.unpack
    - code.decode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.items
    - pdfminer.psparser.PSBaseParser.seek
    - cid2unicode.copy
    - d.decompress
    - logger.debug
    - contextlib.suppress
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - os.environ.get
    - widths2.items
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - <builtin>.enumerate
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - io.BytesIO.read
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - char2gid.update
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - char2gid.items
    - os.path.exists
    - binascii.unhexlify
    - <builtin>.hasattr
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - binascii.unhexlify.find
    - os.path.realpath
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.cmapdb.PyCMap.__init__
    - typing.cast.copy
    - data.get
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - pdfminer.pdffont.get_widths
    - pdfminer.pdffont.PDFType1Font.__init__
    - typing.cast.name.replace
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - gzip.open
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - resolved_json_path.startswith
    - typing.cast.decode
    - pdfminer.lzw.LZWDecoder.readbits
    - typing.cast.split
    - pdfminer.pdftypes.list_value
    - os.path.join
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - hdrs.append
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.encodingdb.name2unicode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - pdfminer.cmapdb.CMapDB._load_data
    - <builtin>.next
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - <builtin>.tuple
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdffont.get_widths2
    - pdfminer.pdftypes.PDFStream.get_filters
    - os.path.dirname
    - logger.warning
    - pdfminer.cmapdb.CMap.__init__
    - HEXADECIMAL.match
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdffont.PDFCIDFont.__init__
    - cid_registry.strip
    - pdfminer.utils.apply_matrix_norm
    - pdfminer.pdftypes.stream_value
    - cmap_name_stream.get
    - <builtin>.abs
    - <builtin>.float
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - log.warning
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - cls.encodings.get
    - <builtin>.set
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - pdfminer.pdffont.TrueTypeFont.__init__
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.num_value
    - <builtin>.super
    - pdfminer.psparser.literal_name
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.casting.safe_float
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - <builtin>.chr
    - io.BytesIO.seek
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.utils.paeth_predictor
    - <builtin>.iter
    - <builtin>.max
    - raw.append
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - cid_ordering.strip
    linkageType: pythonLinkage
    raised:
    - PDFInterpreterError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - render
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1165
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Tr
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.casting.safe_int
    - log.warning
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rise
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1177
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Ts
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tx
    - ty
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1192
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Td
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tx
    - ty
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1210
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_TD
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - <builtin>.float
    - pdfminer.casting.safe_float
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - a
    - b
    - c
    - d
    - e
    - f
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1233
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Tm
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - log.warning
    - pdfminer.casting.safe_matrix
    - <builtin>.float
    - pdfminer.casting.safe_float
    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: 1256
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_T_a
    functionSourceFile: pdfminer.pdfinterp
    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
    - seq
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1269
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_TJ
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 3
    functionsReached:
    - pdfminer.pdffont.PDFSimpleFont.to_unichr
    - pdfminer.pdfdevice.TagExtractor.render_string
    - <builtin>.bytearray
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - logger.warning
    - pdfminer.pdffont.PDFFont.is_vertical
    - pdfminer.pdfdevice.PDFTextDevice.render_string_horizontal
    - pdfminer.utils.translate_matrix
    - <builtin>.type
    - html.escape.encode
    - <builtin>.str
    - pdfminer.pdffont.PDFCIDFont.is_multibyte
    - <builtin>.isinstance
    - pdfminer.pdffont.PDFFont.decode
    - pdfminer.pdffont.PDFCIDFont.decode
    - pdfminer.pdfdevice.PDFTextDevice.render_string_vertical
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_char
    - <builtin>.super
    - pdfminer.cmapdb.UnicodeMap.get_unichr
    - pdfminer.utils.enc
    - typing.cast.encode
    - typing.cast.write
    - pdfminer.pdffont.PDFCIDFont.is_vertical
    - pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    - pdfminer.utils.make_compat_bytes
    - typing.cast
    - pdfminer.pdffont.PDFCIDFont.to_unichr
    - <builtin>.chr
    - log.debug
    - pdfminer.pdfinterp.PDFGraphicState.copy
    - pdfminer.pdfdevice.PDFTextDevice.render_char
    - pdfminer.pdfdevice.PDFTextDevice.render_string
    - pdfminer.utils.mult_matrix
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    linkageType: pythonLinkage
    raised:
    - PDFInterpreterError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - textstate
    - seq
    - ncs
    - graphicstate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 99
    functionName: pdfminer.pdfdevice.PDFTextDevice.render_string
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 4
    functionsReached:
    - pdfminer.pdffont.PDFFont.is_vertical
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfminer.utils.translate_matrix
    - <builtin>.super
    - pdfminer.pdfdevice.PDFTextDevice.render_string_vertical
    - pdfminer.pdfdevice.PDFTextDevice.render_char
    - logger.warning
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_char
    - <builtin>.bytearray
    - pdfminer.pdffont.PDFCIDFont.is_vertical
    - pdfminer.utils.mult_matrix
    - pdfminer.pdffont.PDFCIDFont.is_multibyte
    - <builtin>.isinstance
    - pdfminer.pdffont.PDFFont.decode
    - pdfminer.pdffont.PDFCIDFont.decode
    - pdfminer.pdfdevice.PDFTextDevice.render_string_horizontal
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - textstate
    - seq
    - ncs
    - graphicstate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 268
    functionName: pdfminer.pdfdevice.TagExtractor.render_string
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 4
    functionsReached:
    - pdfminer.pdffont.PDFSimpleFont.to_unichr
    - <builtin>.bytearray
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - <builtin>.type
    - html.escape.encode
    - <builtin>.isinstance
    - pdfminer.pdffont.PDFFont.decode
    - pdfminer.pdffont.PDFCIDFont.decode
    - pdfminer.cmapdb.UnicodeMap.get_unichr
    - pdfminer.utils.enc
    - typing.cast.encode
    - typing.cast.write
    - pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    - pdfminer.utils.make_compat_bytes
    - pdfminer.pdffont.PDFCIDFont.to_unichr
    - <builtin>.chr
    - log.debug
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1282
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Tj
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.pdffont.PDFSimpleFont.to_unichr
    - pdfminer.pdfdevice.TagExtractor.render_string
    - <builtin>.bytearray
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - logger.warning
    - pdfminer.pdffont.PDFFont.is_vertical
    - pdfminer.pdfdevice.PDFTextDevice.render_string_horizontal
    - pdfminer.utils.translate_matrix
    - <builtin>.type
    - html.escape.encode
    - <builtin>.str
    - pdfminer.pdffont.PDFCIDFont.is_multibyte
    - <builtin>.isinstance
    - pdfminer.pdffont.PDFFont.decode
    - pdfminer.pdffont.PDFCIDFont.decode
    - pdfminer.pdfdevice.PDFTextDevice.render_string_vertical
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_char
    - <builtin>.super
    - pdfminer.cmapdb.UnicodeMap.get_unichr
    - pdfminer.utils.enc
    - typing.cast.encode
    - typing.cast.write
    - pdfminer.pdffont.PDFCIDFont.is_vertical
    - pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    - pdfminer.utils.make_compat_bytes
    - typing.cast
    - pdfminer.pdffont.PDFCIDFont.to_unichr
    - <builtin>.chr
    - log.debug
    - pdfminer.pdfinterp.PDFGraphicState.copy
    - pdfminer.pdfdevice.PDFTextDevice.render_char
    - pdfminer.pdfdevice.PDFTextDevice.render_string
    - pdfminer.pdfinterp.PDFPageInterpreter.do_TJ
    - pdfminer.utils.mult_matrix
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1286
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do__q
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.pdfinterp.PDFPageInterpreter.do_T_a
    - pdfminer.pdffont.PDFSimpleFont.to_unichr
    - pdfminer.pdfdevice.TagExtractor.render_string
    - <builtin>.bytearray
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - logger.warning
    - pdfminer.pdffont.PDFFont.is_vertical
    - pdfminer.pdfdevice.PDFTextDevice.render_string_horizontal
    - pdfminer.utils.translate_matrix
    - <builtin>.type
    - html.escape.encode
    - <builtin>.str
    - pdfminer.pdffont.PDFCIDFont.is_multibyte
    - <builtin>.isinstance
    - pdfminer.pdffont.PDFFont.decode
    - pdfminer.pdffont.PDFCIDFont.decode
    - pdfminer.pdfdevice.PDFTextDevice.render_string_vertical
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_char
    - <builtin>.super
    - pdfminer.cmapdb.UnicodeMap.get_unichr
    - pdfminer.utils.enc
    - typing.cast.encode
    - typing.cast.write
    - pdfminer.pdffont.PDFCIDFont.is_vertical
    - pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    - pdfminer.utils.make_compat_bytes
    - typing.cast
    - pdfminer.pdffont.PDFCIDFont.to_unichr
    - <builtin>.chr
    - log.debug
    - pdfminer.pdfinterp.PDFGraphicState.copy
    - pdfminer.pdfdevice.PDFTextDevice.render_char
    - pdfminer.pdfdevice.PDFTextDevice.render_string
    - pdfminer.pdfinterp.PDFPageInterpreter.do_TJ
    - pdfminer.utils.mult_matrix
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - aw
    - ac
    - s
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1294
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do__w
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.pdffont.PDFSimpleFont.to_unichr
    - pdfminer.pdfdevice.TagExtractor.render_string
    - <builtin>.float
    - <builtin>.bytearray
    - log.warning
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape
    - logger.warning
    - pdfminer.pdffont.PDFFont.is_vertical
    - pdfminer.pdfdevice.PDFTextDevice.render_string_horizontal
    - pdfminer.utils.translate_matrix
    - pdfminer.pdfinterp.PDFPageInterpreter.do_Tc
    - <builtin>.type
    - html.escape.encode
    - <builtin>.str
    - pdfminer.pdffont.PDFCIDFont.is_multibyte
    - <builtin>.isinstance
    - pdfminer.pdffont.PDFFont.decode
    - pdfminer.pdfdevice.PDFTextDevice.render_string_vertical
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_char
    - pdfminer.pdffont.PDFCIDFont.decode
    - <builtin>.super
    - pdfminer.cmapdb.UnicodeMap.get_unichr
    - pdfminer.utils.enc
    - pdfminer.casting.safe_float
    - pdfminer.pdfinterp.PDFPageInterpreter.do_Tw
    - typing.cast.write
    - pdfminer.pdffont.PDFCIDFont.is_vertical
    - typing.cast.encode
    - pdfminer.cmapdb.IdentityUnicodeMap.get_unichr
    - pdfminer.utils.make_compat_bytes
    - typing.cast
    - pdfminer.pdffont.PDFCIDFont.to_unichr
    - <builtin>.chr
    - pdfminer.pdfdevice.PDFTextDevice.render_char
    - pdfminer.pdfinterp.PDFGraphicState.copy
    - log.debug
    - pdfminer.pdfdevice.PDFTextDevice.render_string
    - pdfminer.pdfinterp.PDFPageInterpreter.do_TJ
    - pdfminer.utils.mult_matrix
    - pdfminer.pdfinterp.PDFGraphicState.__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: 1303
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_BI
    functionSourceFile: pdfminer.pdfinterp
    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: 1306
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_ID
    functionSourceFile: pdfminer.pdfinterp
    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
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1309
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_EI
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.converter.TextConverter.render_image
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.layout.LTFigure.__init__
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.layout.LTLayoutContainer.__init__
    - pdfminer.pdfdevice.PDFDevice.render_image
    - <builtin>.type
    - <builtin>.isinstance
    - pdfminer.converter.PDFLayoutAnalyzer.begin_figure
    - pdfminer.pdfdevice.PDFDevice.begin_figure
    - <builtin>.super
    - pdfminer.utils.apply_matrix_pt
    - LTItem.__init__
    - pdfminer.converter.PDFLayoutAnalyzer.end_figure
    - pdfminer.layout.LTComponent.set_bbox
    - <builtin>.min
    - <builtin>.id
    - <builtin>.max
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_image
    - pdfminer.pdfdevice.PDFDevice.end_figure
    - pdfminer.utils.mult_matrix
    - pdfminer.layout.LTContainer.__init__
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - bbox
    - matrix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 89
    functionName: pdfminer.converter.PDFLayoutAnalyzer.begin_figure
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.utils.apply_matrix_pt
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.layout.LTLayoutContainer.__init__
    - LTItem.__init__
    - <builtin>.max
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTFigure.__init__
    - pdfminer.utils.mult_matrix
    - pdfminer.layout.LTContainer.__init__
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - bbox
    - matrix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 69
    functionName: pdfminer.pdfdevice.PDFDevice.begin_figure
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - stream
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 85
    functionName: pdfminer.pdfdevice.PDFDevice.render_image
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 150
    functionName: pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_image
    functionSourceFile: pdfplumber.page
    functionUses: 3
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - stream
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 368
    functionName: pdfminer.converter.TextConverter.render_image
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_image
    - <builtin>.super
    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: 0
    functionLinenumber: 72
    functionName: pdfminer.pdfdevice.PDFDevice.end_figure
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - _
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 93
    functionName: pdfminer.converter.PDFLayoutAnalyzer.end_figure
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - <builtin>.type
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 8
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - xobjid_arg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1317
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.do_Do
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 0
    functionsReached:
    - pdfminer.converter.TextConverter.render_image
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.pdfinterp.PDFPageInterpreter.dup
    - pdfminer.pdftypes.stream_value
    - pdfminer.pdftypes.PDFStream.get
    - pdfminer.layout.LTFigure.__init__
    - pdfminer.pdftypes.dict_value
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.layout.LTLayoutContainer.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.subinterp
    - pdfminer.pdfdevice.PDFDevice.render_image
    - <builtin>.type
    - pdfminer.pdftypes.list_value
    - <builtin>.isinstance
    - logger.error
    - typing.cast.resolve
    - pdfminer.converter.PDFLayoutAnalyzer.begin_figure
    - pdfminer.pdfdevice.PDFDevice.begin_figure
    - <builtin>.super
    - pdfminer.utils.apply_matrix_pt
    - pdfminer.psparser.literal_name
    - LTItem.__init__
    - pdfminer.converter.PDFLayoutAnalyzer.end_figure
    - pdfminer.layout.LTComponent.set_bbox
    - <builtin>.min
    - pdfminer.pdftypes.resolve1
    - typing.cast
    - typing.cast.get
    - log.debug
    - <builtin>.max
    - interpreter.render_contents
    - pdfminer.pdfdevice.PDFDevice.end_figure
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_image
    - pdfminer.utils.mult_matrix
    - pdfminer.layout.LTContainer.__init__
    - interp.parent_stream_ids.update
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFInterpreterError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: interpreter.render_contents
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - page
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 14
    functionLinenumber: 1352
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.process_page
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 4
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - done.update
    - typing.cast.startswith
    - decoded_array.extend
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - pdfminer.layout.IndexAssigner.run
    - base64.a85decode
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.utils.Plane.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdfinterp.PDFResourceManager.get_font
    - PREDEFINED_COLORSPACE.get
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - pdfminer.layout.LTTextLineHorizontal.add
    - json.load
    - <builtin>.map
    - heapq.heappop
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - pdfminer.pdffont.PDFType3Font.__init__
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.layout.LTLayoutContainer.__init__
    - pdfminer.layout.LTLayoutContainer.group_textlines
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - subtables.append
    - <builtin>.type
    - descriptor.get
    - pdfminer.layout.LTExpandableContainer.__init__
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - r.append
    - <builtin>.ord
    - done.add
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - obj0.is_hoverlap
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - pdfminer.layout.LTLayoutContainer.group_objects
    - f.read
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - struct.unpack
    - code.decode
    - pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    - buf.extend
    - textbox.analyze
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - box.add
    - d.items
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.pdfinterp.PDFContentParser.__init__
    - cid2unicode.copy
    - logger.debug
    - d.decompress
    - pdfminer.layout.LTTextContainer.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources
    - contextlib.suppress
    - valid_streams.append
    - <builtin>.list
    - pdfminer.layout.LTContainer.__init__
    - pdfminer.layout.LTTextGroup.__init__
    - t.append
    - plane.add
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.pdfinterp.PDFTextState.__init__
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - members.extend
    - box.is_empty
    - os.environ.get
    - widths2.items
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - plane.remove
    - plane.find
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.casting._safe_float_quadruple
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - io.BytesIO.read
    - itertools.islice
    - char2gid.update
    - pdfminer.ascii85.ascii85decode
    - group.analyze
    - html.escape.encode
    - obj0.hdistance
    - pdfminer.pdftypes.decompress_corrupted
    - <builtin>.getattr
    - pdfminer.ccitt.get_bytes
    - pdfminer.pdfinterp.PDFPageInterpreter.execute
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.converter.PDFLayoutAnalyzer.begin_page
    - obj0.voverlap
    - f.append
    - pdfminer.ccitt.main.Parser.output_line
    - char2gid.items
    - pdfminer.utils.apply_matrix_pt
    - os.path.exists
    - binascii.unhexlify
    - <builtin>.hasattr
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - binascii.unhexlify.find
    - os.path.realpath
    - obj.is_empty
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    - <builtin>.id
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.cmapdb.PyCMap.__init__
    - typing.cast.copy
    - data.get
    - objs.difference
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - typing.cast.replace
    - pdfminer.pdffont.get_widths
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    - pdfminer.pdffont.PDFType1Font.__init__
    - pdfminer.utils.uniq
    - typing.cast.name.replace
    - end_re.sub
    - pdfminer.utils.fsplit
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdevice.TagExtractor.begin_page
    - obj0.hoverlap
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    - pdfminer.layout.LTFigure.analyze
    - pdfminer.pdfinterp.PDFPageInterpreter.init_state
    - gzip.open
    - pdfminer.layout.LTTextLineVertical.__init__
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.converter.PDFPageAggregator.receive_layout
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources.get_colorspace
    - pdfminer.utils.bbox2str
    - pdfminer.pdfdevice.TagExtractor.end_page
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.__init__
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - heapq.heappush
    - resolved_json_path.startswith
    - typing.cast.decode
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    - pdfminer.lzw.LZWDecoder.readbits
    - obj0.vdistance
    - pdfminer.pdftypes.list_value
    - typing.cast.split
    - os.path.join
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.layout.LTTextBox.__init__
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - hdrs.append
    - obj0.is_voverlap
    - pdfminer.layout.LTAnno.__init__
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.encodingdb.name2unicode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - LTItem.__init__
    - pdfminer.layout.IndexAssigner.__init__
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - pdfminer.cmapdb.CMapDB._load_data
    - typing.cast.write
    - <builtin>.next
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - <builtin>.tuple
    - pdfminer.psparser.PSStackParser.seek
    - plane.extend
    - pdfminer.pdffont.get_widths2
    - pdfminer.layout.LTLayoutContainer.group_textboxes
    - heapq.heapify
    - pdfminer.pdftypes.PDFStream.get_filters
    - os.path.dirname
    - logger.warning
    - pdfminer.cmapdb.CMap.__init__
    - HEXADECIMAL.match
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.layout.LTContainer.add
    - pdfminer.converter.PDFLayoutAnalyzer.end_page
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.str
    - PREDEFINED_COLORSPACE.copy
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdffont.PDFCIDFont.__init__
    - cid_registry.strip
    - pdfminer.pdfinterp.PDFPageInterpreter.push
    - pdfminer.utils.apply_matrix_norm
    - line.find_neighbors
    - pdfminer.pdftypes.stream_value
    - pdfminer.pdfinterp.PDFResourceManager.get_procset
    - <builtin>.abs
    - cmap_name_stream.get
    - parser.nextobject
    - <builtin>.float
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - log.warning
    - base64.a85decode.find
    - pdfminer.pdfdevice.TagExtractor._write
    - pdfminer.pdfcolor.PDFColorSpace.__init__
    - pdfminer.layout.LTPage.__init__
    - members.append
    - pdfminer.layout.LTLayoutContainer.analyze
    - pdfminer.pdfinterp.PDFPageInterpreter.render_contents
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.psparser.keyword_name
    - cls.encodings.get
    - <builtin>.set
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - boxes.pop
    - pdfminer.pdffont.TrueTypeFont.__init__
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - <builtin>.super
    - pdfminer.pdftypes.num_value
    - dists.append
    - pdfminer.psparser.literal_name
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.casting.safe_float
    - pdfminer.layout.LTTextLineHorizontal.__init__
    - textboxes.sort
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - <builtin>.chr
    - obj.analyze
    - io.BytesIO.seek
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.utils.paeth_predictor
    - LTText.__init__
    - raw.append
    - pdfminer.layout.LTTextLineVertical.add
    - pdfminer.pdfinterp.PDFTextState.reset
    - pdfminer.layout.LTTextLine.__init__
    - <builtin>.iter
    - <builtin>.max
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - cid_ordering.strip
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - page
    - ctm
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 76
    functionName: pdfminer.converter.PDFLayoutAnalyzer.begin_page
    functionSourceFile: pdfminer.converter
    functionUses: 5
    functionsReached:
    - pdfminer.layout.LTPage.__init__
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.utils.apply_matrix_pt
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.layout.LTLayoutContainer.__init__
    - LTItem.__init__
    - <builtin>.max
    - pdfminer.layout.LTComponent.set_bbox
    - <builtin>.abs
    - pdfminer.layout.LTContainer.__init__
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - page
    - ctm
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 292
    functionName: pdfminer.pdfdevice.TagExtractor.begin_page
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 5
    functionsReached:
    - pdfminer.utils.bbox2str
    - pdfminer.pdfdevice.TagExtractor._write
    - html.escape.encode
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f8798b42490>
    argNames:
    - self
    - resources
    - streams
    - ctm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 1367
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.render_contents
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 5
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - typing.cast.startswith
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdfinterp.PDFResourceManager.get_font
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - PREDEFINED_COLORSPACE.get
    - json.load
    - <builtin>.map
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - pdfminer.pdffont.PDFType3Font.__init__
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - subtables.append
    - <builtin>.type
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - r.append
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - struct.unpack
    - code.decode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.items
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.pdfinterp.PDFContentParser.__init__
    - cid2unicode.copy
    - logger.debug
    - d.decompress
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources
    - contextlib.suppress
    - valid_streams.append
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.pdfinterp.PDFTextState.__init__
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - os.environ.get
    - widths2.items
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - <builtin>.enumerate
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.casting._safe_float_quadruple
    - itertools.islice
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - io.BytesIO.read
    - char2gid.update
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - <builtin>.getattr
    - pdfminer.ccitt.get_bytes
    - pdfminer.pdfinterp.PDFPageInterpreter.execute
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - char2gid.items
    - os.path.exists
    - binascii.unhexlify
    - <builtin>.hasattr
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - binascii.unhexlify.find
    - os.path.realpath
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.cmapdb.PyCMap.__init__
    - typing.cast.copy
    - data.get
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - pdfminer.pdffont.get_widths
    - typing.cast.replace
    - pdfminer.pdffont.PDFType1Font.__init__
    - typing.cast.name.replace
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    - pdfminer.pdfinterp.PDFPageInterpreter.init_state
    - gzip.open
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources.get_colorspace
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - resolved_json_path.startswith
    - typing.cast.decode
    - pdfminer.lzw.LZWDecoder.readbits
    - typing.cast.split
    - pdfminer.pdftypes.list_value
    - os.path.join
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - hdrs.append
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.encodingdb.name2unicode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - pdfminer.cmapdb.CMapDB._load_data
    - <builtin>.next
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - typing.cast.get
    - <builtin>.tuple
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdffont.get_widths2
    - pdfminer.pdftypes.PDFStream.get_filters
    - os.path.dirname
    - logger.warning
    - pdfminer.cmapdb.CMap.__init__
    - HEXADECIMAL.match
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - PREDEFINED_COLORSPACE.copy
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdffont.PDFCIDFont.__init__
    - cid_registry.strip
    - pdfminer.pdfinterp.PDFPageInterpreter.push
    - pdfminer.utils.apply_matrix_norm
    - pdfminer.pdftypes.stream_value
    - pdfminer.pdfinterp.PDFResourceManager.get_procset
    - cmap_name_stream.get
    - <builtin>.abs
    - parser.nextobject
    - <builtin>.float
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - log.warning
    - base64.a85decode.find
    - pdfminer.pdfcolor.PDFColorSpace.__init__
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.psparser.keyword_name
    - cls.encodings.get
    - <builtin>.set
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - pdfminer.pdffont.TrueTypeFont.__init__
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.num_value
    - <builtin>.super
    - pdfminer.psparser.literal_name
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.casting.safe_float
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - <builtin>.chr
    - io.BytesIO.seek
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - <builtin>.max
    - raw.append
    - pdfminer.pdfinterp.PDFTextState.reset
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - cid_ordering.strip
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - page
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 299
    functionName: pdfminer.pdfdevice.TagExtractor.end_page
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 5
    functionsReached:
    - html.escape.encode
    - pdfminer.pdfdevice.TagExtractor._write
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - page
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 81
    functionName: pdfminer.converter.PDFLayoutAnalyzer.end_page
    functionSourceFile: pdfminer.converter
    functionUses: 5
    functionsReached:
    - done.update
    - members.extend
    - obj0.hoverlap
    - line.find_neighbors
    - pdfminer.layout.LTFigure.analyze
    - box.is_empty
    - pdfminer.layout.IndexAssigner.run
    - pdfminer.layout.LTTextLineVertical.__init__
    - pdfminer.utils.Plane.__init__
    - pdfminer.converter.PDFPageAggregator.receive_layout
    - pdfminer.layout.LTTextLineHorizontal.add
    - <builtin>.len
    - plane.remove
    - heapq.heappop
    - plane.find
    - pdfminer.layout.LTContainer.add
    - heapq.heappush
    - pdfminer.layout.LTLayoutContainer.analyze
    - members.append
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.layout.LTLayoutContainer.group_textlines
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    - pdfminer.layout.LTExpandableContainer.__init__
    - <builtin>.type
    - obj0.vdistance
    - group.analyze
    - obj0.hdistance
    - <builtin>.set
    - boxes.pop
    - <builtin>.str
    - <builtin>.range
    - done.add
    - <builtin>.isinstance
    - obj0.is_hoverlap
    - pdfminer.layout.LTTextBox.__init__
    - obj0.voverlap
    - <builtin>.super
    - pdfminer.layout.LTLayoutContainer.group_objects
    - obj0.is_voverlap
    - pdfminer.layout.LTAnno.__init__
    - f.append
    - dists.append
    - t.append
    - LTItem.__init__
    - pdfminer.layout.IndexAssigner.__init__
    - pdfminer.layout.LTTextLineHorizontal.__init__
    - textboxes.sort
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    - <builtin>.min
    - textbox.analyze
    - <builtin>.id
    - box.add
    - typing.cast
    - obj.is_empty
    - plane.extend
    - pdfminer.layout.LTLayoutContainer.group_textboxes
    - obj.analyze
    - objs.difference
    - pdfminer.layout.LTTextContainer.__init__
    - heapq.heapify
    - pdfminer.layout.LTTextLineVertical.add
    - <builtin>.max
    - LTText.__init__
    - pdfminer.layout.LTTextLine.__init__
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    - pdfminer.utils.uniq
    - <builtin>.list
    - pdfminer.layout.LTContainer.__init__
    - pdfminer.utils.fsplit
    - pdfminer.layout.LTTextGroup.__init__
    - plane.add
    - pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 10
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - streams
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1387
    functionName: pdfminer.pdfinterp.PDFPageInterpreter.execute
    functionSourceFile: pdfminer.pdfinterp
    functionUses: 6
    functionsReached:
    - pdfminer.pdfinterp.PDFPageInterpreter.push
    - pdfminer.pdftypes.stream_value
    - parser.nextobject
    - log.warning
    - <builtin>.len
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.psparser.keyword_name
    - pdfminer.pdftypes.PDFStream.__init__
    - <builtin>.type
    - <builtin>.getattr
    - <builtin>.isinstance
    - typing.cast.resolve
    - pdfminer.psparser.PSBaseParser.__init__
    - <builtin>.hasattr
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.pdftypes.resolve1
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdfinterp.PDFContentParser.__init__
    - log.debug
    - valid_streams.append
    - typing.cast.replace
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFInterpreterError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: valid_streams.append
    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: typing.cast.replace
    functionSourceFile: typing
    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: <builtin>.getattr
    functionSourceFile: <builtin>
    functionUses: 45
    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: pdfminer.pdfpage
    functionSourceFile: pdfminer.pdfpage
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - doc
    - pageid
    - attrs
    - label
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 49
    functionName: pdfminer.pdfpage.PDFPage.__init__
    functionSourceFile: pdfminer.pdfpage
    functionUses: 7
    functionsReached:
    - typing.cast.get
    - pdfminer.utils.parse_rect
    - typing.cast.resolve
    - pdfminer.pdfpage.PDFPage._parse_mediabox
    - pdfminer.pdftypes.int_value
    - pdfminer.pdfpage.PDFPage._parse_cropbox
    - pdfminer.pdfpage.PDFPage._parse_contents
    - <builtin>.float
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - log.warning
    - pdfminer.pdftypes.resolve1
    - logger.error
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 189
    functionName: pdfminer.pdfpage.PDFPage._parse_mediabox
    functionSourceFile: pdfminer.pdfpage
    functionUses: 8
    functionsReached:
    - pdfminer.utils.parse_rect
    - typing.cast.resolve
    - <builtin>.float
    - <builtin>.isinstance
    - log.warning
    - pdfminer.pdftypes.resolve1
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - mediabox
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 206
    functionName: pdfminer.pdfpage.PDFPage._parse_cropbox
    functionSourceFile: pdfminer.pdfpage
    functionUses: 8
    functionsReached:
    - pdfminer.utils.parse_rect
    - typing.cast.resolve
    - <builtin>.float
    - <builtin>.isinstance
    - log.warning
    - pdfminer.pdftypes.resolve1
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 218
    functionName: pdfminer.pdfpage.PDFPage._parse_contents
    functionSourceFile: pdfminer.pdfpage
    functionUses: 8
    functionsReached:
    - typing.cast.resolve
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    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: pdfminer.pdfpage.PDFPage.__repr__
    functionSourceFile: pdfminer.pdfpage
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d2baf0>
    argNames:
    - obj
    - parent
    - visited
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 92
    functionName: pdfminer.pdfpage.PDFPage.create_pages.depth_first_search
    functionSourceFile: pdfminer.pdfpage
    functionUses: 7
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - decoded_array.extend
    - pdfminer.pdftypes.PDFStream.get
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - object_properties.get
    - visited.add
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - <builtin>.list
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - start_re.sub
    - typing.cast.get_data
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.pdfpage.PDFPage.create_pages.depth_first_search
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - typing.cast.copy
    - pdfminer.pdftypes.decipher_all
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - pdfminer.lzw.LZWDecoder.__init__
    - <builtin>.len
    - objs.append
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - x.append
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - xref.get_pos
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - x.items
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.set
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: visited.add
    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: object_properties.get
    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: itertools.repeat
    functionSourceFile: itertools
    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: xref.get_objids
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f87990eda00>
    - <ast.Constant object at 0x7f87990ed760>
    - <ast.Constant object at 0x7f87990edb80>
    - <ast.Constant object at 0x7f87990ed3d0>
    - <ast.Constant object at 0x7f87990edfa0>
    argNames:
    - cls
    - fp
    - pagenos
    - maxpages
    - password
    - caching
    - check_extractable
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 153
    functionName: pdfminer.pdfpage.PDFPage.get_pages
    functionSourceFile: pdfminer.pdfpage
    functionUses: 3
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - obj.get
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdftypes.PDFStream.get
    - pdfminer.pdfparser.PDFParser.__init__
    - prev.isdigit
    - line.strip
    - pdfminer.pdftypes.dict_value
    - handler.is_extractable
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - parser.seek
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - xref.get_trailer
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - parser.nexttoken
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - object_properties.get
    - visited.add
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - d.decompress
    - logger.debug
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - <builtin>.list
    - param.get
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.pdfpage.PDFPage._parse_cropbox
    - handler.is_printable
    - start_re.sub
    - pdfminer.psparser.PSStackParser.__init__
    - <builtin>.enumerate
    - typing.cast.get_data
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - parser1.nextobject
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - parser.pop
    - pdfminer.pdfpage.PDFPage.create_pages.depth_first_search
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.pdfdocument.PDFDocument.__init__
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - binascii.unhexlify.find
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - pdfminer.psparser.PSStackParser.reset
    - typing.cast.copy
    - pdfminer.pdftypes.decipher_all
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - parser.revreadlines
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdocument.PDFDocument.find_xref
    - pdfminer.utils.apply_png_predictor
    - line_bytes.decode
    - typing.cast.items
    - pdfminer.pdfdocument.PDFXRef.__init__
    - pdfminer.lzw.LZWDecoder.__init__
    - parser.reset
    - <builtin>.len
    - objs.append
    - pdfminer.utils.parse_rect
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.pdfpage.PDFPage._parse_mediabox
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - x.append
    - pdfminer.pdfpage.PDFPage.__init__
    - pdfminer.data_structures.NumberTree.__init__
    - typing.cast
    - typing.cast.get
    - pdfminer.pdfdocument.PDFDocument.get_page_labels
    - pdfminer.psparser.PSStackParser.seek
    - xref.get_pos
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - x.items
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - xrefs.append
    - itertools.repeat
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - <builtin>.float
    - log.warning
    - base64.a85decode.find
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - <builtin>.set
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - parser.nextline
    - <builtin>.range
    - logger.error
    - pdfminer.lzw.LZWDecoder.feed
    - typing.cast.resolve
    - zlib.decompressobj
    - pdfminer.pdfdocument.PDFDocument._initialize_password
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.psparser.literal_name
    - pdfminer.pdfpage.PDFPage._parse_contents
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - pdfminer.pdftypes.PDFStream.decode
    - line_bytes.startswith
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - handler.is_modifiable
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.pdfpage.PDFPage.create_pages
    - pdfminer.utils.paeth_predictor
    - <builtin>.iter
    - xref.get_objids
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - PDFTextExtractionNotAllowed
    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: pdfminer.pdfdevice
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rsrcmgr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 35
    functionName: pdfminer.pdfdevice.PDFDevice.__init__
    functionSourceFile: pdfminer.pdfdevice
    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: 0
    functionLinenumber: 39
    functionName: pdfminer.pdfdevice.PDFDevice.__repr__
    functionSourceFile: pdfminer.pdfdevice
    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: 42
    functionName: pdfminer.pdfdevice.PDFDevice.__enter__
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 45
    functionName: pdfminer.pdfdevice.PDFDevice.__exit__
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 0
    functionsReached:
    - pdfminer.pdfdevice.PDFDevice.close
    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: pdfminer.pdfdevice.PDFDevice.close
    functionSourceFile: ''
    functionUses: 2
    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 0x7f8798a8cd30>
    argNames:
    - self
    - tag
    - props
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: pdfminer.pdfdevice.PDFDevice.begin_tag
    functionSourceFile: pdfminer.pdfdevice
    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: pdfminer.pdfdevice.PDFDevice.end_tag
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 0
    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 0x7f8798a8c910>
    argNames:
    - self
    - tag
    - props
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 60
    functionName: pdfminer.pdfdevice.PDFDevice.do_tag
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - page
    - ctm
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 63
    functionName: pdfminer.pdfdevice.PDFDevice.begin_page
    functionSourceFile: pdfminer.pdfdevice
    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
    - page
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 66
    functionName: pdfminer.pdfdevice.PDFDevice.end_page
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - graphicstate
    - stroke
    - fill
    - evenodd
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 75
    functionName: pdfminer.pdfdevice.PDFDevice.paint_path
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - textstate
    - seq
    - ncs
    - graphicstate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 88
    functionName: pdfminer.pdfdevice.PDFDevice.render_string
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 13
    argDefaultValues: []
    argNames:
    - self
    - seq
    - matrix
    - pos
    - font
    - fontsize
    - scaling
    - charspace
    - wordspace
    - rise
    - dxscale
    - ncs
    - graphicstate
    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
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 195
    functionName: pdfminer.pdfdevice.PDFTextDevice.render_string_vertical
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 5
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfminer.utils.translate_matrix
    - <builtin>.super
    - pdfminer.pdfdevice.PDFTextDevice.render_char
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_char
    - <builtin>.bytearray
    - logger.warning
    - <builtin>.isinstance
    - pdfminer.pdffont.PDFFont.decode
    - pdfminer.pdffont.PDFCIDFont.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 13
    argDefaultValues: []
    argNames:
    - self
    - seq
    - matrix
    - pos
    - font
    - fontsize
    - scaling
    - charspace
    - wordspace
    - rise
    - dxscale
    - ncs
    - graphicstate
    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
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 149
    functionName: pdfminer.pdfdevice.PDFTextDevice.render_string_horizontal
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 5
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - pdfminer.utils.translate_matrix
    - <builtin>.super
    - pdfminer.pdfdevice.PDFTextDevice.render_char
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_char
    - <builtin>.bytearray
    - logger.warning
    - <builtin>.isinstance
    - pdfminer.pdffont.PDFFont.decode
    - pdfminer.pdffont.PDFCIDFont.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues: []
    argNames:
    - self
    - matrix
    - font
    - fontsize
    - scaling
    - rise
    - cid
    - ncs
    - graphicstate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 241
    functionName: pdfminer.pdfdevice.PDFTextDevice.render_char
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 144
    functionName: pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_char
    functionSourceFile: pdfplumber.page
    functionUses: 7
    functionsReached:
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - <builtin>.super
    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 0x7f8798d30250>
    argNames:
    - self
    - rsrcmgr
    - outfp
    - codec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 256
    functionName: pdfminer.pdfdevice.TagExtractor.__init__
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 1
    functionsReached:
    - pdfminer.pdfdevice.PDFDevice.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 326
    functionName: pdfminer.pdfdevice.TagExtractor._write
    functionSourceFile: pdfminer.pdfdevice
    functionUses: 20
    functionsReached:
    - html.escape.encode
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: props.items
    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: html.escape.encode
    functionSourceFile: html
    functionUses: 47
    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: typing.cast.write
    functionSourceFile: typing
    functionUses: 59
    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: pdfminer.data_structures
    functionSourceFile: pdfminer.data_structures
    functionUses: 0
    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: 3
    functionLinenumber: 30
    functionName: pdfminer.data_structures.NumberTree._parse
    functionSourceFile: pdfminer.data_structures
    functionUses: 1
    functionsReached:
    - typing.cast.resolve
    - <builtin>.tuple
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - items.append
    - pdfminer.pdftypes.list_value
    - pdfminer.data_structures.NumberTree.__init__
    - pdfminer.data_structures.NumberTree._parse
    - r.append
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - <builtin>.len
    - logger.error
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: items.append
    functionSourceFile: <builtin>
    functionUses: 2
    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: 4
    functionLinenumber: 45
    functionName: pdfminer.data_structures.NumberTree.values
    functionSourceFile: pdfminer.data_structures
    functionUses: 0
    functionsReached:
    - <builtin>.all
    - typing.cast.resolve
    - <builtin>.tuple
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - values.sort
    - items.append
    - itertools.pairwise
    - pdfminer.data_structures.NumberTree.__init__
    - pdfminer.pdftypes.list_value
    - pdfminer.data_structures.NumberTree._parse
    - r.append
    - pdfminer.pdftypes.dict_value
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    - <builtin>.len
    - logger.error
    linkageType: pythonLinkage
    raised:
    - PDFSyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.pairwise
    functionSourceFile: itertools
    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: pdfminer.data_structures.NumberTree.values.<lambda1>
    functionSourceFile: pdfminer.data_structures
    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: values.sort
    functionSourceFile: <builtin>
    functionUses: 1
    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: pdfminer._saslprep
    functionSourceFile: pdfminer._saslprep
    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: stringprep.in_table_c12
    functionSourceFile: stringprep
    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: stringprep.in_table_b1
    functionSourceFile: stringprep
    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: unicodedata.ucd_3_2_0.normalize
    functionSourceFile: unicodedata
    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: stringprep.in_table_d1
    functionSourceFile: stringprep
    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: <builtin>.any
    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: pdfminer.runlength
    functionSourceFile: pdfminer.runlength
    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: decoded_array.extend
    functionSourceFile: <builtin>
    functionUses: 37
    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: pdfminer.ccitt
    functionSourceFile: pdfminer.ccitt
    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:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 25
    functionName: pdfminer.ccitt.get_bytes
    functionSourceFile: pdfminer.ccitt
    functionUses: 40
    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: 42
    functionName: pdfminer.ccitt.BitParser.__init__
    functionSourceFile: pdfminer.ccitt
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - root
    - v
    - bits
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 46
    functionName: pdfminer.ccitt.BitParser.add
    functionSourceFile: pdfminer.ccitt
    functionUses: 1
    functionsReached:
    - <builtin>.range
    - <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
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 59
    functionName: pdfminer.ccitt.BitParser.feedbytes
    functionSourceFile: pdfminer.ccitt
    functionUses: 0
    functionsReached:
    - arr.tobytes
    - <builtin>.int
    - bits.startswith
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - <builtin>.len
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.ccitt.get_bytes
    - <builtin>.range
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - <builtin>.min
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - <builtin>.max
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - x
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 64
    functionName: pdfminer.ccitt.BitParser._parse_bit
    functionSourceFile: pdfminer.ccitt
    functionUses: 40
    functionsReached:
    - arr.tobytes
    - <builtin>.int
    - bits.startswith
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - <builtin>.len
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - <builtin>.range
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - <builtin>.min
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - <builtin>.max
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - mode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 354
    functionName: pdfminer.ccitt.CCITTG4Parser._parse_mode
    functionSourceFile: pdfminer.ccitt
    functionUses: 41
    functionsReached:
    - arr.tobytes
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - <builtin>.range
    - <builtin>.max
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - <builtin>.min
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bits
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 406
    functionName: pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    functionSourceFile: pdfminer.ccitt
    functionUses: 41
    functionsReached:
    - arr.tobytes
    - <builtin>.int
    - bits.startswith
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - <builtin>.len
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - n
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 391
    functionName: pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    functionSourceFile: pdfminer.ccitt
    functionUses: 41
    functionsReached:
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - arr.tobytes
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - <builtin>.range
    - <builtin>.len
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - n
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 378
    functionName: pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    functionSourceFile: ''
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 239
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: pdfminer.ccitt.CCITTG4Parser
    functionSourceFile: pdfminer.ccitt
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - <builtin>.len
    - pdfminer.ccitt.BitParser.add
    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 0x7f8798db1cd0>
    argNames:
    - self
    - width
    - bytealign
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 337
    functionName: pdfminer.ccitt.CCITTG4Parser.__init__
    functionSourceFile: pdfminer.ccitt
    functionUses: 40
    functionsReached:
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - array.array
    - pdfminer.ccitt.BitParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.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: 2
    functionLinenumber: 435
    functionName: pdfminer.ccitt.CCITTG4Parser.reset
    functionSourceFile: pdfminer.ccitt
    functionUses: 41
    functionsReached:
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - array.array
    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: 5
    functionLinenumber: 343
    functionName: pdfminer.ccitt.CCITTG4Parser.feedbytes
    functionSourceFile: pdfminer.ccitt
    functionUses: 38
    functionsReached:
    - arr.tobytes
    - <builtin>.int
    - bits.startswith
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - <builtin>.len
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.ccitt.get_bytes
    - <builtin>.range
    - <builtin>.isinstance
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.main.Parser.output_line
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - <builtin>.min
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - <builtin>.max
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 483
    functionName: pdfminer.ccitt.CCITTG4Parser._do_pass
    functionSourceFile: pdfminer.ccitt
    functionUses: 42
    functionsReached:
    - <builtin>.range
    - <builtin>.len
    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: 2
    functionLinenumber: 451
    functionName: pdfminer.ccitt.CCITTG4Parser._flush_line
    functionSourceFile: pdfminer.ccitt
    functionUses: 45
    functionsReached:
    - arr.tobytes
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - <builtin>.len
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dx
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 459
    functionName: pdfminer.ccitt.CCITTG4Parser._do_vertical
    functionSourceFile: pdfminer.ccitt
    functionUses: 42
    functionsReached:
    - <builtin>.range
    - <builtin>.min
    - <builtin>.len
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - n1
    - n2
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 509
    functionName: pdfminer.ccitt.CCITTG4Parser._do_horizontal
    functionSourceFile: pdfminer.ccitt
    functionUses: 42
    functionsReached:
    - <builtin>.range
    - <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: bits.startswith
    functionSourceFile: <builtin>
    functionUses: 42
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bits
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 525
    functionName: pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    functionSourceFile: pdfminer.ccitt
    functionUses: 42
    functionsReached:
    - arr.tobytes
    - <builtin>.int
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - <builtin>.len
    - <builtin>.enumerate
    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: 418
    functionName: pdfminer.ccitt.CCITTG4Parser._get_bits
    functionSourceFile: pdfminer.ccitt
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 421
    functionName: pdfminer.ccitt.CCITTG4Parser._get_refline
    functionSourceFile: pdfminer.ccitt
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <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: array.array
    functionSourceFile: array
    functionUses: 52
    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: 445
    functionName: pdfminer.ccitt.CCITTG4Parser._reset_line
    functionSourceFile: pdfminer.ccitt
    functionUses: 50
    functionsReached:
    - array.array
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - y
    - bits
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 442
    functionName: pdfminer.ccitt.CCITTG4Parser.output_line
    functionSourceFile: pdfminer.ccitt
    functionUses: 0
    functionsReached:
    - <builtin>.print
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - y
    - bits
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 546
    functionName: pdfminer.ccitt.CCITTFaxDecoder.output_line
    functionSourceFile: pdfminer.ccitt
    functionUses: 46
    functionsReached:
    - arr.tobytes
    - array.array
    - <builtin>.len
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - y
    - bits
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 584
    functionName: pdfminer.ccitt.main.Parser.output_line
    functionSourceFile: pdfminer.ccitt
    functionUses: 46
    functionsReached:
    - <builtin>.enumerate
    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 0x7f8798ceaaf0>
    - <ast.Constant object at 0x7f8798cea610>
    argNames:
    - self
    - width
    - bytealign
    - reversed
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 533
    functionName: pdfminer.ccitt.CCITTFaxDecoder.__init__
    functionSourceFile: pdfminer.ccitt
    functionUses: 37
    functionsReached:
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    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: 543
    functionName: pdfminer.ccitt.CCITTFaxDecoder.close
    functionSourceFile: pdfminer.ccitt
    functionUses: 37
    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: arr.tobytes
    functionSourceFile: <builtin>
    functionUses: 47
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - argv
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 570
    functionName: pdfminer.ccitt.main
    functionSourceFile: pdfminer.ccitt
    functionUses: 0
    functionsReached:
    - path.split
    - arr.tobytes
    - pygame.image.save
    - <builtin>.int
    - bits.startswith
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - <builtin>.len
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.ccitt.get_bytes
    - <builtin>.range
    - <builtin>.isinstance
    - pygame.Surface
    - pdfminer.ccitt.main.Parser.close
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.main.Parser.output_line
    - fp.read
    - array.array
    - pdfminer.ccitt.main.Parser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - <builtin>.min
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - <builtin>.open
    - <builtin>.max
    - unittest.main
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: unittest.main
    functionSourceFile: unittest
    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 0x7f8798e04610>
    argNames:
    - self
    - width
    - bytealign
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 578
    functionName: pdfminer.ccitt.main.Parser.__init__
    functionSourceFile: pdfminer.ccitt
    functionUses: 1
    functionsReached:
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - pygame.Surface
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pygame.Surface
    functionSourceFile: pygame
    functionUses: 2
    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: 591
    functionName: pdfminer.ccitt.main.Parser.close
    functionSourceFile: pdfminer.ccitt
    functionUses: 1
    functionsReached:
    - pygame.image.save
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pygame.image.save
    functionSourceFile: pygame
    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: path.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: fp.read
    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: pdfminer.lzw
    functionSourceFile: pdfminer.lzw
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 16
    functionName: pdfminer.lzw.LZWDecoder.__init__
    functionSourceFile: pdfminer.lzw
    functionUses: 37
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bits
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: pdfminer.lzw.LZWDecoder.readbits
    functionSourceFile: pdfminer.lzw
    functionUses: 38
    functionsReached:
    - <builtin>.ord
    - io.BytesIO.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 4
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: pdfminer.lzw.LZWDecoder.feed
    functionSourceFile: pdfminer.lzw
    functionUses: 38
    functionsReached:
    - <builtin>.range
    - <builtin>.len
    - typing.cast
    - <builtin>.bytes
    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: 81
    functionName: pdfminer.lzw.LZWDecoder.run
    functionSourceFile: pdfminer.lzw
    functionUses: 37
    functionsReached:
    - pdfminer.lzw.LZWDecoder.feed
    - logger.debug
    - io.BytesIO.read
    - pdfminer.lzw.LZWDecoder.readbits
    - <builtin>.bytes
    - <builtin>.ord
    - <builtin>.range
    - <builtin>.len
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logger.debug
    functionSourceFile: <builtin>
    functionUses: 38
    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: pdfplumber.container
    functionSourceFile: pdfplumber.container
    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: 16
    functionName: pdfplumber.container.Container.pages
    functionSourceFile: pdfplumber.container
    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: 20
    functionName: pdfplumber.container.Container.objects
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached: []
    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 0x7f87990432b0>
    argNames:
    - self
    - object_types
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 23
    functionName: pdfplumber.container.Container.to_dict
    functionSourceFile: pdfplumber.container
    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>.delattr
    functionSourceFile: <builtin>
    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: 35
    functionName: pdfplumber.container.Container.rects
    functionSourceFile: pdfplumber.container
    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: 39
    functionName: pdfplumber.container.Container.lines
    functionSourceFile: pdfplumber.container
    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: 43
    functionName: pdfplumber.container.Container.curves
    functionSourceFile: pdfplumber.container
    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: 47
    functionName: pdfplumber.container.Container.images
    functionSourceFile: pdfplumber.container
    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: 51
    functionName: pdfplumber.container.Container.chars
    functionSourceFile: pdfplumber.container
    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: 55
    functionName: pdfplumber.container.Container.textboxverticals
    functionSourceFile: pdfplumber.container
    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: 59
    functionName: pdfplumber.container.Container.textboxhorizontals
    functionSourceFile: pdfplumber.container
    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: 63
    functionName: pdfplumber.container.Container.textlineverticals
    functionSourceFile: pdfplumber.container
    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: 67
    functionName: pdfplumber.container.Container.textlinehorizontals
    functionSourceFile: pdfplumber.container
    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: 1
    functionLinenumber: 71
    functionName: pdfplumber.container.Container.rect_edges
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.rect_to_edges
    - <builtin>.hasattr
    - <builtin>.list
    - itertools.chain
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.utils.rect_to_edges
    functionSourceFile: ''
    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: 1
    functionLinenumber: 79
    functionName: pdfplumber.container.Container.curve_edges
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - pdfplumber.utils.curve_to_edges
    - <builtin>.hasattr
    - itertools.chain
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.utils.curve_to_edges
    functionSourceFile: ''
    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: 1
    functionLinenumber: 87
    functionName: pdfplumber.container.Container.edges
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.hasattr
    - <builtin>.map
    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: 95
    functionName: pdfplumber.container.Container.horizontal_edges
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.filter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: pdfplumber.container.Container.horizontal_edges.test
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached:
    - <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>.filter
    functionSourceFile: <builtin>
    functionUses: 24
    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: 102
    functionName: pdfplumber.container.Container.vertical_edges
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.filter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: pdfplumber.container.Container.vertical_edges.test
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f8798c91280>
    - <ast.Constant object at 0x7f8798c91220>
    - <ast.Constant object at 0x7f8798c91b50>
    - <ast.Constant object at 0x7f8798c916d0>
    - <ast.Constant object at 0x7f8798c91b20>
    - <ast.Constant object at 0x7f8798c91790>
    argNames:
    - self
    - stream
    - object_types
    - include_attrs
    - exclude_attrs
    - precision
    - indent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 108
    functionName: pdfplumber.container.Container.to_json
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached:
    - json.dump
    - pdfplumber.pdf.PDF.to_dict
    - page.to_dict
    - <builtin>.type
    - pdfplumber.convert.Serializer.serialize
    - <builtin>.set
    - <builtin>.len
    - <builtin>.getattr
    - pdfplumber.convert.get_attr_filter
    - <builtin>.list
    - <builtin>.str
    - pdfplumber.convert.Serializer.__init__
    - json.dumps
    - pdfplumber.page.Page.to_dict
    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 0x7f8798fa18b0>
    argNames:
    - self
    - object_types
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 617
    functionName: pdfplumber.page.Page.to_dict
    functionSourceFile: pdfplumber.page
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798c589a0>
    - <ast.Constant object at 0x7f8798c586d0>
    - <ast.Constant object at 0x7f8798c58460>
    argNames:
    - self
    - precision
    - include_attrs
    - exclude_attrs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 63
    functionName: pdfplumber.convert.Serializer.__init__
    functionSourceFile: pdfplumber.convert
    functionUses: 2
    functionsReached:
    - <builtin>.set
    - <builtin>.len
    - pdfplumber.convert.get_attr_filter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 75
    functionName: pdfplumber.convert.Serializer.serialize
    functionSourceFile: pdfplumber.convert
    functionUses: 5
    functionsReached:
    - <builtin>.type
    - <builtin>.getattr
    - <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: json.dumps
    functionSourceFile: json
    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: json.dump
    functionSourceFile: json
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f879850be80>
    - <ast.Constant object at 0x7f879850bac0>
    - <ast.Constant object at 0x7f879850ba30>
    - <ast.Constant object at 0x7f879850b640>
    - <ast.Constant object at 0x7f879850b550>
    argNames:
    - self
    - stream
    - object_types
    - precision
    - include_attrs
    - exclude_attrs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 132
    functionName: pdfplumber.container.Container.to_csv
    functionSourceFile: pdfplumber.container
    functionUses: 0
    functionsReached:
    - io.StringIO
    - io.StringIO.read
    - <builtin>.filter
    - <builtin>.sorted
    - w.writeheader
    - fields.union
    - pdfplumber.convert.get_attr_filter
    - w.writerows
    - <builtin>.type
    - io.StringIO.seek
    - <builtin>.set
    - pdfplumber.convert.Serializer.serialize
    - <builtin>.len
    - <builtin>.getattr
    - csv.DictWriter
    - <builtin>.list
    - pdfplumber.convert.Serializer.__init__
    - <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: io.StringIO
    functionSourceFile: io
    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: fields.union
    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: csv.DictWriter
    functionSourceFile: csv
    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: w.writeheader
    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: w.writerows
    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: io.StringIO.seek
    functionSourceFile: io
    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: io.StringIO.read
    functionSourceFile: io
    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: pdfplumber.convert
    functionSourceFile: pdfplumber.convert
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f879900ae20>
    - <ast.Constant object at 0x7f879900ab20>
    argNames:
    - include_attrs
    - exclude_attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: pdfplumber.convert.get_attr_filter
    functionSourceFile: pdfplumber.convert
    functionUses: 3
    functionsReached:
    - <builtin>.set
    - <builtin>.len
    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: pdfplumber.convert.get_attr_filter.<lambda1>
    functionSourceFile: pdfplumber.convert
    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: pdfplumber.convert.get_attr_filter.<lambda2>
    functionSourceFile: pdfplumber.convert
    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: pdfplumber.convert.get_attr_filter.<lambda3>
    functionSourceFile: pdfplumber.convert
    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:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: pdfplumber.convert.to_b64
    functionSourceFile: pdfplumber.convert
    functionUses: 1
    functionsReached:
    - base64.b64encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base64.b64encode
    functionSourceFile: base64
    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
    - x
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 94
    functionName: pdfplumber.convert.Serializer.do_float
    functionSourceFile: pdfplumber.convert
    functionUses: 0
    functionsReached:
    - <builtin>.round
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.round
    functionSourceFile: <builtin>
    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
    - x
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 97
    functionName: pdfplumber.convert.Serializer.do_bool
    functionSourceFile: pdfplumber.convert
    functionUses: 0
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 100
    functionName: pdfplumber.convert.Serializer.do_list
    functionSourceFile: pdfplumber.convert
    functionUses: 0
    functionsReached:
    - <builtin>.type
    - pdfplumber.convert.Serializer.serialize
    - <builtin>.getattr
    - <builtin>.list
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 103
    functionName: pdfplumber.convert.Serializer.do_tuple
    functionSourceFile: pdfplumber.convert
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    - <builtin>.type
    - pdfplumber.convert.Serializer.serialize
    - <builtin>.getattr
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 106
    functionName: pdfplumber.convert.Serializer.do_dict
    functionSourceFile: pdfplumber.convert
    functionUses: 0
    functionsReached:
    - pdfplumber.convert.get_attr_filter.<lambda2>
    - obj.keys
    - pdfplumber.convert.get_attr_filter.<lambda1>
    - pdfplumber.convert.get_attr_filter.<lambda3>
    - <builtin>.type
    - pdfplumber.convert.Serializer.serialize
    - obj.items
    - <builtin>.getattr
    - <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: obj.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: obj.items
    functionSourceFile: <builtin>
    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
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 112
    functionName: pdfplumber.convert.Serializer.do_PDFStream
    functionSourceFile: pdfplumber.convert
    functionUses: 0
    functionsReached:
    - pdfplumber.convert.to_b64
    - base64.b64encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 115
    functionName: pdfplumber.convert.Serializer.do_PSLiteral
    functionSourceFile: pdfplumber.convert
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - <builtin>.ord
    - typing.cast.name.startswith
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 10
    functionName: pdfplumber.utils.pdfinternals.decode_text
    functionSourceFile: pdfplumber.utils.pdfinternals
    functionUses: 28
    functionsReached:
    - typing.cast.startswith
    - <builtin>.ord
    - typing.cast.name.startswith
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 118
    functionName: pdfplumber.convert.Serializer.do_bytes
    functionSourceFile: pdfplumber.convert
    functionUses: 0
    functionsReached:
    - obj.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: obj.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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pdfplumber.page
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - fontname
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 92
    functionName: pdfplumber.page.fix_fontname_bytes
    functionSourceFile: pdfplumber.page
    functionUses: 4
    functionsReached:
    - fontname.index
    - CP936_FONTNAMES.get
    - <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: fontname.index
    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: CP936_FONTNAMES.get
    functionSourceFile: <builtin>
    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:
    - kwargs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: pdfplumber.page.tuplify_list_kwargs
    functionSourceFile: pdfplumber.page
    functionUses: 3
    functionsReached:
    - <builtin>.tuple
    - <builtin>.isinstance
    - kwargs.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: kwargs.items
    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: 0
    functionLinenumber: 130
    functionName: pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    functionSourceFile: pdfplumber.page
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d4e520>
    argNames:
    - box_raw
    - rotation
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 161
    functionName: pdfplumber.page._normalize_box
    functionSourceFile: pdfplumber.page
    functionUses: 4
    functionsReached:
    - <builtin>.all
    - <builtin>.isinstance
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised:
    - MalformedPDFException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - box_raw
    - mb_height
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 181
    functionName: pdfplumber.page._invert_box
    functionSourceFile: pdfplumber.page
    functionUses: 4
    functionsReached: []
    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 0x7f8798c9a070>
    argNames:
    - key
    - default
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 204
    functionName: pdfplumber.page.Page.__init__.get_attr
    functionSourceFile: pdfplumber.page
    functionUses: 2
    functionsReached:
    - pdfplumber.utils.pdfinternals.resolve_all
    - d.get
    - pdfplumber.utils.pdfinternals.get_dict_type
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - <builtin>.type
    - x.items
    - page_obj.attrs.get
    - <builtin>.ord
    - x.resolve
    - typing.cast.name.startswith
    - <builtin>.isinstance
    - <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: page_obj.attrs.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 66
    functionName: pdfplumber.utils.pdfinternals.resolve_all
    functionSourceFile: pdfplumber.utils.pdfinternals
    functionUses: 5
    functionsReached:
    - pdfplumber.utils.pdfinternals.resolve_all
    - d.get
    - pdfplumber.utils.pdfinternals.get_dict_type
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - <builtin>.type
    - x.items
    - <builtin>.ord
    - x.resolve
    - typing.cast.name.startswith
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - MalformedPDFException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: box_name.lower
    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: 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: functools.lru_cache
    functionSourceFile: functools
    functionUses: 3
    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: 2
    functionLinenumber: 235
    functionName: pdfplumber.page.Page.close
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.container.Container.flush_cache
    - <builtin>.delattr
    - <builtin>.hasattr
    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: 240
    functionName: pdfplumber.page.Page.width
    functionSourceFile: pdfplumber.page
    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: 244
    functionName: pdfplumber.page.Page.height
    functionSourceFile: pdfplumber.page
    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: 5
    functionLinenumber: 248
    functionName: pdfplumber.page.Page.structure_tree
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - attr_obj_list.extend
    - typing.cast.items
    - pdfminer.pdftypes.dict_value
    - pdfplumber.structure.PDFStructTree._make_attributes
    - collections.deque
    - collections.deque.append
    - next_elements.append
    - pdfminer.pdftypes.list_value
    - <builtin>.repr
    - <builtin>.ord
    - seen.get
    - <builtin>.isinstance
    - logger.error
    - typing.cast.resolve
    - attr_obj_list.append
    - element.mcids.append
    - pdfplumber.structure.PDFStructTree.__init__
    - pdfplumber.structure.PDFStructTree.on_parsed_page
    - pdfplumber.structure.PDFStructTree._resolve_children
    - pdfplumber.structure.PDFStructTree._parse_parent_tree
    - <builtin>.next
    - typing.cast.name.startswith
    - pdfminer.data_structures.NumberTree.__init__
    - pdfminer.pdftypes.resolve1
    - pdfplumber.structure.PDFStructTree._make_element
    - elem.to_dict
    - typing.cast.get
    - collections.deque.popleft
    - pdfplumber.structure.PDFStructTree._parse_struct_tree
    - attr_objs.append
    - pdfplumber.structure.PDFStructTree._parse_struct_tree.prune
    - element.children.append
    - logger.warning
    - parsed_root.append
    - <builtin>.str
    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: 15
    functionLinenumber: 256
    functionName: pdfplumber.page.Page.layout
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfminer.casting.safe_rect_list
    - done.update
    - typing.cast.startswith
    - decoded_array.extend
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - base64.a85decode
    - pdfminer.layout.IndexAssigner.run
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.utils.Plane.__init__
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdfinterp.PDFResourceManager.get_font
    - pdfminer.converter.PDFLayoutAnalyzer.__init__
    - PREDEFINED_COLORSPACE.get
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - json.load
    - <builtin>.map
    - pdfminer.layout.LTTextLineHorizontal.add
    - heapq.heappop
    - pdfminer.pdftypes.int_value
    - pdfminer.utils.choplist
    - pdfminer.pdffont.PDFType3Font.__init__
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.layout.LTLayoutContainer.__init__
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - subtables.append
    - <builtin>.type
    - descriptor.get
    - pdfminer.layout.LTLayoutContainer.group_textlines
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.layout.LTExpandableContainer.__init__
    - r.append
    - <builtin>.ord
    - done.add
    - <builtin>.isinstance
    - pdfminer.cmapdb.CMapParser.run
    - obj0.is_hoverlap
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - pdfminer.layout.LTLayoutContainer.group_objects
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.cmapdb.CMapParser.__init__
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - struct.unpack
    - code.decode
    - buf.extend
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - textbox.analyze
    - box.add
    - pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    - d.items
    - pdfminer.psparser.PSBaseParser.seek
    - pdfminer.pdfinterp.PDFContentParser.__init__
    - cid2unicode.copy
    - logger.debug
    - d.decompress
    - pdfminer.layout.LTTextContainer.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources
    - contextlib.suppress
    - pdfminer.converter.PDFPageAggregator.get_result
    - pdfminer.pdfinterp.PDFPageInterpreter.__init__
    - valid_streams.append
    - <builtin>.list
    - pdfminer.layout.LTContainer.__init__
    - pdfminer.layout.LTTextGroup.__init__
    - t.append
    - plane.add
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.pdfinterp.PDFTextState.__init__
    - pdfminer.cmapdb.UnicodeMap.__init__
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - members.extend
    - box.is_empty
    - os.environ.get
    - widths2.items
    - pdfminer.pdffont.PDFFont._parse_bbox
    - start_re.sub
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.pdfdevice.PDFDevice.__init__
    - plane.remove
    - plane.find
    - pdfminer.layout.LTComponent.__init__
    - pdfminer.casting._safe_float_quadruple
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - io.BytesIO.read
    - itertools.islice
    - char2gid.update
    - pdfminer.ascii85.ascii85decode
    - group.analyze
    - html.escape.encode
    - pdfminer.pdftypes.decompress_corrupted
    - obj0.hdistance
    - <builtin>.getattr
    - pdfminer.ccitt.get_bytes
    - pdfminer.pdfinterp.PDFPageInterpreter.execute
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.converter.PDFLayoutAnalyzer.begin_page
    - obj0.voverlap
    - f.append
    - pdfminer.ccitt.main.Parser.output_line
    - char2gid.items
    - pdfminer.utils.apply_matrix_pt
    - os.path.exists
    - binascii.unhexlify
    - <builtin>.hasattr
    - pdfminer.converter.PDFPageAggregator.__init__
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - binascii.unhexlify.find
    - os.path.realpath
    - obj.is_empty
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.id
    - pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.cmapdb.PyCMap.__init__
    - typing.cast.copy
    - objs.difference
    - data.get
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - typing.cast.replace
    - pdfminer.pdffont.get_widths
    - pdfminer.pdffont.PDFType1Font.__init__
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    - pdfminer.utils.uniq
    - typing.cast.name.replace
    - end_re.sub
    - pdfminer.utils.fsplit
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - arr.tobytes
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdevice.TagExtractor.begin_page
    - obj0.hoverlap
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    - pdfminer.layout.LTFigure.analyze
    - pdfminer.pdfinterp.PDFPageInterpreter.init_state
    - gzip.open
    - pdfminer.layout.LTTextLineVertical.__init__
    - pdfminer.utils.apply_png_predictor
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.converter.PDFPageAggregator.receive_layout
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources.get_colorspace
    - pdfminer.utils.bbox2str
    - pdfminer.pdfdevice.TagExtractor.end_page
    - <builtin>.len
    - pdfminer.lzw.LZWDecoder.__init__
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - heapq.heappush
    - resolved_json_path.startswith
    - typing.cast.decode
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    - pdfminer.lzw.LZWDecoder.readbits
    - typing.cast.split
    - pdfminer.pdftypes.list_value
    - obj0.vdistance
    - os.path.join
    - pdfminer.lzw.LZWDecoder.run
    - io.BytesIO.tell
    - pdfminer.layout.LTTextBox.__init__
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - hdrs.append
    - obj0.is_voverlap
    - pdfminer.layout.LTAnno.__init__
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.encodingdb.name2unicode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - LTItem.__init__
    - pdfminer.pdftypes.resolve_all
    - pdfminer.utils.apply_tiff_predictor
    - pdfminer.layout.IndexAssigner.__init__
    - pdfminer.cmapdb.CMapDB._load_data
    - typing.cast.write
    - <builtin>.next
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast
    - pdfminer.pdfinterp.PDFPageInterpreter.process_page
    - <builtin>.tuple
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - plane.extend
    - pdfminer.pdffont.get_widths2
    - pdfminer.layout.LTLayoutContainer.group_textboxes
    - heapq.heapify
    - pdfminer.pdftypes.PDFStream.get_filters
    - os.path.dirname
    - logger.warning
    - pdfminer.cmapdb.CMap.__init__
    - HEXADECIMAL.match
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.layout.LTContainer.add
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - pdfminer.converter.PDFLayoutAnalyzer.end_page
    - PREDEFINED_COLORSPACE.copy
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdffont.PDFCIDFont.__init__
    - cid_registry.strip
    - pdfminer.pdfinterp.PDFPageInterpreter.push
    - pdfminer.utils.apply_matrix_norm
    - line.find_neighbors
    - pdfminer.pdftypes.stream_value
    - pdfminer.pdfinterp.PDFResourceManager.get_procset
    - <builtin>.abs
    - cmap_name_stream.get
    - parser.nextobject
    - <builtin>.float
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - log.warning
    - base64.a85decode.find
    - pdfminer.pdfdevice.TagExtractor._write
    - pdfminer.pdfcolor.PDFColorSpace.__init__
    - pdfminer.layout.LTPage.__init__
    - members.append
    - pdfminer.layout.LTLayoutContainer.analyze
    - pdfminer.pdfinterp.PDFPageInterpreter.render_contents
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.psparser.keyword_name
    - cls.encodings.get
    - <builtin>.set
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - boxes.pop
    - pdfminer.pdffont.TrueTypeFont.__init__
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdftypes.num_value
    - <builtin>.super
    - dists.append
    - pdfminer.psparser.literal_name
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.casting.safe_float
    - pdfminer.layout.LTTextLineHorizontal.__init__
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - pdfminer.pdftypes.PDFStream.decode
    - textboxes.sort
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - <builtin>.chr
    - obj.analyze
    - pdfminer.layout.LTTextLineVertical.add
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - io.BytesIO.seek
    - LTText.__init__
    - raw.append
    - pdfminer.utils.paeth_predictor
    - pdfminer.pdfinterp.PDFTextState.reset
    - pdfminer.layout.LTTextLine.__init__
    - <builtin>.iter
    - <builtin>.max
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - cid_ordering.strip
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    linkageType: pythonLinkage
    raised:
    - PdfminerException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798b9e430>
    - <ast.Constant object at 0x7f8798b9e0d0>
    argNames:
    - self
    - rsrcmgr
    - pageno
    - laparams
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 275
    functionName: pdfminer.converter.PDFPageAggregator.__init__
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - pdfminer.converter.PDFLayoutAnalyzer.__init__
    - pdfminer.pdfdevice.PDFDevice.__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: 287
    functionName: pdfminer.converter.PDFPageAggregator.get_result
    functionSourceFile: ''
    functionUses: 2
    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: 4
    functionLinenumber: 273
    functionName: pdfplumber.page.Page.annots
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - x.resolve
    - <builtin>.map
    - pdfplumber.utils.geometry.within_bbox
    - pdfplumber.utils.pdfinternals.resolve_all
    - d.get
    - pdfplumber.utils.pdfinternals.get_dict_type
    - operator.itemgetter
    - <builtin>.type
    - pdfplumber.utils.geometry.obj_to_bbox
    - pdfplumber.utils.geometry.get_bbox_overlap
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfplumber.page.CroppedPage.__init__._crop_fn
    - <builtin>.min
    - typing.cast.name.startswith
    - pdfplumber.utils.geometry.outside_bbox
    - <builtin>.max
    - x.items
    - <builtin>.list
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - pt
    - r
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 274
    functionName: pdfplumber.page.Page.annots.rotate_point
    functionSourceFile: pdfplumber.page
    functionUses: 1
    functionsReached:
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - annot
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 282
    functionName: pdfplumber.page.Page.annots.parse
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - <builtin>.all
    - pdfplumber.page._normalize_box
    - <builtin>.sorted
    - v.decode
    - warnings.warn
    - extras.items
    - pdfplumber.page._invert_box
    - parsed.update
    - pdfplumber.page.Page.annots.rotate_point
    - annot.get
    - a.get
    - <builtin>.range
    - <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: annot.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: a.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: extras.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: v.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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parsed.update
    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:
    - objs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 694
    functionName: pdfplumber.page.CroppedPage.__init__._crop_fn
    functionSourceFile: pdfplumber.page
    functionUses: 3
    functionsReached:
    - operator.itemgetter
    - pdfplumber.utils.geometry.outside_bbox
    - <builtin>.max
    - pdfplumber.utils.geometry.obj_to_bbox
    - pdfplumber.utils.geometry.get_bbox_overlap
    - <builtin>.min
    - pdfplumber.utils.geometry.within_bbox
    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: 339
    functionName: pdfplumber.page.Page.hyperlinks
    functionSourceFile: pdfplumber.page
    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: 6
    functionLinenumber: 343
    functionName: pdfplumber.page.Page.objects
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - pdfplumber.page.Page.iter_layout_objects
    - pdfplumber.utils.pdfinternals.resolve_and_decode
    - <builtin>.map
    - unicodedata.normalize
    - obj.__dict__.items
    - CP936_FONTNAMES.get
    - <builtin>.getattr
    - <builtin>.ord
    - fontname.index
    - <builtin>.isinstance
    - re.sub
    - obj.resolve
    - <builtin>.super
    - <builtin>.hasattr
    - pdfplumber.page.Page.filter
    - obj.items
    - typing.cast.name.startswith
    - pdfplumber.page.Page.process_object
    - pdfplumber.page.FilteredPage.__init__
    - obj.get_text
    - <builtin>.list
    - pdfplumber.page.Page.parse_objects
    - pdfplumber.page.fix_fontname_bytes
    - <builtin>.str
    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: 5
    functionLinenumber: 441
    functionName: pdfplumber.page.Page.parse_objects
    functionSourceFile: pdfplumber.page
    functionUses: 1
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - pdfplumber.page.Page.iter_layout_objects
    - pdfplumber.utils.pdfinternals.resolve_and_decode
    - <builtin>.map
    - unicodedata.normalize
    - obj.__dict__.items
    - CP936_FONTNAMES.get
    - <builtin>.getattr
    - <builtin>.ord
    - fontname.index
    - <builtin>.isinstance
    - re.sub
    - obj.resolve
    - <builtin>.super
    - <builtin>.hasattr
    - pdfplumber.page.Page.filter
    - obj.items
    - typing.cast.name.startswith
    - pdfplumber.page.Page.process_object
    - pdfplumber.page.FilteredPage.__init__
    - obj.get_text
    - <builtin>.list
    - pdfplumber.page.fix_fontname_bytes
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - pt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 349
    functionName: pdfplumber.page.Page.point2coord
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 353
    functionName: pdfplumber.page.Page.process_object
    functionSourceFile: pdfplumber.page
    functionUses: 3
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - pdfplumber.utils.pdfinternals.resolve_and_decode
    - <builtin>.map
    - unicodedata.normalize
    - obj.__dict__.items
    - CP936_FONTNAMES.get
    - <builtin>.getattr
    - <builtin>.ord
    - fontname.index
    - <builtin>.isinstance
    - re.sub
    - obj.resolve
    - <builtin>.super
    - <builtin>.hasattr
    - pdfplumber.page.Page.filter
    - obj.items
    - typing.cast.name.startswith
    - pdfplumber.page.FilteredPage.__init__
    - obj.get_text
    - <builtin>.list
    - pdfplumber.page.fix_fontname_bytes
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - item
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 356
    functionName: pdfplumber.page.Page.process_object.process_attr
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.pdfinternals.resolve_all
    - d.get
    - pdfplumber.utils.pdfinternals.get_dict_type
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - <builtin>.type
    - x.items
    - <builtin>.ord
    - x.resolve
    - typing.cast.name.startswith
    - <builtin>.isinstance
    - <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: obj.__dict__.items
    functionSourceFile: <builtin>
    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
    - test_function
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 570
    functionName: pdfplumber.page.Page.filter
    functionSourceFile: pdfplumber.page
    functionUses: 4
    functionsReached:
    - pdfplumber.page.FilteredPage.__init__
    - <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: obj.get_text
    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: unicodedata.normalize
    functionSourceFile: unicodedata
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - layout_objects
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 427
    functionName: pdfplumber.page.Page.iter_layout_objects
    functionSourceFile: pdfplumber.page
    functionUses: 2
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - pdfplumber.page.Page.iter_layout_objects
    - pdfplumber.utils.pdfinternals.resolve_and_decode
    - <builtin>.map
    - unicodedata.normalize
    - obj.__dict__.items
    - CP936_FONTNAMES.get
    - <builtin>.getattr
    - <builtin>.ord
    - fontname.index
    - <builtin>.isinstance
    - re.sub
    - obj.resolve
    - <builtin>.super
    - <builtin>.hasattr
    - pdfplumber.page.Page.filter
    - obj.items
    - typing.cast.name.startswith
    - pdfplumber.page.Page.process_object
    - pdfplumber.page.FilteredPage.__init__
    - obj.get_text
    - <builtin>.list
    - pdfplumber.page.fix_fontname_bytes
    - <builtin>.str
    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 0x7f8798ac3c40>
    argNames:
    - self
    - table_settings
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 452
    functionName: pdfplumber.page.Page.debug_tablefinder
    functionSourceFile: pdfplumber.page
    functionUses: 1
    functionsReached:
    - <builtin>.sum
    - tables.append
    - h_explicit.append
    - pdfplumber.table.intersections_to_cells.find_smallest_cell
    - pdfplumber.table.TableFinder.__init__
    - <builtin>.len
    - pdfplumber.table.join_edge_group
    - <builtin>.map
    - pdfplumber.utils.get_bbox_overlap
    - settings.items
    - pdfplumber.table.snap_edges
    - <builtin>.filter
    - remaining_cells.remove
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    - pdfplumber.table.TableFinder.get_edges
    - operator.itemgetter
    - current_cells.append
    - joined.append
    - pdfplumber.utils.extract_words
    - <builtin>.set
    - pdfplumber.utils.cluster_objects
    - current_cells.clear
    - <builtin>.getattr
    - <builtin>.range
    - current_corners.clear
    - <builtin>.isinstance
    - pdfplumber.utils.obj_to_edges
    - pdfplumber.table.TableSettings.resolve
    - pdfplumber.table.intersections_to_cells.edge_connects
    - intersections.keys
    - pdfplumber.page.Page.extract_words
    - condensed_bboxes.append
    - pdfplumber.table.merge_edges
    - v_explicit.append
    - pdfplumber.table.intersections_to_cells
    - <builtin>.min
    - pdfplumber.utils.snap_objects
    - pdfplumber.table.Table.__init__
    - pdfplumber.table.cells_to_tables
    - itertools.chain
    - itertools.groupby
    - pdfplumber.table.words_to_edges_v
    - pdfplumber.utils.resize_object
    - pdfplumber.table.cells_to_tables.bbox_to_corners
    - <builtin>.list
    - <builtin>.max
    - <builtin>.any
    - <builtin>.sorted
    - pdfplumber.table.edges_to_intersections
    - pdfplumber.table.words_to_edges_h
    - pdfplumber.utils.filter_edges
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - settings
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 558
    functionName: pdfplumber.table.TableSettings.resolve
    functionSourceFile: pdfplumber.table
    functionUses: 7
    functionsReached:
    - <builtin>.isinstance
    - settings.items
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f87986b16a0>
    argNames:
    - self
    - page
    - settings
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 588
    functionName: pdfplumber.table.TableFinder.__init__
    functionSourceFile: pdfplumber.table
    functionUses: 6
    functionsReached:
    - <builtin>.sum
    - tables.append
    - h_explicit.append
    - pdfplumber.table.intersections_to_cells.find_smallest_cell
    - <builtin>.len
    - pdfplumber.table.join_edge_group
    - <builtin>.map
    - pdfplumber.utils.get_bbox_overlap
    - settings.items
    - pdfplumber.table.snap_edges
    - <builtin>.filter
    - remaining_cells.remove
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    - pdfplumber.table.TableFinder.get_edges
    - operator.itemgetter
    - current_cells.append
    - joined.append
    - pdfplumber.utils.extract_words
    - <builtin>.set
    - pdfplumber.utils.cluster_objects
    - current_cells.clear
    - <builtin>.getattr
    - <builtin>.range
    - current_corners.clear
    - <builtin>.isinstance
    - pdfplumber.utils.obj_to_edges
    - pdfplumber.table.TableSettings.resolve
    - pdfplumber.table.intersections_to_cells.edge_connects
    - intersections.keys
    - pdfplumber.page.Page.extract_words
    - condensed_bboxes.append
    - pdfplumber.table.merge_edges
    - v_explicit.append
    - <builtin>.min
    - pdfplumber.table.intersections_to_cells
    - pdfplumber.utils.snap_objects
    - pdfplumber.table.Table.__init__
    - pdfplumber.table.cells_to_tables
    - itertools.chain
    - itertools.groupby
    - pdfplumber.table.words_to_edges_v
    - pdfplumber.utils.resize_object
    - pdfplumber.table.cells_to_tables.bbox_to_corners
    - <builtin>.list
    - <builtin>.max
    - <builtin>.any
    - <builtin>.sorted
    - pdfplumber.table.edges_to_intersections
    - pdfplumber.table.words_to_edges_h
    - pdfplumber.utils.filter_edges
    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 0x7f8798ac3ca0>
    argNames:
    - self
    - table_settings
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 458
    functionName: pdfplumber.page.Page.find_tables
    functionSourceFile: pdfplumber.page
    functionUses: 3
    functionsReached:
    - <builtin>.sum
    - tables.append
    - h_explicit.append
    - pdfplumber.table.intersections_to_cells.find_smallest_cell
    - pdfplumber.table.TableFinder.__init__
    - <builtin>.len
    - pdfplumber.table.join_edge_group
    - <builtin>.map
    - pdfplumber.utils.get_bbox_overlap
    - settings.items
    - pdfplumber.table.snap_edges
    - <builtin>.filter
    - remaining_cells.remove
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    - pdfplumber.table.TableFinder.get_edges
    - operator.itemgetter
    - current_cells.append
    - joined.append
    - pdfplumber.utils.extract_words
    - <builtin>.set
    - pdfplumber.utils.cluster_objects
    - current_cells.clear
    - <builtin>.getattr
    - <builtin>.range
    - current_corners.clear
    - <builtin>.isinstance
    - pdfplumber.utils.obj_to_edges
    - pdfplumber.table.TableSettings.resolve
    - pdfplumber.table.intersections_to_cells.edge_connects
    - intersections.keys
    - pdfplumber.page.Page.extract_words
    - condensed_bboxes.append
    - pdfplumber.table.merge_edges
    - v_explicit.append
    - pdfplumber.table.intersections_to_cells
    - <builtin>.min
    - pdfplumber.utils.snap_objects
    - pdfplumber.table.Table.__init__
    - pdfplumber.table.cells_to_tables
    - itertools.chain
    - itertools.groupby
    - pdfplumber.table.words_to_edges_v
    - pdfplumber.utils.resize_object
    - pdfplumber.table.cells_to_tables.bbox_to_corners
    - <builtin>.list
    - <builtin>.max
    - <builtin>.any
    - <builtin>.sorted
    - pdfplumber.table.edges_to_intersections
    - pdfplumber.table.words_to_edges_h
    - pdfplumber.utils.filter_edges
    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 0x7f8798ac3700>
    argNames:
    - self
    - table_settings
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 464
    functionName: pdfplumber.page.Page.find_table
    functionSourceFile: pdfplumber.page
    functionUses: 1
    functionsReached:
    - <builtin>.sum
    - tables.append
    - h_explicit.append
    - pdfplumber.table.intersections_to_cells.find_smallest_cell
    - pdfplumber.table.TableFinder.__init__
    - <builtin>.len
    - pdfplumber.table.join_edge_group
    - <builtin>.map
    - pdfplumber.utils.get_bbox_overlap
    - settings.items
    - pdfplumber.table.snap_edges
    - <builtin>.filter
    - remaining_cells.remove
    - pdfplumber.page.Page.find_tables
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    - pdfplumber.table.TableFinder.get_edges
    - operator.itemgetter
    - current_cells.append
    - joined.append
    - pdfplumber.utils.extract_words
    - <builtin>.set
    - pdfplumber.utils.cluster_objects
    - current_cells.clear
    - <builtin>.getattr
    - <builtin>.range
    - current_corners.clear
    - <builtin>.isinstance
    - pdfplumber.utils.obj_to_edges
    - pdfplumber.table.TableSettings.resolve
    - pdfplumber.table.intersections_to_cells.edge_connects
    - intersections.keys
    - pdfplumber.page.Page.extract_words
    - condensed_bboxes.append
    - pdfplumber.table.merge_edges
    - v_explicit.append
    - pdfplumber.table.intersections_to_cells
    - <builtin>.min
    - pdfplumber.utils.snap_objects
    - pdfplumber.table.edges_to_intersections
    - pdfplumber.table.Table.__init__
    - pdfplumber.table.cells_to_tables
    - itertools.chain
    - itertools.groupby
    - pdfplumber.table.words_to_edges_v
    - pdfplumber.utils.resize_object
    - pdfplumber.table.cells_to_tables.bbox_to_corners
    - <builtin>.max
    - <builtin>.any
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.table.words_to_edges_h
    - pdfplumber.utils.filter_edges
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 474
    functionName: pdfplumber.page.Page.find_table.sorter
    functionSourceFile: pdfplumber.page
    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:
    - <ast.Constant object at 0x7f87990ed6a0>
    argNames:
    - self
    - table_settings
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 481
    functionName: pdfplumber.page.Page.extract_tables
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - <builtin>.sum
    - tables.append
    - h_explicit.append
    - pdfplumber.table.intersections_to_cells.find_smallest_cell
    - pdfplumber.table.TableFinder.__init__
    - <builtin>.len
    - settings.items
    - <builtin>.map
    - pdfplumber.table.join_edge_group
    - pdfplumber.utils.get_bbox_overlap
    - pdfplumber.table.snap_edges
    - <builtin>.filter
    - remaining_cells.remove
    - pdfplumber.page.Page.find_tables
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    - pdfplumber.table.TableFinder.get_edges
    - operator.itemgetter
    - current_cells.append
    - joined.append
    - pdfplumber.utils.extract_words
    - <builtin>.set
    - pdfplumber.utils.cluster_objects
    - current_cells.clear
    - <builtin>.getattr
    - <builtin>.range
    - current_corners.clear
    - <builtin>.isinstance
    - pdfplumber.table.TableSettings.resolve
    - pdfplumber.utils.obj_to_edges
    - pdfplumber.table.intersections_to_cells.edge_connects
    - intersections.keys
    - pdfplumber.page.Page.extract_words
    - condensed_bboxes.append
    - pdfplumber.table.merge_edges
    - v_explicit.append
    - pdfplumber.table.intersections_to_cells
    - <builtin>.min
    - pdfplumber.utils.snap_objects
    - pdfplumber.table.Table.__init__
    - pdfplumber.table.cells_to_tables
    - itertools.chain
    - itertools.groupby
    - pdfplumber.table.words_to_edges_v
    - pdfplumber.utils.resize_object
    - pdfplumber.table.cells_to_tables.bbox_to_corners
    - <builtin>.list
    - <builtin>.max
    - table.extract
    - <builtin>.any
    - <builtin>.sorted
    - pdfplumber.table.edges_to_intersections
    - pdfplumber.table.words_to_edges_h
    - pdfplumber.utils.filter_edges
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: table.extract
    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:
    - <ast.Constant object at 0x7f8798d2b730>
    argNames:
    - self
    - table_settings
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 488
    functionName: pdfplumber.page.Page.extract_table
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.page.Page.find_table
    - <builtin>.sum
    - tables.append
    - h_explicit.append
    - pdfplumber.table.intersections_to_cells.find_smallest_cell
    - pdfplumber.table.TableFinder.__init__
    - <builtin>.len
    - pdfplumber.table.join_edge_group
    - <builtin>.map
    - pdfplumber.utils.get_bbox_overlap
    - settings.items
    - pdfplumber.table.snap_edges
    - <builtin>.filter
    - remaining_cells.remove
    - pdfplumber.page.Page.find_tables
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    - pdfplumber.table.TableFinder.get_edges
    - operator.itemgetter
    - current_cells.append
    - joined.append
    - pdfplumber.utils.extract_words
    - <builtin>.set
    - pdfplumber.utils.cluster_objects
    - current_cells.clear
    - <builtin>.getattr
    - <builtin>.range
    - current_corners.clear
    - <builtin>.isinstance
    - pdfplumber.utils.obj_to_edges
    - pdfplumber.table.TableSettings.resolve
    - pdfplumber.table.intersections_to_cells.edge_connects
    - intersections.keys
    - pdfplumber.page.Page.extract_words
    - condensed_bboxes.append
    - pdfplumber.table.merge_edges
    - v_explicit.append
    - pdfplumber.table.intersections_to_cells
    - <builtin>.min
    - pdfplumber.utils.snap_objects
    - pdfplumber.table.edges_to_intersections
    - pdfplumber.table.Table.__init__
    - pdfplumber.table.cells_to_tables
    - itertools.chain
    - itertools.groupby
    - pdfplumber.table.words_to_edges_v
    - pdfplumber.utils.resize_object
    - pdfplumber.table.cells_to_tables.bbox_to_corners
    - <builtin>.max
    - table.extract
    - <builtin>.any
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.table.words_to_edges_h
    - pdfplumber.utils.filter_edges
    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: 498
    functionName: pdfplumber.page.Page._get_textmap
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - defaults.update
    - pdfplumber.utils.chars_to_textmap
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: defaults.update
    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: pdfplumber.utils.chars_to_textmap
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f879886e580>
    - <ast.Constant object at 0x7f879886efa0>
    - <ast.Constant object at 0x7f879886ea30>
    - <ast.Constant object at 0x7f879886e520>
    - <ast.Constant object at 0x7f879886e760>
    argNames:
    - self
    - pattern
    - regex
    - case
    - main_group
    - return_chars
    - return_groups
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 509
    functionName: pdfplumber.page.Page.search
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    - textmap.search
    - kwargs.items
    - pdfplumber.page.tuplify_list_kwargs
    - <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: textmap.search
    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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 529
    functionName: pdfplumber.page.Page.extract_text
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.page.tuplify_list_kwargs
    - <builtin>.isinstance
    - kwargs.items
    - <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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 532
    functionName: pdfplumber.page.Page.extract_text_simple
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.extract_text_simple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.utils.extract_text_simple
    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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 535
    functionName: pdfplumber.page.Page.extract_words
    functionSourceFile: pdfplumber.page
    functionUses: 9
    functionsReached:
    - pdfplumber.utils.extract_words
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.utils.extract_words
    functionSourceFile: ''
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798f1bd90>
    - <ast.Constant object at 0x7f8798f1bee0>
    argNames:
    - self
    - strip
    - return_chars
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 538
    functionName: pdfplumber.page.Page.extract_text_lines
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.page.tuplify_list_kwargs
    - <builtin>.isinstance
    - kwargs.items
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f8798f1b430>
    - <ast.Constant object at 0x7f8798f1b730>
    argNames:
    - self
    - bbox
    - relative
    - strict
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 545
    functionName: pdfplumber.page.Page.crop
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.page.CroppedPage.__init__
    - <builtin>.super
    - pdfplumber.page.test_proposed_bbox
    - pdfplumber.utils.calculate_area
    - pdfplumber.utils.get_bbox_overlap
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Attribute object at 0x7f8798c31af0>
    - <ast.Constant object at 0x7f8798c31220>
    - <ast.Constant object at 0x7f8798c31d60>
    argNames:
    - self
    - parent_page
    - crop_bbox
    - crop_fn
    - relative
    - strict
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 678
    functionName: pdfplumber.page.CroppedPage.__init__
    functionSourceFile: pdfplumber.page
    functionUses: 3
    functionsReached:
    - pdfplumber.utils.calculate_area
    - pdfplumber.utils.get_bbox_overlap
    - <builtin>.super
    - pdfplumber.page.test_proposed_bbox
    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 0x7f8798e69610>
    - <ast.Constant object at 0x7f8798e69670>
    argNames:
    - self
    - bbox
    - relative
    - strict
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 550
    functionName: pdfplumber.page.Page.within_bbox
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.page.CroppedPage.__init__
    - <builtin>.super
    - pdfplumber.page.test_proposed_bbox
    - pdfplumber.utils.calculate_area
    - pdfplumber.utils.get_bbox_overlap
    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 0x7f8798d61130>
    - <ast.Constant object at 0x7f8798d61fa0>
    argNames:
    - self
    - bbox
    - relative
    - strict
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 560
    functionName: pdfplumber.page.Page.outside_bbox
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.page.CroppedPage.__init__
    - <builtin>.super
    - pdfplumber.page.test_proposed_bbox
    - pdfplumber.utils.calculate_area
    - pdfplumber.utils.get_bbox_overlap
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parent_page
    - filter_fn
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 718
    functionName: pdfplumber.page.FilteredPage.__init__
    functionSourceFile: pdfplumber.page
    functionUses: 6
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 573
    functionName: pdfplumber.page.Page.dedupe_chars
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.dedupe_chars
    - pdfplumber.page.FilteredPage.__init__
    - <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: pdfplumber.page.Page.dedupe_chars.<lambda1>
    functionSourceFile: pdfplumber.page
    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: pdfplumber.utils.dedupe_chars
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f8798db7a00>
    - <ast.Constant object at 0x7f8798db7d90>
    - <ast.Constant object at 0x7f8798db7f40>
    - <ast.Constant object at 0x7f8798db73d0>
    - <ast.Constant object at 0x7f8798db77f0>
    argNames:
    - self
    - resolution
    - width
    - height
    - antialias
    - force_mediabox
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 584
    functionName: pdfplumber.page.Page.to_image
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - <builtin>.sum
    - pdfium_doc.close
    - <builtin>.int
    - pdfium_page.render
    - pdfplumber.display.get_page_image
    - PIL.ImageDraw.Draw
    - pdfplumber.display.PageImage.__init__
    - pypdfium2.PdfDocument
    - io.BytesIO.seek
    - pdfplumber.display.PageImage.reset
    - pdfium_doc.get_page
    - PIL.Image.new
    - pdfplumber.display.PageImage._reproject_bbox
    - pdfplumber.display.PageImage._reproject
    - img.convert
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f8798c6e1c0>
    - <ast.Name object at 0x7f8798c6efd0>
    - <ast.Constant object at 0x7f8798c6e2e0>
    - <ast.Constant object at 0x7f8798c6e280>
    argNames:
    - self
    - page
    - original
    - resolution
    - antialias
    - force_mediabox
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 78
    functionName: pdfplumber.display.PageImage.__init__
    functionSourceFile: pdfplumber.display
    functionUses: 1
    functionsReached:
    - pdfium_doc.close
    - <builtin>.int
    - pdfium_page.render
    - pdfplumber.display.get_page_image
    - PIL.ImageDraw.Draw
    - pypdfium2.PdfDocument
    - io.BytesIO.seek
    - PIL.Image.new
    - pdfplumber.display.PageImage.reset
    - pdfium_doc.get_page
    - pdfplumber.display.PageImage._reproject_bbox
    - pdfplumber.display.PageImage._reproject
    - img.convert
    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: 636
    functionName: pdfplumber.page.Page.__repr__
    functionSourceFile: pdfplumber.page
    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
    - parent_page
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 643
    functionName: pdfplumber.page.DerivedPage.__init__
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.container.Container.flush_cache
    - <builtin>.delattr
    - <builtin>.hasattr
    - functools.lru_cache
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - bbox
    - parent_bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 657
    functionName: pdfplumber.page.test_proposed_bbox
    functionSourceFile: pdfplumber.page
    functionUses: 4
    functionsReached:
    - pdfplumber.utils.calculate_area
    - pdfplumber.utils.get_bbox_overlap
    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: pdfplumber.utils.calculate_area
    functionSourceFile: ''
    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: pdfplumber.utils.get_bbox_overlap
    functionSourceFile: ''
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - objs
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 114
    functionName: pdfplumber.utils.geometry.outside_bbox
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 4
    functionsReached:
    - operator.itemgetter
    - <builtin>.max
    - pdfplumber.utils.geometry.obj_to_bbox
    - pdfplumber.utils.geometry.get_bbox_overlap
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - objs
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 103
    functionName: pdfplumber.utils.geometry.within_bbox
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 4
    functionsReached:
    - operator.itemgetter
    - <builtin>.max
    - pdfplumber.utils.geometry.obj_to_bbox
    - pdfplumber.utils.geometry.get_bbox_overlap
    - <builtin>.min
    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: 4
    functionLinenumber: 708
    functionName: pdfplumber.page.CroppedPage.objects
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - pdfplumber.page.CroppedPage.__init__._crop_fn
    - operator.itemgetter
    - pdfplumber.utils.geometry.outside_bbox
    - <builtin>.hasattr
    - <builtin>.max
    - pdfplumber.utils.geometry.obj_to_bbox
    - pdfplumber.utils.geometry.get_bbox_overlap
    - <builtin>.min
    - pdfplumber.utils.geometry.within_bbox
    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: 724
    functionName: pdfplumber.page.FilteredPage.objects
    functionSourceFile: pdfplumber.page
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.hasattr
    - <builtin>.filter
    linkageType: 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: pdfplumber.structure
    functionSourceFile: pdfplumber.structure
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - elements
    - matcher
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 39
    functionName: pdfplumber.structure._find_all
    functionSourceFile: pdfplumber.structure
    functionUses: 2
    functionsReached:
    - pdfplumber.structure._find_all.match_tag
    - collections.deque.popleft
    - pdfplumber.structure._find_all.match_regex
    - <builtin>.reversed
    - matcher.match
    - <builtin>.isinstance
    - collections.deque.extendleft
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 47
    functionName: pdfplumber.structure._find_all.match_tag
    functionSourceFile: pdfplumber.structure
    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:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: pdfplumber.structure._find_all.match_regex
    functionSourceFile: pdfplumber.structure
    functionUses: 3
    functionsReached:
    - matcher.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: matcher.match
    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: collections.deque
    functionSourceFile: collections
    functionUses: 14
    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.popleft
    functionSourceFile: collections
    functionUses: 14
    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>.reversed
    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: collections.deque.extendleft
    functionSourceFile: collections
    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
    - matcher
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 75
    functionName: pdfplumber.structure.Findable.find_all
    functionSourceFile: pdfplumber.structure
    functionUses: 0
    functionsReached:
    - pdfplumber.structure._find_all.match_tag
    - collections.deque.popleft
    - pdfplumber.structure._find_all.match_regex
    - <builtin>.reversed
    - matcher.match
    - pdfplumber.structure._find_all
    - <builtin>.isinstance
    - collections.deque.extendleft
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - matcher
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 86
    functionName: pdfplumber.structure.Findable.find
    functionSourceFile: pdfplumber.structure
    functionUses: 0
    functionsReached:
    - pdfplumber.structure._find_all.match_tag
    - collections.deque.popleft
    - pdfplumber.structure._find_all.match_regex
    - <builtin>.reversed
    - <builtin>.next
    - matcher.match
    - pdfplumber.structure._find_all
    - <builtin>.isinstance
    - collections.deque.extendleft
    - 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: dataclasses.field
    functionSourceFile: dataclasses
    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: pdfplumber.structure.PDFStructElement
    functionSourceFile: pdfplumber.structure
    functionUses: 0
    functionsReached:
    - dataclasses.field
    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: 115
    functionName: pdfplumber.structure.PDFStructElement.__iter__
    functionSourceFile: pdfplumber.structure
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 118
    functionName: pdfplumber.structure.PDFStructElement.all_mcids
    functionSourceFile: pdfplumber.structure
    functionUses: 0
    functionsReached:
    - <builtin>.reversed
    - collections.deque.popleft
    - collections.deque.extendleft
    - collections.deque
    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: 132
    functionName: pdfplumber.structure.PDFStructElement.to_dict
    functionSourceFile: pdfplumber.structure
    functionUses: 0
    functionsReached:
    - collections.deque.popleft
    - collections.deque.extend
    - dataclasses.asdict
    - <builtin>.list
    - el.keys
    - 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: dataclasses.asdict
    functionSourceFile: dataclasses
    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: el.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: collections.deque.extend
    functionSourceFile: collections
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 4
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 351
    functionName: pdfplumber.structure.PDFStructTree._parse_struct_tree
    functionSourceFile: pdfplumber.structure
    functionUses: 3
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - attr_obj_list.extend
    - typing.cast.items
    - pdfplumber.structure.PDFStructTree._make_attributes
    - collections.deque
    - collections.deque.append
    - next_elements.append
    - <builtin>.repr
    - <builtin>.ord
    - seen.get
    - <builtin>.isinstance
    - typing.cast.resolve
    - attr_obj_list.append
    - element.mcids.append
    - pdfplumber.structure.PDFStructTree.on_parsed_page
    - pdfplumber.structure.PDFStructTree._resolve_children
    - typing.cast.name.startswith
    - pdfminer.pdftypes.resolve1
    - pdfplumber.structure.PDFStructTree._make_element
    - typing.cast.get
    - collections.deque.popleft
    - attr_objs.append
    - pdfplumber.structure.PDFStructTree._parse_struct_tree.prune
    - element.children.append
    - logger.warning
    - parsed_root.append
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parent_array
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 308
    functionName: pdfplumber.structure.PDFStructTree._parse_parent_tree
    functionSourceFile: pdfplumber.structure
    functionUses: 3
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - attr_obj_list.extend
    - typing.cast.items
    - pdfplumber.structure.PDFStructTree._make_attributes
    - collections.deque
    - collections.deque.append
    - <builtin>.repr
    - <builtin>.ord
    - seen.get
    - <builtin>.isinstance
    - typing.cast.resolve
    - attr_obj_list.append
    - element.mcids.append
    - pdfplumber.structure.PDFStructTree.on_parsed_page
    - pdfplumber.structure.PDFStructTree._resolve_children
    - typing.cast.name.startswith
    - pdfminer.pdftypes.resolve1
    - pdfplumber.structure.PDFStructTree._make_element
    - typing.cast.get
    - collections.deque.popleft
    - attr_objs.append
    - element.children.append
    - logger.warning
    - parsed_root.append
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 6
    IfCount: 9
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - obj
    - revision
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 217
    functionName: pdfplumber.structure.PDFStructTree._make_attributes
    functionSourceFile: pdfplumber.structure
    functionUses: 6
    functionsReached:
    - typing.cast.resolve
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - attr_obj_list.extend
    - attr_obj_list.append
    - typing.cast.items
    - attr_objs.append
    - logger.warning
    - <builtin>.ord
    - <builtin>.isinstance
    - typing.cast.name.startswith
    - pdfminer.pdftypes.resolve1
    - <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: attr_obj_list.extend
    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: attr_obj_list.append
    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: attr_objs.append
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 266
    functionName: pdfplumber.structure.PDFStructTree._make_element
    functionSourceFile: pdfplumber.structure
    functionUses: 5
    functionsReached:
    - typing.cast.get
    - typing.cast.resolve
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - attr_obj_list.extend
    - pdfminer.pdftypes.resolve1
    - attr_obj_list.append
    - logger.warning
    - attr_objs.append
    - typing.cast.items
    - <builtin>.ord
    - pdfplumber.structure.PDFStructTree._make_attributes
    - <builtin>.isinstance
    - typing.cast.name.startswith
    - <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>.repr
    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: collections.deque.append
    functionSourceFile: collections
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 6
    IfCount: 11
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - seen
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 419
    functionName: pdfplumber.structure.PDFStructTree._resolve_children
    functionSourceFile: pdfplumber.structure
    functionUses: 5
    functionsReached:
    - typing.cast.resolve
    - collections.deque.popleft
    - collections.deque.append
    - element.mcids.append
    - pdfplumber.structure.PDFStructTree.on_parsed_page
    - element.children.append
    - <builtin>.repr
    - <builtin>.isinstance
    - seen.get
    - pdfminer.pdftypes.resolve1
    - parsed_root.append
    - collections.deque
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 339
    functionName: pdfplumber.structure.PDFStructTree.on_parsed_page
    functionSourceFile: pdfplumber.structure
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 3
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - elements
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 391
    functionName: pdfplumber.structure.PDFStructTree._parse_struct_tree.prune
    functionSourceFile: pdfplumber.structure
    functionUses: 4
    functionsReached:
    - typing.cast.resolve
    - next_elements.append
    - pdfplumber.structure.PDFStructTree._parse_struct_tree.prune
    - pdfplumber.structure.PDFStructTree.on_parsed_page
    - <builtin>.repr
    - <builtin>.isinstance
    - pdfminer.pdftypes.resolve1
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_elements.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: parsed_root.append
    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: element.mcids.append
    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: seen.get
    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: element.children.append
    functionSourceFile: <builtin>
    functionUses: 6
    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: 463
    functionName: pdfplumber.structure.PDFStructTree.__iter__
    functionSourceFile: pdfplumber.structure
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 2
    IfCount: 9
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - el
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 466
    functionName: pdfplumber.structure.PDFStructTree.element_bbox
    functionSourceFile: pdfplumber.structure
    functionUses: 0
    functionsReached:
    - pdfplumber.page._invert_box
    - pdfplumber.utils.geometry.within_bbox
    - <builtin>.map
    - <builtin>.all
    - itertools.chain.from_iterable
    - pdfplumber.page._normalize_box
    - operator.itemgetter
    - mcid_objs.append
    - pdfplumber.utils.geometry.obj_to_bbox
    - pdfplumber.utils.geometry.get_bbox_overlap
    - <builtin>.isinstance
    - <builtin>.zip
    - pdfplumber.page.CroppedPage.__init__._crop_fn
    - pdfplumber.utils.geometry.objects_to_bbox
    - pdfplumber.utils.geometry.bbox_to_rect
    - <builtin>.min
    - el.all_mcids
    - pdfplumber.utils.geometry.outside_bbox
    - <builtin>.max
    - pdfplumber.utils.geometry.merge_bboxes
    - <builtin>.sorted
    - el.attributes.get
    linkageType: pythonLinkage
    raised:
    - IndexError
    returnType: N/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.attributes.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - bbox
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 37
    functionName: pdfplumber.utils.geometry.bbox_to_rect
    functionSourceFile: ''
    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:
    - obj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 29
    functionName: pdfplumber.utils.geometry.obj_to_bbox
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 9
    functionsReached:
    - operator.itemgetter
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.all_mcids
    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: itertools.chain.from_iterable
    functionSourceFile: itertools
    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: mcid_objs.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - objects
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 18
    functionName: pdfplumber.utils.geometry.objects_to_bbox
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 12
    functionsReached:
    - <builtin>.zip
    - <builtin>.max
    - pdfplumber.utils.geometry.merge_bboxes
    - <builtin>.min
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.table
    functionSourceFile: pdfplumber.table
    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.Name object at 0x7f8798a33040>
    - <ast.Name object at 0x7f8798a33580>
    argNames:
    - edges
    - x_tolerance
    - y_tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 21
    functionName: pdfplumber.table.snap_edges
    functionSourceFile: pdfplumber.table
    functionUses: 9
    functionsReached:
    - pdfplumber.utils.snap_objects
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.utils.snap_objects
    functionSourceFile: ''
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7f8798a338b0>
    argNames:
    - edges
    - orientation
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: pdfplumber.table.join_edge_group
    functionSourceFile: pdfplumber.table
    functionUses: 9
    functionsReached:
    - operator.itemgetter
    - pdfplumber.utils.resize_object
    - joined.append
    - <builtin>.sorted
    - <builtin>.list
    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: operator.itemgetter
    functionSourceFile: operator
    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: pdfplumber.utils.resize_object
    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: 0
    functionLinenumber: -1
    functionName: joined.append
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - edges
    - snap_x_tolerance
    - snap_y_tolerance
    - join_x_tolerance
    - join_y_tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 68
    functionName: pdfplumber.table.merge_edges
    functionSourceFile: pdfplumber.table
    functionUses: 8
    functionsReached:
    - pdfplumber.table.snap_edges
    - itertools.chain
    - itertools.groupby
    - operator.itemgetter
    - <builtin>.list
    - pdfplumber.utils.resize_object
    - joined.append
    - <builtin>.sorted
    - pdfplumber.table.join_edge_group
    - pdfplumber.utils.snap_objects
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - edge
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 80
    functionName: pdfplumber.table.merge_edges.get_group
    functionSourceFile: pdfplumber.table
    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: itertools.groupby
    functionSourceFile: itertools
    functionUses: 25
    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 0x7f879850ba60>
    argNames:
    - words
    - word_threshold
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 101
    functionName: pdfplumber.table.words_to_edges_h
    functionSourceFile: pdfplumber.table
    functionUses: 8
    functionsReached:
    - <builtin>.filter
    - operator.itemgetter
    - <builtin>.max
    - pdfplumber.utils.cluster_objects
    - <builtin>.list
    - <builtin>.min
    - <builtin>.len
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.utils.cluster_objects
    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: pdfplumber.table.words_to_edges_h.<lambda1>
    functionSourceFile: pdfplumber.table
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7f8798da5550>
    argNames:
    - words
    - word_threshold
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 144
    functionName: pdfplumber.table.words_to_edges_v
    functionSourceFile: pdfplumber.table
    functionUses: 8
    functionsReached:
    - <builtin>.filter
    - operator.itemgetter
    - condensed_bboxes.append
    - <builtin>.max
    - pdfplumber.utils.cluster_objects
    - <builtin>.any
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.min
    - <builtin>.len
    - pdfplumber.utils.get_bbox_overlap
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - word
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 155
    functionName: pdfplumber.table.words_to_edges_v.get_center
    functionSourceFile: pdfplumber.table
    functionUses: 13
    functionsReached:
    - <builtin>.float
    linkageType: 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: pdfplumber.table.words_to_edges_v.<lambda1>
    functionSourceFile: pdfplumber.table
    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: pdfplumber.table.words_to_edges_v.<lambda2>
    functionSourceFile: pdfplumber.table
    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: 0
    functionLinenumber: -1
    functionName: condensed_bboxes.append
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    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 0x7f879887a160>
    - <ast.Constant object at 0x7f879887a7f0>
    argNames:
    - edges
    - x_tolerance
    - y_tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 207
    functionName: pdfplumber.table.edges_to_intersections
    functionSourceFile: pdfplumber.table
    functionUses: 7
    functionsReached:
    - <builtin>.list
    - operator.itemgetter
    - <builtin>.filter
    - <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: pdfplumber.table.edges_to_intersections.<lambda1>
    functionSourceFile: pdfplumber.table
    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:
    - intersections
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 234
    functionName: pdfplumber.table.intersections_to_cells
    functionSourceFile: pdfplumber.table
    functionUses: 7
    functionsReached:
    - pdfplumber.table.intersections_to_cells.edge_connects
    - intersections.keys
    - <builtin>.filter
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    - <builtin>.set
    - pdfplumber.table.intersections_to_cells.find_smallest_cell
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.range
    - <builtin>.len
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - p1
    - p2
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 244
    functionName: pdfplumber.table.intersections_to_cells.edge_connects
    functionSourceFile: pdfplumber.table
    functionUses: 9
    functionsReached:
    - <builtin>.set
    - <builtin>.len
    - <builtin>.map
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - edges
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 245
    functionName: pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    functionSourceFile: pdfplumber.table
    functionUses: 10
    functionsReached:
    - <builtin>.set
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: intersections.keys
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - points
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 266
    functionName: pdfplumber.table.intersections_to_cells.find_smallest_cell
    functionSourceFile: pdfplumber.table
    functionUses: 8
    functionsReached:
    - pdfplumber.table.intersections_to_cells.edge_connects
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    - <builtin>.set
    - <builtin>.len
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 9
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - cells
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 297
    functionName: pdfplumber.table.cells_to_tables
    functionSourceFile: pdfplumber.table
    functionUses: 7
    functionsReached:
    - <builtin>.sum
    - remaining_cells.remove
    - current_cells.append
    - pdfplumber.table.cells_to_tables.bbox_to_corners
    - tables.append
    - <builtin>.set
    - current_cells.clear
    - <builtin>.sorted
    - <builtin>.list
    - current_corners.clear
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - bbox
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 303
    functionName: pdfplumber.table.cells_to_tables.bbox_to_corners
    functionSourceFile: pdfplumber.table
    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: current_cells.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: remaining_cells.remove
    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: tables.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: current_corners.clear
    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: current_cells.clear
    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: 1
    functionLinenumber: -1
    functionName: pdfplumber.table.cells_to_tables.<lambda1>
    functionSourceFile: pdfplumber.table
    functionUses: 0
    functionsReached:
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cells
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 359
    functionName: pdfplumber.table.CellGroup.__init__
    functionSourceFile: pdfplumber.table
    functionUses: 3
    functionsReached:
    - <builtin>.filter
    - operator.itemgetter
    - <builtin>.max
    - <builtin>.min
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - page
    - cells
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 378
    functionName: pdfplumber.table.Table.__init__
    functionSourceFile: pdfplumber.table
    functionUses: 7
    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: 383
    functionName: pdfplumber.table.Table.bbox
    functionSourceFile: pdfplumber.table
    functionUses: 0
    functionsReached:
    - operator.itemgetter
    - <builtin>.min
    - <builtin>.map
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kind
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 392
    functionName: pdfplumber.table.Table._get_rows_or_cols
    functionSourceFile: pdfplumber.table
    functionUses: 2
    functionsReached:
    - <builtin>.int
    - <builtin>.filter
    - itertools.groupby
    - operator.itemgetter
    - rows.append
    - <builtin>.max
    - <builtin>.set
    - pdfplumber.table.CellGroup.__init__
    - xdict.get
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.min
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: xdict.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: rows.append
    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: 3
    functionLinenumber: 414
    functionName: pdfplumber.table.Table.rows
    functionSourceFile: pdfplumber.table
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - <builtin>.filter
    - itertools.groupby
    - operator.itemgetter
    - rows.append
    - pdfplumber.table.Table._get_rows_or_cols
    - <builtin>.max
    - <builtin>.set
    - pdfplumber.table.CellGroup.__init__
    - xdict.get
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.min
    - <builtin>.map
    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: 3
    functionLinenumber: 418
    functionName: pdfplumber.table.Table.columns
    functionSourceFile: pdfplumber.table
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - <builtin>.filter
    - itertools.groupby
    - operator.itemgetter
    - rows.append
    - pdfplumber.table.Table._get_rows_or_cols
    - <builtin>.max
    - <builtin>.set
    - pdfplumber.table.CellGroup.__init__
    - xdict.get
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.min
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 421
    functionName: pdfplumber.table.Table.extract
    functionSourceFile: pdfplumber.table
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    - table_arr.append
    - pdfplumber.table.Table.extract.char_in_bbox
    - arr.append
    - pdfplumber.utils.extract_text
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - char
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 426
    functionName: pdfplumber.table.Table.extract.char_in_bbox
    functionSourceFile: pdfplumber.table
    functionUses: 1
    functionsReached:
    - <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: pdfplumber.utils.extract_text
    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: arr.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: table_arr.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 506
    functionName: pdfplumber.table.TableSettings.__post_init__
    functionSourceFile: pdfplumber.table
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - <builtin>.getattr
    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: settings.items
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 22
    ICount: 4
    IfCount: 15
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 602
    functionName: pdfplumber.table.TableFinder.get_edges
    functionSourceFile: pdfplumber.table
    functionUses: 7
    functionsReached:
    - h_explicit.append
    - <builtin>.len
    - pdfplumber.utils.get_bbox_overlap
    - <builtin>.map
    - pdfplumber.table.snap_edges
    - <builtin>.filter
    - operator.itemgetter
    - joined.append
    - pdfplumber.utils.extract_words
    - pdfplumber.utils.cluster_objects
    - <builtin>.getattr
    - <builtin>.isinstance
    - pdfplumber.utils.obj_to_edges
    - pdfplumber.page.Page.extract_words
    - condensed_bboxes.append
    - pdfplumber.table.merge_edges
    - v_explicit.append
    - <builtin>.min
    - pdfplumber.utils.snap_objects
    - itertools.chain
    - itertools.groupby
    - pdfplumber.table.words_to_edges_v
    - pdfplumber.utils.resize_object
    - <builtin>.list
    - <builtin>.max
    - <builtin>.any
    - <builtin>.sorted
    - pdfplumber.table.join_edge_group
    - pdfplumber.table.words_to_edges_h
    - pdfplumber.utils.filter_edges
    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: pdfplumber.utils.obj_to_edges
    functionSourceFile: ''
    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: v_explicit.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: pdfplumber.utils.filter_edges
    functionSourceFile: ''
    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: h_explicit.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: pdfplumber.display
    functionSourceFile: pdfplumber.display
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d4be50>
    argNames:
    - stream
    - path
    - page_ix
    - resolution
    - password
    - antialias
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: pdfplumber.display.get_page_image
    functionSourceFile: pdfplumber.display
    functionUses: 2
    functionsReached:
    - pdfium_doc.close
    - pdfium_page.render
    - pypdfium2.PdfDocument
    - io.BytesIO.seek
    - pdfium_doc.get_page
    - img.convert
    linkageType: pythonLinkage
    raised:
    - MalformedPDFException
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pypdfium2.PdfDocument
    functionSourceFile: pypdfium2
    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: pdfium_doc.get_page
    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: pdfium_page.render
    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: pdfium_doc.close
    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: img.convert
    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
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 130
    functionName: pdfplumber.display.PageImage._reproject_bbox
    functionSourceFile: pdfplumber.display
    functionUses: 14
    functionsReached:
    - pdfplumber.display.PageImage._reproject
    - <builtin>.int
    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: 146
    functionName: pdfplumber.display.PageImage.reset
    functionSourceFile: pdfplumber.display
    functionUses: 2
    functionsReached:
    - PIL.ImageDraw.Draw
    - PIL.Image.new
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - coord
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 136
    functionName: pdfplumber.display.PageImage._reproject
    functionSourceFile: pdfplumber.display
    functionUses: 15
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: PIL.Image.new
    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: PIL.ImageDraw.Draw
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f8798ef9b50>
    - <ast.Constant object at 0x7f8798ef9520>
    - <ast.Constant object at 0x7f8798ef9c40>
    - <ast.Constant object at 0x7f8798ef9910>
    argNames:
    - self
    - dest
    - format
    - quantize
    - colors
    - bits
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 152
    functionName: pdfplumber.display.PageImage.save
    functionSourceFile: pdfplumber.display
    functionUses: 1
    functionsReached:
    - out.save
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out.save
    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: 176
    functionName: pdfplumber.display.PageImage.copy
    functionSourceFile: pdfplumber.display
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f8798f35ca0>
    - <ast.Name object at 0x7f8798f35190>
    argNames:
    - self
    - points_or_obj
    - stroke
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 179
    functionName: pdfplumber.display.PageImage.draw_line
    functionSourceFile: pdfplumber.display
    functionUses: 7
    functionsReached:
    - <builtin>.list
    - <builtin>.isinstance
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f8798d02a00>
    - <ast.Name object at 0x7f8798d02730>
    argNames:
    - self
    - list_of_lines
    - stroke
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 202
    functionName: pdfplumber.display.PageImage.draw_lines
    functionSourceFile: pdfplumber.display
    functionUses: 6
    functionsReached:
    - pdfplumber.display.PageImage.draw_line
    - pdfplumber.utils.to_list
    - <builtin>.list
    - <builtin>.isinstance
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.utils.to_list
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f8798d028b0>
    - <ast.Name object at 0x7f8798d02fd0>
    argNames:
    - self
    - location
    - stroke
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 212
    functionName: pdfplumber.display.PageImage.draw_vline
    functionSourceFile: pdfplumber.display
    functionUses: 1
    functionsReached:
    - pdfplumber.display.PageImage._reproject_bbox
    - pdfplumber.display.PageImage._reproject
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f8799090670>
    - <ast.Name object at 0x7f8799090850>
    argNames:
    - self
    - locations
    - stroke
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 222
    functionName: pdfplumber.display.PageImage.draw_vlines
    functionSourceFile: pdfplumber.display
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - pdfplumber.display.PageImage._reproject_bbox
    - <builtin>.list
    - pdfplumber.display.PageImage.draw_vline
    - pdfplumber.display.PageImage._reproject
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f8799090ca0>
    - <ast.Name object at 0x7f87990901f0>
    argNames:
    - self
    - location
    - stroke
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 232
    functionName: pdfplumber.display.PageImage.draw_hline
    functionSourceFile: pdfplumber.display
    functionUses: 1
    functionsReached:
    - pdfplumber.display.PageImage._reproject_bbox
    - pdfplumber.display.PageImage._reproject
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f8798f096a0>
    - <ast.Name object at 0x7f8798f09790>
    argNames:
    - self
    - locations
    - stroke
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 242
    functionName: pdfplumber.display.PageImage.draw_hlines
    functionSourceFile: pdfplumber.display
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - pdfplumber.display.PageImage._reproject_bbox
    - pdfplumber.display.PageImage.draw_hline
    - <builtin>.list
    - pdfplumber.display.PageImage._reproject
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Name object at 0x7f8798f09820>
    - <ast.Name object at 0x7f8798f09fd0>
    - <ast.Name object at 0x7f8798f09460>
    argNames:
    - self
    - bbox_or_obj
    - fill
    - stroke
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 252
    functionName: pdfplumber.display.PageImage.draw_rect
    functionSourceFile: pdfplumber.display
    functionUses: 5
    functionsReached:
    - pdfplumber.display.PageImage.draw_line
    - <builtin>.int
    - <builtin>.list
    - <builtin>.max
    - pdfplumber.utils.to_list
    - pdfplumber.display.PageImage._reproject_bbox
    - <builtin>.min
    - <builtin>.isinstance
    - pdfplumber.display.PageImage.draw_lines
    - pdfplumber.display.PageImage._reproject
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Name object at 0x7f8798b4d2b0>
    - <ast.Name object at 0x7f8798b4d880>
    - <ast.Name object at 0x7f8798b4d8e0>
    argNames:
    - self
    - list_of_rects
    - fill
    - stroke
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 285
    functionName: pdfplumber.display.PageImage.draw_rects
    functionSourceFile: pdfplumber.display
    functionUses: 4
    functionsReached:
    - pdfplumber.display.PageImage.draw_line
    - <builtin>.int
    - pdfplumber.display.PageImage.draw_lines
    - <builtin>.list
    - <builtin>.max
    - pdfplumber.utils.to_list
    - pdfplumber.display.PageImage._reproject_bbox
    - <builtin>.min
    - <builtin>.isinstance
    - pdfplumber.display.PageImage.draw_rect
    - pdfplumber.display.PageImage._reproject
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f8798b4d940>
    - <ast.Name object at 0x7f8798b4ddc0>
    - <ast.Name object at 0x7f8798b4d8b0>
    argNames:
    - self
    - center_or_obj
    - radius
    - fill
    - stroke
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 296
    functionName: pdfplumber.display.PageImage.draw_circle
    functionSourceFile: pdfplumber.display
    functionUses: 2
    functionsReached:
    - pdfplumber.display.PageImage._reproject_bbox
    - <builtin>.isinstance
    - pdfplumber.display.PageImage._reproject
    - <builtin>.int
    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 0x7f87994bb130>
    - <ast.Name object at 0x7f87994bbf10>
    - <ast.Name object at 0x7f87994bb4f0>
    argNames:
    - self
    - list_of_circles
    - radius
    - fill
    - stroke
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 313
    functionName: pdfplumber.display.PageImage.draw_circles
    functionSourceFile: pdfplumber.display
    functionUses: 1
    functionsReached:
    - pdfplumber.display.PageImage.draw_circle
    - <builtin>.int
    - pdfplumber.utils.to_list
    - pdfplumber.display.PageImage._reproject_bbox
    - <builtin>.isinstance
    - pdfplumber.display.PageImage._reproject
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Name object at 0x7f87994bb700>
    - <ast.Name object at 0x7f87994bb670>
    - <ast.Constant object at 0x7f87994bb6d0>
    argNames:
    - self
    - table
    - fill
    - stroke
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 324
    functionName: pdfplumber.display.PageImage.debug_table
    functionSourceFile: pdfplumber.display
    functionUses: 1
    functionsReached:
    - pdfplumber.display.PageImage.draw_line
    - <builtin>.int
    - pdfplumber.display.PageImage.draw_lines
    - <builtin>.list
    - <builtin>.max
    - pdfplumber.utils.to_list
    - pdfplumber.display.PageImage._reproject_bbox
    - pdfplumber.display.PageImage.draw_rects
    - <builtin>.min
    - <builtin>.isinstance
    - pdfplumber.display.PageImage.draw_rect
    - pdfplumber.display.PageImage._reproject
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f87990eef70>
    argNames:
    - self
    - table_settings
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 339
    functionName: pdfplumber.display.PageImage.debug_tablefinder
    functionSourceFile: pdfplumber.display
    functionUses: 0
    functionsReached:
    - <builtin>.sum
    - <builtin>.int
    - tables.append
    - pdfplumber.table.intersections_to_cells.find_smallest_cell
    - h_explicit.append
    - pdfplumber.utils.to_list
    - pdfplumber.display.PageImage._reproject_bbox
    - pdfplumber.table.TableFinder.__init__
    - <builtin>.len
    - settings.items
    - pdfplumber.table.join_edge_group
    - <builtin>.map
    - pdfplumber.utils.get_bbox_overlap
    - pdfplumber.table.snap_edges
    - <builtin>.filter
    - remaining_cells.remove
    - pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set
    - pdfplumber.table.TableFinder.get_edges
    - operator.itemgetter
    - current_cells.append
    - joined.append
    - pdfplumber.utils.extract_words
    - <builtin>.set
    - pdfplumber.utils.cluster_objects
    - current_cells.clear
    - <builtin>.getattr
    - pdfplumber.page.Page.debug_tablefinder
    - pdfplumber.display.PageImage.draw_rects
    - current_corners.clear
    - <builtin>.isinstance
    - pdfplumber.table.TableSettings.resolve
    - pdfplumber.display.PageImage.draw_lines
    - pdfplumber.utils.obj_to_edges
    - <builtin>.range
    - pdfplumber.table.intersections_to_cells.edge_connects
    - intersections.keys
    - pdfplumber.page.Page.extract_words
    - pdfplumber.display.PageImage.draw_circles
    - condensed_bboxes.append
    - pdfplumber.table.merge_edges
    - v_explicit.append
    - pdfplumber.table.intersections_to_cells
    - <builtin>.min
    - pdfplumber.display.PageImage.draw_rect
    - pdfplumber.display.PageImage._reproject
    - pdfplumber.utils.snap_objects
    - pdfplumber.display.PageImage.draw_line
    - pdfplumber.table.edges_to_intersections
    - pdfplumber.display.PageImage.draw_circle
    - pdfplumber.table.Table.__init__
    - pdfplumber.table.cells_to_tables
    - itertools.chain
    - itertools.groupby
    - finder.intersections.keys
    - pdfplumber.table.words_to_edges_v
    - pdfplumber.display.PageImage.debug_table
    - pdfplumber.utils.resize_object
    - pdfplumber.table.cells_to_tables.bbox_to_corners
    - <builtin>.max
    - <builtin>.any
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.table.words_to_edges_h
    - pdfplumber.utils.filter_edges
    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: finder.intersections.keys
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Name object at 0x7f8798b1ae80>
    - <ast.Name object at 0x7f8798b1a280>
    - <ast.Name object at 0x7f8798b1a790>
    - <ast.Attribute object at 0x7f8798b1a250>
    - <ast.Attribute object at 0x7f8798b1afa0>
    argNames:
    - self
    - stroke
    - fill
    - stroke_width
    - x_tolerance
    - y_tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 370
    functionName: pdfplumber.display.PageImage.outline_words
    functionSourceFile: pdfplumber.display
    functionUses: 0
    functionsReached:
    - pdfplumber.display.PageImage.draw_line
    - <builtin>.int
    - pdfplumber.page.Page.extract_words
    - pdfplumber.display.PageImage.draw_lines
    - <builtin>.list
    - pdfplumber.utils.extract_words
    - <builtin>.max
    - pdfplumber.utils.to_list
    - pdfplumber.display.PageImage._reproject_bbox
    - pdfplumber.display.PageImage.draw_rects
    - <builtin>.min
    - <builtin>.isinstance
    - pdfplumber.display.PageImage.draw_rect
    - pdfplumber.display.PageImage._reproject
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Tuple object at 0x7f8798b1a1c0>
    - <ast.Tuple object at 0x7f8798a370a0>
    - <ast.Name object at 0x7f8798a37850>
    argNames:
    - self
    - stroke
    - fill
    - stroke_width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 385
    functionName: pdfplumber.display.PageImage.outline_chars
    functionSourceFile: pdfplumber.display
    functionUses: 0
    functionsReached:
    - pdfplumber.display.PageImage.draw_line
    - <builtin>.int
    - pdfplumber.display.PageImage.draw_lines
    - <builtin>.list
    - <builtin>.max
    - pdfplumber.utils.to_list
    - pdfplumber.display.PageImage._reproject_bbox
    - pdfplumber.display.PageImage.draw_rects
    - <builtin>.min
    - <builtin>.isinstance
    - pdfplumber.display.PageImage.draw_rect
    - pdfplumber.display.PageImage._reproject
    - <builtin>.map
    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: 397
    functionName: pdfplumber.display.PageImage._repr_png_
    functionSourceFile: pdfplumber.display
    functionUses: 0
    functionsReached:
    - io.BytesIO
    - io.BytesIO.getvalue
    - pdfplumber.display.PageImage.save
    - out.save
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.getvalue
    functionSourceFile: io
    functionUses: 1
    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: 402
    functionName: pdfplumber.display.PageImage.show
    functionSourceFile: pdfplumber.display
    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: pdfminer.converter
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    - logging.getLogger
    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 0x7f8798c58040>
    - <ast.Constant object at 0x7f8798c58a90>
    argNames:
    - self
    - rsrcmgr
    - pageno
    - laparams
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: pdfminer.converter.PDFLayoutAnalyzer.__init__
    functionSourceFile: pdfminer.converter
    functionUses: 8
    functionsReached:
    - pdfminer.pdfdevice.PDFDevice.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ltpage
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 284
    functionName: pdfminer.converter.PDFPageAggregator.receive_layout
    functionSourceFile: ''
    functionUses: 6
    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
    - stream
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 99
    functionName: pdfminer.converter.PDFLayoutAnalyzer.render_image
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - pdfminer.layout.LTComponent.__init__
    - LTItem.__init__
    - typing.cast.name.get_any
    - <builtin>.type
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.layout.LTImage.__init__
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 7
    IfCount: 6
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - gstate
    - stroke
    - fill
    - evenodd
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 108
    functionName: pdfminer.converter.PDFLayoutAnalyzer.paint_path
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - pdfminer.converter.PDFLayoutAnalyzer.paint_path
    - m.start
    - <builtin>.float
    - shape.count
    - pdfminer.layout.LTRect.__init__
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item
    - <builtin>.len
    - pdfminer.layout.LTLine.__init__
    - pdfminer.layout.LTComponent.__init__
    - pts.pop
    - pdfminer.utils.get_bound
    - <builtin>.str
    - <builtin>.super
    - <builtin>.zip
    - pdfminer.utils.apply_matrix_pt
    - LTItem.__init__
    - pdfminer.layout.LTComponent.set_bbox
    - re.finditer
    - m.end
    - <builtin>.min
    - typing.cast
    - pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path
    - <builtin>.max
    - pdfminer.layout.LTCurve.__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: shape.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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.finditer
    functionSourceFile: re
    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: pts.pop
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 9
    argDefaultValues: []
    argNames:
    - self
    - matrix
    - font
    - fontsize
    - scaling
    - rise
    - cid
    - ncs
    - graphicstate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 233
    functionName: pdfminer.converter.PDFLayoutAnalyzer.render_char
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - pdfminer.utils.apply_matrix_rect
    - font.get_descent
    - pdfminer.layout.LTComponent.__init__
    - font.char_width
    - <builtin>.type
    - <builtin>.isinstance
    - font.char_disp
    - pdfminer.utils.apply_matrix_pt
    - font.to_unichr
    - LTItem.__init__
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.converter.PDFLayoutAnalyzer.handle_undefined_char
    - pdfminer.layout.LTChar.__init__
    - <builtin>.min
    - font.is_vertical
    - log.debug
    - LTText.__init__
    - <builtin>.max
    - <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: font.to_unichr
    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: []
    argNames:
    - self
    - font
    - cid
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 266
    functionName: pdfminer.converter.PDFLayoutAnalyzer.handle_undefined_char
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: font.char_width
    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: font.char_disp
    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
    - ltpage
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 270
    functionName: pdfminer.converter.PDFLayoutAnalyzer.receive_layout
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f8798df4130>
    - <ast.Constant object at 0x7f8798df4b20>
    - <ast.Constant object at 0x7f8798df4fa0>
    argNames:
    - self
    - rsrcmgr
    - outfp
    - codec
    - pageno
    - laparams
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 297
    functionName: pdfminer.converter.PDFConverter.__init__
    functionSourceFile: pdfminer.converter
    functionUses: 4
    functionsReached:
    - pdfminer.pdfdevice.PDFDevice.__init__
    - <builtin>.hasattr
    - <builtin>.getattr
    - pdfminer.converter.PDFConverter._is_binary_stream
    - pdfminer.converter.PDFLayoutAnalyzer.__init__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - outfp
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 311
    functionName: pdfminer.converter.PDFConverter._is_binary_stream
    functionSourceFile: pdfminer.converter
    functionUses: 5
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.hasattr
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f879888b550>
    - <ast.Constant object at 0x7f879888b8b0>
    - <ast.Constant object at 0x7f879888b580>
    - <ast.Constant object at 0x7f879888be80>
    - <ast.Constant object at 0x7f879888b730>
    argNames:
    - self
    - rsrcmgr
    - outfp
    - codec
    - pageno
    - laparams
    - showpageno
    - imagewriter
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 327
    functionName: pdfminer.converter.TextConverter.__init__
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 341
    functionName: pdfminer.converter.TextConverter.write_text
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - text.encode
    - pdfminer.utils.compatible_encode_method
    - <builtin>.type
    - typing.cast.write
    - bytesorstring.decode
    - <builtin>.isinstance
    - typing.cast
    - <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: text.encode
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ltpage
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 348
    functionName: pdfminer.converter.TextConverter.receive_layout
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - io.BytesIO
    - pdfminer.jbig2.JBIG2StreamReader.__init__
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.write_file
    - PIL.ImageChops.invert
    - PIL.Image.frombytes
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - pdfminer.converter.TextConverter.write_text
    - pdfminer.image.ImageWriter._save_bmp
    - pdfminer.image.BMPWriter.__init__
    - <builtin>.callable
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - pdfminer.image.ImageWriter._save_jpeg2000
    - pdfminer.image.ImageWriter.export_image
    - i.save
    - pdfminer.image.align32
    - global_streams.append
    - <builtin>.len
    - img.save
    - pdfminer.jbig2.JBIG2StreamWriter.__init__
    - pdfminer.converter.TextConverter.receive_layout.render
    - struct.pack
    - pdfminer.image.ImageWriter._is_jbig2_iamge
    - pdfminer.image.ImageWriter._save_jbig2
    - image.stream.get_data
    - io.BytesIO.read
    - pdfminer.utils.compatible_encode_method
    - io.BytesIO.write
    - <builtin>.type
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - inverted.convert
    - os.path.join
    - PIL.ImageOps.invert
    - <builtin>.getattr
    - <builtin>.range
    - bytesorstring.decode
    - <builtin>.isinstance
    - os.path.exists
    - segments.append
    - pdfminer.image.ImageWriter._create_unique_image_name
    - item.get_text
    - pdfminer.jbig2.JBIG2StreamReader.get_segments
    - pdfminer.image.ImageWriter._save_jpeg
    - image.stream.get_filters
    - typing.cast.write
    - pdfminer.image.ImageWriter._save_raw
    - struct.unpack
    - pdfminer.image.BMPWriter.write_line
    - typing.cast
    - pdfminer.image.ImageWriter._save_bytes
    - <builtin>.open
    - text.encode
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - io.BytesIO.seek
    - segment.get
    - PIL.Image.open
    - fp.write
    - rgb_img.save
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - item
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 349
    functionName: pdfminer.converter.TextConverter.receive_layout.render
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - io.BytesIO
    - pdfminer.jbig2.JBIG2StreamReader.__init__
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.write_file
    - PIL.ImageChops.invert
    - PIL.Image.frombytes
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - pdfminer.converter.TextConverter.write_text
    - pdfminer.image.ImageWriter._save_bmp
    - pdfminer.image.BMPWriter.__init__
    - <builtin>.callable
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - pdfminer.image.ImageWriter._save_jpeg2000
    - pdfminer.image.ImageWriter.export_image
    - i.save
    - pdfminer.image.align32
    - global_streams.append
    - <builtin>.len
    - img.save
    - pdfminer.jbig2.JBIG2StreamWriter.__init__
    - pdfminer.converter.TextConverter.receive_layout.render
    - struct.pack
    - pdfminer.image.ImageWriter._is_jbig2_iamge
    - pdfminer.image.ImageWriter._save_jbig2
    - image.stream.get_data
    - io.BytesIO.read
    - pdfminer.utils.compatible_encode_method
    - io.BytesIO.write
    - <builtin>.type
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - inverted.convert
    - os.path.join
    - PIL.ImageOps.invert
    - <builtin>.getattr
    - <builtin>.range
    - bytesorstring.decode
    - <builtin>.isinstance
    - os.path.exists
    - segments.append
    - pdfminer.image.ImageWriter._create_unique_image_name
    - item.get_text
    - pdfminer.jbig2.JBIG2StreamReader.get_segments
    - pdfminer.image.ImageWriter._save_jpeg
    - image.stream.get_filters
    - typing.cast.write
    - pdfminer.image.ImageWriter._save_raw
    - struct.unpack
    - pdfminer.image.BMPWriter.write_line
    - typing.cast
    - pdfminer.image.ImageWriter._save_bytes
    - <builtin>.open
    - text.encode
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - io.BytesIO.seek
    - segment.get
    - PIL.Image.open
    - fp.write
    - rgb_img.save
    - <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: item.get_text
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - image
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 106
    functionName: pdfminer.image.ImageWriter.export_image
    functionSourceFile: pdfminer.image
    functionUses: 7
    functionsReached:
    - io.BytesIO
    - pdfminer.jbig2.JBIG2StreamReader.__init__
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.write_file
    - PIL.ImageChops.invert
    - PIL.Image.frombytes
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - pdfminer.image.BMPWriter.__init__
    - pdfminer.image.ImageWriter._save_bmp
    - <builtin>.callable
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - i.save
    - pdfminer.image.ImageWriter._save_jpeg2000
    - pdfminer.image.align32
    - global_streams.append
    - <builtin>.len
    - img.save
    - pdfminer.jbig2.JBIG2StreamWriter.__init__
    - struct.pack
    - pdfminer.image.ImageWriter._is_jbig2_iamge
    - pdfminer.image.ImageWriter._save_jbig2
    - image.stream.get_data
    - io.BytesIO.read
    - io.BytesIO.write
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - inverted.convert
    - os.path.join
    - PIL.ImageOps.invert
    - <builtin>.getattr
    - <builtin>.range
    - os.path.exists
    - segments.append
    - pdfminer.image.ImageWriter._create_unique_image_name
    - pdfminer.jbig2.JBIG2StreamReader.get_segments
    - pdfminer.image.ImageWriter._save_jpeg
    - image.stream.get_filters
    - pdfminer.image.ImageWriter._save_raw
    - struct.unpack
    - pdfminer.image.BMPWriter.write_line
    - typing.cast
    - pdfminer.image.ImageWriter._save_bytes
    - <builtin>.open
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - io.BytesIO.seek
    - segment.get
    - PIL.Image.open
    - fp.write
    - rgb_img.save
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 15
    argDefaultValues:
    - <ast.Constant object at 0x7f8798a303d0>
    - <ast.Constant object at 0x7f8798a304c0>
    - <ast.Constant object at 0x7f8798a30430>
    - <ast.Constant object at 0x7f8798a30370>
    - <ast.Constant object at 0x7f8798a30ac0>
    - <ast.Constant object at 0x7f8798a305e0>
    - <ast.Constant object at 0x7f8798a30f40>
    - <ast.Constant object at 0x7f8798a30d00>
    - <ast.Constant object at 0x7f8798a30b20>
    - <ast.Constant object at 0x7f8798a30400>
    - <ast.Constant object at 0x7f8798a30640>
    - <ast.Constant object at 0x7f8798a30e20>
    argNames:
    - self
    - rsrcmgr
    - outfp
    - codec
    - pageno
    - laparams
    - scale
    - fontscale
    - layoutmode
    - showpageno
    - pagemargin
    - imagewriter
    - debug
    - rect_colors
    - text_colors
    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
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 398
    functionName: pdfminer.converter.HTMLConverter.__init__
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - pdfminer.pdfdevice.PDFDevice.__init__
    - pdfminer.converter.HTMLConverter.write_header
    - pdfminer.converter.HTMLConverter.write
    - <builtin>.hasattr
    - pdfminer.converter.PDFLayoutAnalyzer.__init__
    - html.escape.encode
    - pdfminer.converter.PDFConverter.__init__
    - typing.cast.write
    - pdfminer.converter.PDFConverter._is_binary_stream
    - <builtin>.getattr
    - <builtin>.isinstance
    - typing.cast
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 457
    functionName: pdfminer.converter.HTMLConverter.write_header
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - typing.cast
    - html.escape.encode
    - pdfminer.converter.HTMLConverter.write
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 451
    functionName: pdfminer.converter.HTMLConverter.write
    functionSourceFile: pdfminer.converter
    functionUses: 17
    functionsReached:
    - typing.cast
    - html.escape.encode
    - typing.cast.write
    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: 469
    functionName: pdfminer.converter.HTMLConverter.write_footer
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - pdfminer.converter.HTMLConverter.write
    - html.escape.encode
    - typing.cast.write
    - <builtin>.range
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 478
    functionName: pdfminer.converter.HTMLConverter.write_text
    functionSourceFile: pdfminer.converter
    functionUses: 4
    functionsReached:
    - pdfminer.utils.enc
    - pdfminer.converter.HTMLConverter.write
    - html.escape.encode
    - typing.cast.write
    - <builtin>.isinstance
    - html.escape
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - color
    - borderwidth
    - x
    - y
    - w
    - h
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 481
    functionName: pdfminer.converter.HTMLConverter.place_rect
    functionSourceFile: pdfminer.converter
    functionUses: 4
    functionsReached:
    - typing.cast
    - html.escape.encode
    - pdfminer.converter.HTMLConverter.write
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - color
    - borderwidth
    - item
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 502
    functionName: pdfminer.converter.HTMLConverter.place_border
    functionSourceFile: pdfminer.converter
    functionUses: 3
    functionsReached:
    - pdfminer.converter.HTMLConverter.write
    - html.escape.encode
    - typing.cast.write
    - pdfminer.converter.HTMLConverter.place_rect
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - item
    - borderwidth
    - x
    - y
    - w
    - h
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 505
    functionName: pdfminer.converter.HTMLConverter.place_image
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - io.BytesIO
    - pdfminer.jbig2.JBIG2StreamReader.__init__
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.write_file
    - PIL.ImageChops.invert
    - PIL.Image.frombytes
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - pdfminer.converter.HTMLConverter.write
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - pdfminer.image.BMPWriter.__init__
    - pdfminer.image.ImageWriter._save_bmp
    - <builtin>.callable
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - i.save
    - pdfminer.image.ImageWriter._save_jpeg2000
    - pdfminer.image.ImageWriter.export_image
    - pdfminer.image.align32
    - global_streams.append
    - <builtin>.len
    - html.escape
    - img.save
    - pdfminer.jbig2.JBIG2StreamWriter.__init__
    - struct.pack
    - pdfminer.image.ImageWriter._is_jbig2_iamge
    - pdfminer.image.ImageWriter._save_jbig2
    - image.stream.get_data
    - io.BytesIO.read
    - io.BytesIO.write
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - inverted.convert
    - html.escape.encode
    - os.path.join
    - PIL.ImageOps.invert
    - <builtin>.getattr
    - <builtin>.range
    - <builtin>.isinstance
    - os.path.exists
    - segments.append
    - pdfminer.utils.enc
    - pdfminer.image.ImageWriter._create_unique_image_name
    - pdfminer.jbig2.JBIG2StreamReader.get_segments
    - pdfminer.image.ImageWriter._save_jpeg
    - image.stream.get_filters
    - typing.cast.write
    - pdfminer.image.ImageWriter._save_raw
    - struct.unpack
    - pdfminer.image.BMPWriter.write_line
    - typing.cast
    - pdfminer.image.ImageWriter._save_bytes
    - <builtin>.open
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - io.BytesIO.seek
    - segment.get
    - PIL.Image.open
    - fp.write
    - rgb_img.save
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - color
    - text
    - x
    - y
    - size
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 526
    functionName: pdfminer.converter.HTMLConverter.place_text
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - pdfminer.utils.enc
    - pdfminer.converter.HTMLConverter.write
    - html.escape.encode
    - typing.cast.write
    - pdfminer.converter.HTMLConverter.write_text
    - <builtin>.isinstance
    - html.escape
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f879888f7f0>
    argNames:
    - self
    - color
    - borderwidth
    - x
    - y
    - w
    - h
    - writing_mode
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 547
    functionName: pdfminer.converter.HTMLConverter.begin_div
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - typing.cast
    - html.escape.encode
    - pdfminer.converter.HTMLConverter.write
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - color
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 570
    functionName: pdfminer.converter.HTMLConverter.end_div
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - typing.cast
    - html.escape.encode
    - pdfminer.converter.HTMLConverter.write
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - text
    - fontname
    - fontsize
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 576
    functionName: pdfminer.converter.HTMLConverter.put_text
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - pdfminer.utils.enc
    - pdfminer.converter.HTMLConverter.write
    - fontname.split
    - html.escape.encode
    - typing.cast.write
    - pdfminer.converter.HTMLConverter.write_text
    - <builtin>.isinstance
    - html.escape
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fontname.split
    functionSourceFile: <builtin>
    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: 2
    functionLinenumber: 591
    functionName: pdfminer.converter.HTMLConverter.put_newline
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - typing.cast
    - html.escape.encode
    - pdfminer.converter.HTMLConverter.write
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ltpage
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 594
    functionName: pdfminer.converter.HTMLConverter.receive_layout
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - io.BytesIO
    - pdfminer.jbig2.JBIG2StreamReader.__init__
    - pdfminer.converter.HTMLConverter.place_image
    - pdfminer.converter.HTMLConverter.receive_layout.render
    - PIL.Image.frombytes
    - PIL.ImageChops.invert
    - pdfminer.jbig2.JBIG2StreamWriter.write_file
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - pdfminer.converter.HTMLConverter.write
    - pdfminer.converter.HTMLConverter.put_text
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - pdfminer.image.BMPWriter.__init__
    - pdfminer.image.ImageWriter._save_bmp
    - <builtin>.callable
    - i.save
    - pdfminer.utils.make_compat_str
    - pdfminer.image.align32
    - pdfminer.image.ImageWriter.export_image
    - pdfminer.image.ImageWriter._save_jpeg2000
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - global_streams.append
    - <builtin>.len
    - html.escape
    - img.save
    - struct.pack
    - pdfminer.jbig2.JBIG2StreamWriter.__init__
    - pdfminer.image.ImageWriter._is_jbig2_iamge
    - pdfminer.image.ImageWriter._save_jbig2
    - pdfminer.converter.HTMLConverter.receive_layout.show_group
    - image.stream.get_data
    - pdfminer.converter.HTMLConverter.place_border
    - io.BytesIO.read
    - rgb_img.save
    - io.BytesIO.write
    - inverted.convert
    - html.escape.encode
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - os.path.join
    - PIL.ImageOps.invert
    - pdfminer.converter.HTMLConverter.write_text
    - <builtin>.getattr
    - <builtin>.range
    - <builtin>.isinstance
    - pdfminer.converter.HTMLConverter.place_text
    - os.path.exists
    - segments.append
    - pdfminer.utils.enc
    - pdfminer.image.ImageWriter._create_unique_image_name
    - item.get_text
    - fontname.split
    - pdfminer.jbig2.JBIG2StreamReader.get_segments
    - pdfminer.image.ImageWriter._save_jpeg
    - typing.cast.write
    - image.stream.get_filters
    - pdfminer.image.ImageWriter._save_raw
    - struct.unpack
    - pdfminer.converter.HTMLConverter.place_rect
    - pdfminer.image.BMPWriter.write_line
    - pdfminer.converter.HTMLConverter.begin_div
    - pdfminer.image.ImageWriter._save_bytes
    - typing.cast
    - <builtin>.open
    - pdfminer.converter.HTMLConverter.end_div
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - io.BytesIO.seek
    - segment.get
    - charset_normalizer.detect
    - o.decode
    - item.get_writing_mode
    - PIL.Image.open
    - fp.write
    - pdfminer.converter.HTMLConverter.put_newline
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - item
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 595
    functionName: pdfminer.converter.HTMLConverter.receive_layout.show_group
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - pdfminer.converter.HTMLConverter.receive_layout.show_group
    - pdfminer.converter.HTMLConverter.write
    - html.escape.encode
    - typing.cast.write
    - pdfminer.converter.HTMLConverter.place_border
    - pdfminer.converter.HTMLConverter.place_rect
    - <builtin>.isinstance
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 22
    ICount: 24
    IfCount: 15
    argCount: 1
    argDefaultValues: []
    argNames:
    - item
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 601
    functionName: pdfminer.converter.HTMLConverter.receive_layout.render
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - io.BytesIO
    - pdfminer.jbig2.JBIG2StreamReader.__init__
    - pdfminer.converter.HTMLConverter.place_image
    - pdfminer.converter.HTMLConverter.receive_layout.render
    - PIL.Image.frombytes
    - PIL.ImageChops.invert
    - pdfminer.jbig2.JBIG2StreamWriter.write_file
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - pdfminer.converter.HTMLConverter.write
    - pdfminer.converter.HTMLConverter.put_text
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - pdfminer.image.BMPWriter.__init__
    - pdfminer.image.ImageWriter._save_bmp
    - <builtin>.callable
    - i.save
    - pdfminer.utils.make_compat_str
    - pdfminer.image.align32
    - pdfminer.image.ImageWriter.export_image
    - pdfminer.image.ImageWriter._save_jpeg2000
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - global_streams.append
    - <builtin>.len
    - html.escape
    - img.save
    - struct.pack
    - pdfminer.jbig2.JBIG2StreamWriter.__init__
    - pdfminer.image.ImageWriter._is_jbig2_iamge
    - pdfminer.image.ImageWriter._save_jbig2
    - pdfminer.converter.HTMLConverter.receive_layout.show_group
    - image.stream.get_data
    - pdfminer.converter.HTMLConverter.place_border
    - io.BytesIO.read
    - rgb_img.save
    - io.BytesIO.write
    - inverted.convert
    - html.escape.encode
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - os.path.join
    - PIL.ImageOps.invert
    - pdfminer.converter.HTMLConverter.write_text
    - <builtin>.getattr
    - <builtin>.range
    - <builtin>.isinstance
    - pdfminer.converter.HTMLConverter.place_text
    - os.path.exists
    - segments.append
    - pdfminer.utils.enc
    - pdfminer.image.ImageWriter._create_unique_image_name
    - item.get_text
    - fontname.split
    - pdfminer.jbig2.JBIG2StreamReader.get_segments
    - pdfminer.image.ImageWriter._save_jpeg
    - typing.cast.write
    - image.stream.get_filters
    - pdfminer.image.ImageWriter._save_raw
    - struct.unpack
    - pdfminer.converter.HTMLConverter.place_rect
    - pdfminer.image.BMPWriter.write_line
    - pdfminer.converter.HTMLConverter.begin_div
    - pdfminer.image.ImageWriter._save_bytes
    - typing.cast
    - <builtin>.open
    - pdfminer.converter.HTMLConverter.end_div
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - io.BytesIO.seek
    - segment.get
    - charset_normalizer.detect
    - o.decode
    - item.get_writing_mode
    - PIL.Image.open
    - fp.write
    - pdfminer.converter.HTMLConverter.put_newline
    - <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: item.get_writing_mode
    functionSourceFile: <builtin>
    functionUses: 2
    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: 3
    functionLinenumber: 680
    functionName: pdfminer.converter.HTMLConverter.close
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - pdfminer.converter.HTMLConverter.write_footer
    - pdfminer.converter.HTMLConverter.write
    - html.escape.encode
    - typing.cast.write
    - <builtin>.range
    - typing.cast
    linkageType: 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: pdfminer.converter.XMLConverter
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f87996eb670>
    - <ast.Constant object at 0x7f87996eb820>
    - <ast.Constant object at 0x7f87996eb700>
    - <ast.Constant object at 0x7f87996eb070>
    - <ast.Constant object at 0x7f87996eb0a0>
    argNames:
    - self
    - rsrcmgr
    - outfp
    - codec
    - pageno
    - laparams
    - imagewriter
    - stripcontrol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 687
    functionName: pdfminer.converter.XMLConverter.__init__
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - pdfminer.pdfdevice.PDFDevice.__init__
    - pdfminer.converter.XMLConverter.write
    - <builtin>.hasattr
    - pdfminer.converter.PDFLayoutAnalyzer.__init__
    - html.escape.encode
    - pdfminer.converter.XMLConverter.write_header
    - pdfminer.converter.PDFConverter.__init__
    - typing.cast.write
    - pdfminer.converter.PDFConverter._is_binary_stream
    - <builtin>.getattr
    - <builtin>.isinstance
    - typing.cast
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 720
    functionName: pdfminer.converter.XMLConverter.write_header
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - typing.cast
    - pdfminer.converter.XMLConverter.write
    - html.escape.encode
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 714
    functionName: pdfminer.converter.XMLConverter.write
    functionSourceFile: pdfminer.converter
    functionUses: 9
    functionsReached:
    - typing.cast
    - html.escape.encode
    - typing.cast.write
    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: 727
    functionName: pdfminer.converter.XMLConverter.write_footer
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - typing.cast
    - pdfminer.converter.XMLConverter.write
    - html.escape.encode
    - typing.cast.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 730
    functionName: pdfminer.converter.XMLConverter.write_text
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - pdfminer.converter.XMLConverter.write
    - pdfminer.utils.enc
    - html.escape.encode
    - typing.cast.write
    - <builtin>.isinstance
    - html.escape
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ltpage
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 735
    functionName: pdfminer.converter.XMLConverter.receive_layout
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - io.BytesIO
    - pdfminer.jbig2.JBIG2StreamReader.__init__
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.write_file
    - PIL.ImageChops.invert
    - PIL.Image.frombytes
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - pdfminer.converter.XMLConverter.write
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - pdfminer.image.BMPWriter.__init__
    - pdfminer.image.ImageWriter._save_bmp
    - <builtin>.callable
    - i.save
    - pdfminer.image.align32
    - pdfminer.image.ImageWriter._save_jpeg2000
    - pdfminer.image.ImageWriter.export_image
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - item.get_pts
    - pdfminer.utils.bbox2str
    - <builtin>.len
    - html.escape
    - global_streams.append
    - img.save
    - struct.pack
    - pdfminer.jbig2.JBIG2StreamWriter.__init__
    - pdfminer.image.ImageWriter._is_jbig2_iamge
    - pdfminer.image.ImageWriter._save_jbig2
    - image.stream.get_data
    - io.BytesIO.read
    - io.BytesIO.write
    - inverted.convert
    - html.escape.encode
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - os.path.join
    - PIL.ImageOps.invert
    - <builtin>.getattr
    - <builtin>.range
    - <builtin>.isinstance
    - os.path.exists
    - segments.append
    - pdfminer.utils.enc
    - pdfminer.image.ImageWriter._create_unique_image_name
    - item.get_text
    - pdfminer.jbig2.JBIG2StreamReader.get_segments
    - pdfminer.image.ImageWriter._save_jpeg
    - typing.cast.write
    - image.stream.get_filters
    - pdfminer.image.ImageWriter._save_raw
    - struct.unpack
    - pdfminer.image.BMPWriter.write_line
    - typing.cast
    - pdfminer.image.ImageWriter._save_bytes
    - pdfminer.converter.XMLConverter.receive_layout.show_group
    - pdfminer.converter.XMLConverter.write_text
    - <builtin>.open
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - io.BytesIO.seek
    - segment.get
    - PIL.Image.open
    - fp.write
    - rgb_img.save
    - pdfminer.converter.XMLConverter.receive_layout.render
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - item
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 736
    functionName: pdfminer.converter.XMLConverter.receive_layout.show_group
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - pdfminer.converter.XMLConverter.receive_layout.show_group
    - pdfminer.utils.bbox2str
    - pdfminer.converter.XMLConverter.write
    - html.escape.encode
    - typing.cast.write
    - <builtin>.isinstance
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 24
    IfCount: 13
    argCount: 1
    argDefaultValues: []
    argNames:
    - item
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 747
    functionName: pdfminer.converter.XMLConverter.receive_layout.render
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - io.BytesIO
    - pdfminer.jbig2.JBIG2StreamReader.__init__
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.write_file
    - PIL.ImageChops.invert
    - PIL.Image.frombytes
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - pdfminer.converter.XMLConverter.write
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - pdfminer.image.BMPWriter.__init__
    - pdfminer.image.ImageWriter._save_bmp
    - <builtin>.callable
    - i.save
    - pdfminer.image.align32
    - pdfminer.image.ImageWriter._save_jpeg2000
    - pdfminer.image.ImageWriter.export_image
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - item.get_pts
    - pdfminer.utils.bbox2str
    - <builtin>.len
    - html.escape
    - global_streams.append
    - img.save
    - struct.pack
    - pdfminer.jbig2.JBIG2StreamWriter.__init__
    - pdfminer.image.ImageWriter._is_jbig2_iamge
    - pdfminer.image.ImageWriter._save_jbig2
    - image.stream.get_data
    - io.BytesIO.read
    - io.BytesIO.write
    - inverted.convert
    - html.escape.encode
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - os.path.join
    - PIL.ImageOps.invert
    - <builtin>.getattr
    - <builtin>.range
    - <builtin>.isinstance
    - os.path.exists
    - segments.append
    - pdfminer.utils.enc
    - pdfminer.image.ImageWriter._create_unique_image_name
    - item.get_text
    - pdfminer.jbig2.JBIG2StreamReader.get_segments
    - pdfminer.image.ImageWriter._save_jpeg
    - typing.cast.write
    - image.stream.get_filters
    - pdfminer.image.ImageWriter._save_raw
    - struct.unpack
    - pdfminer.image.BMPWriter.write_line
    - typing.cast
    - pdfminer.image.ImageWriter._save_bytes
    - pdfminer.converter.XMLConverter.receive_layout.show_group
    - pdfminer.converter.XMLConverter.write_text
    - <builtin>.open
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - io.BytesIO.seek
    - segment.get
    - PIL.Image.open
    - fp.write
    - rgb_img.save
    - pdfminer.converter.XMLConverter.receive_layout.render
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - AssertionError
    returnType: N/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.get_pts
    functionSourceFile: <builtin>
    functionUses: 2
    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: 3
    functionLinenumber: 838
    functionName: pdfminer.converter.XMLConverter.close
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - pdfminer.converter.XMLConverter.write_footer
    - pdfminer.converter.XMLConverter.write
    - html.escape.encode
    - typing.cast.write
    - typing.cast
    linkageType: 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: pdfminer.converter.HOCRConverter
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f8798d61f70>
    - <ast.Constant object at 0x7f8798d61d30>
    - <ast.Constant object at 0x7f8798d61280>
    - <ast.Constant object at 0x7f8798d61c10>
    argNames:
    - self
    - rsrcmgr
    - outfp
    - codec
    - pageno
    - laparams
    - stripcontrol
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 861
    functionName: pdfminer.converter.HOCRConverter.__init__
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - pdfminer.pdfdevice.PDFDevice.__init__
    - text.encode
    - <builtin>.hasattr
    - pdfminer.converter.PDFLayoutAnalyzer.__init__
    - pdfminer.converter.HOCRConverter.write_header
    - pdfminer.converter.PDFConverter._is_binary_stream
    - typing.cast.write
    - pdfminer.converter.PDFConverter.__init__
    - pdfminer.converter.HOCRConverter.write
    - <builtin>.getattr
    - <builtin>.isinstance
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 9
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 898
    functionName: pdfminer.converter.HOCRConverter.write_header
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - typing.cast.write
    - typing.cast
    - text.encode
    - pdfminer.converter.HOCRConverter.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 882
    functionName: pdfminer.converter.HOCRConverter.bbox_repr
    functionSourceFile: pdfminer.converter
    functionUses: 3
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 891
    functionName: pdfminer.converter.HOCRConverter.write
    functionSourceFile: pdfminer.converter
    functionUses: 9
    functionsReached:
    - typing.cast
    - text.encode
    - typing.cast.write
    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: 923
    functionName: pdfminer.converter.HOCRConverter.write_footer
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - typing.cast.write
    - typing.cast
    - text.encode
    - pdfminer.converter.HOCRConverter.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 929
    functionName: pdfminer.converter.HOCRConverter.write_text
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - typing.cast.write
    - typing.cast
    - text.encode
    - pdfminer.converter.HOCRConverter.write
    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: 934
    functionName: pdfminer.converter.HOCRConverter.write_word
    functionSourceFile: pdfminer.converter
    functionUses: 2
    functionsReached:
    - text.encode
    - <builtin>.int
    - pdfminer.converter.HOCRConverter.bbox_repr
    - typing.cast.write
    - pdfminer.converter.HOCRConverter.write
    - <builtin>.len
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ltpage
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 953
    functionName: pdfminer.converter.HOCRConverter.receive_layout
    functionSourceFile: pdfminer.converter
    functionUses: 0
    functionsReached:
    - text.encode
    - <builtin>.int
    - pdfminer.converter.HOCRConverter.bbox_repr
    - pdfminer.converter.HOCRConverter.write_word
    - pdfminer.converter.HOCRConverter.receive_layout.render
    - item.get_text
    - pdfminer.converter.HOCRConverter.write
    - typing.cast.write
    - <builtin>.isinstance
    - <builtin>.len
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 13
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - item
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 954
    functionName: pdfminer.converter.HOCRConverter.receive_layout.render
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - text.encode
    - <builtin>.int
    - pdfminer.converter.HOCRConverter.bbox_repr
    - pdfminer.converter.HOCRConverter.write_word
    - pdfminer.converter.HOCRConverter.receive_layout.render
    - item.get_text
    - pdfminer.converter.HOCRConverter.write
    - typing.cast.write
    - <builtin>.isinstance
    - <builtin>.len
    - typing.cast
    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: 3
    functionLinenumber: 1015
    functionName: pdfminer.converter.HOCRConverter.close
    functionSourceFile: pdfminer.converter
    functionUses: 1
    functionsReached:
    - text.encode
    - pdfminer.converter.HOCRConverter.write_footer
    - typing.cast.write
    - pdfminer.converter.HOCRConverter.write
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfminer.image
    functionSourceFile: pdfminer.image
    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:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 31
    functionName: pdfminer.image.align32
    functionSourceFile: pdfminer.image
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - fp
    - bits
    - width
    - height
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: pdfminer.image.BMPWriter.__init__
    functionSourceFile: pdfminer.image
    functionUses: 9
    functionsReached:
    - struct.pack
    - pdfminer.image.align32
    - <builtin>.range
    - <builtin>.len
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - y
    - data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 90
    functionName: pdfminer.image.BMPWriter.write_line
    functionSourceFile: pdfminer.image
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - outdir
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 101
    functionName: pdfminer.image.ImageWriter.__init__
    functionSourceFile: pdfminer.image
    functionUses: 1
    functionsReached:
    - os.makedirs
    - os.path.exists
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.makedirs
    functionSourceFile: os
    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: image.stream.get_filters
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - image
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 237
    functionName: pdfminer.image.ImageWriter._save_bytes
    functionSourceFile: pdfminer.image
    functionUses: 8
    functionsReached:
    - <builtin>.open
    - PIL.Image.frombytes
    - os.path.exists
    - image.stream.get_data
    - pdfminer.image.ImageWriter._create_unique_image_name
    - os.path.join
    - PIL.ImageOps.invert
    - <builtin>.len
    - img.save
    linkageType: pythonLinkage
    raised:
    - ImportError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - image
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 147
    functionName: pdfminer.image.ImageWriter._save_jpeg
    functionSourceFile: pdfminer.image
    functionUses: 8
    functionsReached:
    - io.BytesIO
    - <builtin>.open
    - PIL.ImageChops.invert
    - os.path.exists
    - image.stream.get_data
    - pdfminer.image.ImageWriter._create_unique_image_name
    - inverted.convert
    - os.path.join
    - PIL.Image.open
    - fp.write
    - rgb_img.save
    linkageType: pythonLinkage
    raised:
    - ImportError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - image
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 169
    functionName: pdfminer.image.ImageWriter._save_jpeg2000
    functionSourceFile: pdfminer.image
    functionUses: 8
    functionsReached:
    - io.BytesIO
    - <builtin>.open
    - os.path.exists
    - image.stream.get_data
    - pdfminer.image.ImageWriter._create_unique_image_name
    - os.path.join
    - i.save
    - PIL.Image.open
    linkageType: pythonLinkage
    raised:
    - ImportError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - image
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 279
    functionName: pdfminer.image.ImageWriter._is_jbig2_iamge
    functionSourceFile: pdfminer.image
    functionUses: 8
    functionsReached:
    - image.stream.get_filters
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - image
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 189
    functionName: pdfminer.image.ImageWriter._save_jbig2
    functionSourceFile: pdfminer.image
    functionUses: 8
    functionsReached:
    - io.BytesIO
    - pdfminer.jbig2.JBIG2StreamReader.__init__
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.write_file
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - <builtin>.callable
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - global_streams.append
    - <builtin>.len
    - pdfminer.jbig2.JBIG2StreamWriter.__init__
    - struct.pack
    - image.stream.get_data
    - io.BytesIO.read
    - io.BytesIO.write
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - os.path.join
    - <builtin>.getattr
    - os.path.exists
    - segments.append
    - pdfminer.image.ImageWriter._create_unique_image_name
    - pdfminer.jbig2.JBIG2StreamReader.get_segments
    - image.stream.get_filters
    - struct.unpack
    - typing.cast
    - <builtin>.open
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - io.BytesIO.seek
    - segment.get
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - image
    - width
    - height
    - bytes_per_line
    - bits
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 218
    functionName: pdfminer.image.ImageWriter._save_bmp
    functionSourceFile: pdfminer.image
    functionUses: 8
    functionsReached:
    - struct.pack
    - <builtin>.open
    - os.path.exists
    - image.stream.get_data
    - pdfminer.image.ImageWriter._create_unique_image_name
    - pdfminer.image.BMPWriter.__init__
    - os.path.join
    - pdfminer.image.align32
    - <builtin>.range
    - pdfminer.image.BMPWriter.write_line
    - <builtin>.len
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - image
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 269
    functionName: pdfminer.image.ImageWriter._save_raw
    functionSourceFile: pdfminer.image
    functionUses: 8
    functionsReached:
    - <builtin>.open
    - os.path.exists
    - image.stream.get_data
    - pdfminer.image.ImageWriter._create_unique_image_name
    - os.path.join
    - fp.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: image.stream.get_data
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - image
    - ext
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 286
    functionName: pdfminer.image.ImageWriter._create_unique_image_name
    functionSourceFile: pdfminer.image
    functionUses: 14
    functionsReached:
    - os.path.join
    - os.path.exists
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: PIL.Image.open
    functionSourceFile: PIL
    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: PIL.ImageChops.invert
    functionSourceFile: PIL
    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: inverted.convert
    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: rgb_img.save
    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: fp.write
    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: i.save
    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: global_streams.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: io.BytesIO.write
    functionSourceFile: io
    functionUses: 9
    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: 81
    functionName: pdfminer.jbig2.JBIG2StreamReader.__init__
    functionSourceFile: ''
    functionUses: 9
    functionsReached: []
    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: 84
    functionName: pdfminer.jbig2.JBIG2StreamReader.get_segments
    functionSourceFile: pdfminer.jbig2
    functionUses: 9
    functionsReached:
    - segments.append
    - io.BytesIO.read
    - io.BytesIO.seek
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - segment.get
    - <builtin>.callable
    - pdfminer.jbig2.JBIG2StreamReader.is_eof
    - <builtin>.getattr
    - struct.unpack
    - <builtin>.len
    - typing.cast
    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: 203
    functionName: pdfminer.jbig2.JBIG2StreamWriter.__init__
    functionSourceFile: ''
    functionUses: 9
    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 0x7f8798ceadf0>
    argNames:
    - self
    - segments
    - fix_last_page
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 241
    functionName: pdfminer.jbig2.JBIG2StreamWriter.write_file
    functionSourceFile: pdfminer.jbig2
    functionUses: 9
    functionsReached:
    - struct.pack
    - pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - pdfminer.jbig2.JBIG2StreamWriter.write_segments
    - segment.get
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - <builtin>.callable
    - <builtin>.getattr
    - <builtin>.len
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: PIL.Image.frombytes
    functionSourceFile: PIL
    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: PIL.ImageOps.invert
    functionSourceFile: PIL
    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: img.save
    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: pdfminer.jbig2
    functionSourceFile: pdfminer.jbig2
    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:
    - bit_pos
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 40
    functionName: pdfminer.jbig2.bit_set
    functionSourceFile: pdfminer.jbig2
    functionUses: 6
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - flag
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 44
    functionName: pdfminer.jbig2.check_flag
    functionSourceFile: pdfminer.jbig2
    functionUses: 1
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - mask
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: pdfminer.jbig2.masked_value
    functionSourceFile: pdfminer.jbig2
    functionUses: 2
    functionsReached:
    - <builtin>.bool
    - <builtin>.range
    - pdfminer.jbig2.bit_set
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - mask
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 56
    functionName: pdfminer.jbig2.mask_value
    functionSourceFile: pdfminer.jbig2
    functionUses: 2
    functionsReached:
    - <builtin>.bool
    - <builtin>.range
    - pdfminer.jbig2.bit_set
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - format
    - buffer
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: pdfminer.jbig2.unpack_int
    functionSourceFile: pdfminer.jbig2
    functionUses: 12
    functionsReached:
    - struct.unpack
    - typing.cast
    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: 104
    functionName: pdfminer.jbig2.JBIG2StreamReader.is_eof
    functionSourceFile: pdfminer.jbig2
    functionUses: 10
    functionsReached:
    - io.BytesIO.read
    - io.BytesIO.seek
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: struct.calcsize
    functionSourceFile: struct
    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: <builtin>.callable
    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: 0
    functionLinenumber: -1
    functionName: segment.get
    functionSourceFile: <builtin>
    functionUses: 14
    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: segments.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: 4
    argDefaultValues: []
    argNames:
    - self
    - segment
    - flags
    - field
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 111
    functionName: pdfminer.jbig2.JBIG2StreamReader.parse_flags
    functionSourceFile: pdfminer.jbig2
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    - pdfminer.jbig2.masked_value
    - pdfminer.jbig2.check_flag
    - pdfminer.jbig2.bit_set
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - segment
    - flags
    - field
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 123
    functionName: pdfminer.jbig2.JBIG2StreamReader.parse_retention_flags
    functionSourceFile: pdfminer.jbig2
    functionUses: 0
    functionsReached:
    - retain_segments.append
    - <builtin>.bool
    - ref_segments.append
    - pdfminer.jbig2.masked_value
    - io.BytesIO.read
    - struct.calcsize
    - pdfminer.jbig2.unpack_int
    - struct.unpack
    - pdfminer.jbig2.bit_set
    - <builtin>.range
    - <builtin>.isinstance
    - math.ceil
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: retain_segments.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: math.ceil
    functionSourceFile: math
    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: ref_segments.append
    functionSourceFile: <builtin>
    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:
    - self
    - segment
    - page
    - field
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 168
    functionName: pdfminer.jbig2.JBIG2StreamReader.parse_page_assoc
    functionSourceFile: pdfminer.jbig2
    functionUses: 0
    functionsReached:
    - struct.unpack
    - io.BytesIO.read
    - typing.cast
    - pdfminer.jbig2.unpack_int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - segment
    - length
    - field
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 174
    functionName: pdfminer.jbig2.JBIG2StreamReader.parse_data_length
    functionSourceFile: pdfminer.jbig2
    functionUses: 0
    functionsReached:
    - io.BytesIO.read
    - typing.cast
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    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: pdfminer.jbig2.JBIG2StreamWriter
    functionSourceFile: pdfminer.jbig2
    functionUses: 0
    functionsReached:
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f879891dca0>
    argNames:
    - self
    - segments
    - fix_last_page
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 206
    functionName: pdfminer.jbig2.JBIG2StreamWriter.write_segments
    functionSourceFile: pdfminer.jbig2
    functionUses: 10
    functionsReached:
    - struct.pack
    - pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    - segment.get
    - pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    - <builtin>.callable
    - <builtin>.getattr
    - <builtin>.len
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - segment
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 271
    functionName: pdfminer.jbig2.JBIG2StreamWriter.encode_segment
    functionSourceFile: pdfminer.jbig2
    functionUses: 11
    functionsReached:
    - segment.get
    - <builtin>.callable
    - <builtin>.getattr
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - seg_number
    - page_number
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 353
    functionName: pdfminer.jbig2.JBIG2StreamWriter.get_eop_segment
    functionSourceFile: ''
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - seg_number
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 363
    functionName: pdfminer.jbig2.JBIG2StreamWriter.get_eof_segment
    functionSourceFile: ''
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - segment
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 283
    functionName: pdfminer.jbig2.JBIG2StreamWriter.encode_flags
    functionSourceFile: pdfminer.jbig2
    functionUses: 0
    functionsReached:
    - struct.pack
    - <builtin>.bool
    - pdfminer.jbig2.mask_value
    - pdfminer.jbig2.bit_set
    - segment.get
    - <builtin>.range
    - value.get
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - segment
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 301
    functionName: pdfminer.jbig2.JBIG2StreamWriter.encode_retention_flags
    functionSourceFile: pdfminer.jbig2
    functionUses: 0
    functionsReached:
    - struct.pack
    - <builtin>.bool
    - pdfminer.jbig2.mask_value
    - pdfminer.jbig2.bit_set
    - <builtin>.enumerate
    - <builtin>.range
    - value.get
    - <builtin>.isinstance
    - flags.append
    - math.ceil
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: flags.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: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - segment
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 348
    functionName: pdfminer.jbig2.JBIG2StreamWriter.encode_data_length
    functionSourceFile: pdfminer.jbig2
    functionUses: 0
    functionsReached:
    - struct.pack
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.repair
    functionSourceFile: pdfplumber.repair
    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: shutil.which
    functionSourceFile: shutil
    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: subprocess.Popen
    functionSourceFile: subprocess
    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: stdin.read
    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: proc.communicate
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f8798f8c3d0>
    - <ast.Constant object at 0x7f8798f8c190>
    - <ast.Constant object at 0x7f8798f8cd60>
    - <ast.Constant object at 0x7f8798f8c0d0>
    argNames:
    - path_or_fp
    - outfile
    - password
    - gs_path
    - setting
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 63
    functionName: pdfplumber.repair.repair
    functionSourceFile: pdfplumber.repair
    functionUses: 0
    functionsReached:
    - io.BytesIO
    - <builtin>.open
    - shutil.which
    - io.BytesIO.read
    - proc.communicate
    - pathlib.Path
    - f.write
    - pdfplumber.repair._repair
    - <builtin>.isinstance
    - stdin.read
    - subprocess.Popen
    - <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: f.write
    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: pdfplumber._version
    functionSourceFile: pdfplumber._version
    functionUses: 0
    functionsReached:
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pdfplumber.utils
    functionSourceFile: pdfplumber.utils
    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: pdfplumber.utils.pdfinternals
    functionSourceFile: pdfplumber.utils.pdfinternals
    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: typing.cast.name.startswith
    functionSourceFile: typing
    functionUses: 29
    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: obj.resolve
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - _list
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 42
    functionName: pdfplumber.utils.pdfinternals.decode_psl_list
    functionSourceFile: pdfplumber.utils.pdfinternals
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - <builtin>.ord
    - typing.cast.name.startswith
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 49
    functionName: pdfplumber.utils.pdfinternals.resolve
    functionSourceFile: pdfplumber.utils.pdfinternals
    functionUses: 0
    functionsReached:
    - x.resolve
    - <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: x.resolve
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 56
    functionName: pdfplumber.utils.pdfinternals.get_dict_type
    functionSourceFile: pdfplumber.utils.pdfinternals
    functionUses: 6
    functionsReached:
    - d.get
    - pdfplumber.utils.pdfinternals.decode_text
    - typing.cast.startswith
    - <builtin>.ord
    - typing.cast.name.startswith
    - <builtin>.isinstance
    - <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: 1
    functionLinenumber: -1
    functionName: pdfplumber.utils.geometry
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - operator.itemgetter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - objects
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 9
    functionName: pdfplumber.utils.geometry.objects_to_rect
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - <builtin>.zip
    - pdfplumber.utils.geometry.objects_to_bbox
    - <builtin>.max
    - pdfplumber.utils.geometry.merge_bboxes
    - pdfplumber.utils.geometry.bbox_to_rect
    - <builtin>.min
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - bboxes
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 45
    functionName: pdfplumber.utils.geometry.merge_bboxes
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 13
    functionsReached:
    - <builtin>.min
    - <builtin>.zip
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - a
    - b
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: pdfplumber.utils.geometry.get_bbox_overlap
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 9
    functionsReached:
    - <builtin>.min
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - bbox
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 69
    functionName: pdfplumber.utils.geometry.calculate_area
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - obj
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 76
    functionName: pdfplumber.utils.geometry.clip_obj
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 1
    functionsReached:
    - <builtin>.dict
    - operator.itemgetter
    - <builtin>.max
    - pdfplumber.utils.geometry.obj_to_bbox
    - pdfplumber.utils.geometry.get_bbox_overlap
    - pdfplumber.utils.geometry.bbox_to_rect
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - objs
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 96
    functionName: pdfplumber.utils.geometry.intersects_bbox
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - operator.itemgetter
    - <builtin>.max
    - pdfplumber.utils.geometry.obj_to_bbox
    - pdfplumber.utils.geometry.get_bbox_overlap
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - objs
    - bbox
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 121
    functionName: pdfplumber.utils.geometry.crop_to_bbox
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - <builtin>.filter
    - pdfplumber.utils.geometry.clip_obj
    - operator.itemgetter
    - <builtin>.max
    - pdfplumber.utils.geometry.obj_to_bbox
    - pdfplumber.utils.geometry.get_bbox_overlap
    - pdfplumber.utils.geometry.bbox_to_rect
    - <builtin>.list
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - obj
    - axis
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 129
    functionName: pdfplumber.utils.geometry.move_object
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 1
    functionsReached:
    - <builtin>.tuple
    - obj.items
    - obj.__class__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: obj.__class__
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - objs
    - attr
    - tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 151
    functionName: pdfplumber.utils.geometry.snap_objects
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - <builtin>.sum
    - pdfplumber.utils.geometry.move_object
    - <builtin>.callable
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - operator.itemgetter
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - <builtin>.set
    - pdfplumber.utils.clustering.make_cluster_dict
    - cluster_dict.get
    - <builtin>.zip
    - obj.items
    - pdfplumber.utils.clustering.cluster_objects
    - obj.__class__
    - groups.append
    - <builtin>.tuple
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - current_group.append
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f879886e8b0>
    argNames:
    - xs
    - key_fn
    - tolerance
    - preserve_order
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 42
    functionName: pdfplumber.utils.clustering.cluster_objects
    functionSourceFile: pdfplumber.utils.clustering
    functionUses: 12
    functionsReached:
    - <builtin>.dict
    - <builtin>.callable
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - operator.itemgetter
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - <builtin>.set
    - pdfplumber.utils.clustering.make_cluster_dict
    - cluster_dict.get
    - groups.append
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - current_group.append
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 7
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - obj
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 163
    functionName: pdfplumber.utils.geometry.resize_object
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - new_items.append
    - obj.items
    - obj.__class__
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_items.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: 1
    argDefaultValues: []
    argNames:
    - curve
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 190
    functionName: pdfplumber.utils.geometry.curve_to_edges
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - <builtin>.min
    - <builtin>.abs
    - <builtin>.zip
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - rect
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 208
    functionName: pdfplumber.utils.geometry.rect_to_edges
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - top.update
    - <builtin>.dict
    - left.update
    - bottom.update
    - <builtin>.range
    - right.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: top.update
    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: bottom.update
    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: left.update
    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: right.update
    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:
    - line
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 248
    functionName: pdfplumber.utils.geometry.line_to_edge
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 1
    functionsReached:
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - obj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 254
    functionName: pdfplumber.utils.geometry.obj_to_edges
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - pdfplumber.utils.geometry.line_to_edge
    - <builtin>.dict
    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 0x7f8798c9a490>
    - <ast.Constant object at 0x7f8798c9ac70>
    - <ast.Constant object at 0x7f8798c9a130>
    argNames:
    - edges
    - orientation
    - edge_type
    - min_length
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 264
    functionName: pdfplumber.utils.geometry.filter_edges
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.filter
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - e
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 273
    functionName: pdfplumber.utils.geometry.filter_edges.test
    functionSourceFile: pdfplumber.utils.geometry
    functionUses: 0
    functionsReached:
    - <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: pdfplumber._typing
    functionSourceFile: pdfplumber._typing
    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: pdfplumber.utils.generic
    functionSourceFile: pdfplumber.utils.generic
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - collection
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 10
    functionName: pdfplumber.utils.generic.to_list
    functionSourceFile: pdfplumber.utils.generic
    functionUses: 1
    functionsReached:
    - <builtin>.list
    - collection.to_dict
    - <builtin>.isinstance
    - <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: collection.to_dict
    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: pdfplumber.utils.clustering
    functionSourceFile: pdfplumber.utils.clustering
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f8798ac3f40>
    argNames:
    - xs
    - tolerance
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 9
    functionName: pdfplumber.utils.clustering.cluster_list
    functionSourceFile: pdfplumber.utils.clustering
    functionUses: 14
    functionsReached:
    - current_group.append
    - groups.append
    - <builtin>.sorted
    - <builtin>.list
    - <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: current_group.append
    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: groups.append
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - values
    - tolerance
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 29
    functionName: pdfplumber.utils.clustering.make_cluster_dict
    functionSourceFile: pdfplumber.utils.clustering
    functionUses: 13
    functionsReached:
    - <builtin>.dict
    - itertools.chain
    - <builtin>.set
    - current_group.append
    - groups.append
    - <builtin>.sorted
    - <builtin>.list
    - <builtin>.len
    - <builtin>.enumerate
    - pdfplumber.utils.clustering.cluster_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: pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    functionSourceFile: ''
    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: cluster_dict.get
    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: 1
    functionLinenumber: -1
    functionName: pdfplumber.utils.text
    functionSourceFile: pdfplumber.utils.text
    functionUses: 0
    functionsReached:
    - operator.itemgetter
    - inspect.signature
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - line_dir
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 45
    functionName: pdfplumber.utils.text.get_line_cluster_key
    functionSourceFile: pdfplumber.utils.text
    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: pdfplumber.utils.text.get_line_cluster_key.<dict1>.<lambda1>
    functionSourceFile: pdfplumber.utils.text
    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: pdfplumber.utils.text.get_line_cluster_key.<dict1>.<lambda2>
    functionSourceFile: pdfplumber.utils.text
    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: pdfplumber.utils.text.get_line_cluster_key.<dict1>.<lambda3>
    functionSourceFile: pdfplumber.utils.text
    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: pdfplumber.utils.text.get_line_cluster_key.<dict1>.<lambda4>
    functionSourceFile: pdfplumber.utils.text
    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:
    - char_dir
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: pdfplumber.utils.text.get_char_sort_key
    functionSourceFile: pdfplumber.utils.text
    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: pdfplumber.utils.text.get_char_sort_key.<dict1>.<lambda1>
    functionSourceFile: pdfplumber.utils.text
    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: pdfplumber.utils.text.get_char_sort_key.<dict1>.<lambda2>
    functionSourceFile: pdfplumber.utils.text
    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: pdfplumber.utils.text.get_char_sort_key.<dict1>.<lambda3>
    functionSourceFile: pdfplumber.utils.text
    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: pdfplumber.utils.text.get_char_sort_key.<dict1>.<lambda4>
    functionSourceFile: pdfplumber.utils.text
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f8798cfbb80>
    argNames:
    - line_dir
    - char_dir
    - suffix
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 78
    functionName: pdfplumber.utils.text.validate_directions
    functionSourceFile: pdfplumber.utils.text
    functionUses: 6
    functionsReached:
    - <builtin>.set
    - POSITION_KEYS.keys
    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: POSITION_KEYS.keys
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tuples
    - line_dir_render
    - char_dir_render
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 101
    functionName: pdfplumber.utils.text.TextMap.__init__
    functionSourceFile: pdfplumber.utils.text
    functionUses: 3
    functionsReached:
    - <builtin>.reversed
    - operator.itemgetter
    - <builtin>.max
    - <builtin>.set
    - pdfplumber.utils.text.TextMap.to_string
    - base.split
    - pdfplumber.utils.text.validate_directions
    - <builtin>.list
    - <builtin>.range
    - <builtin>.len
    - POSITION_KEYS.keys
    - <builtin>.map
    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: 1
    functionLinenumber: 113
    functionName: pdfplumber.utils.text.TextMap.to_string
    functionSourceFile: pdfplumber.utils.text
    functionUses: 4
    functionsReached:
    - <builtin>.reversed
    - operator.itemgetter
    - <builtin>.max
    - base.split
    - <builtin>.list
    - <builtin>.range
    - <builtin>.len
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base.split
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f87990902b0>
    - <ast.Constant object at 0x7f8799090c40>
    - <ast.Constant object at 0x7f8799090040>
    argNames:
    - self
    - m
    - main_group
    - return_groups
    - return_chars
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 145
    functionName: pdfplumber.utils.text.TextMap.match_to_dict
    functionSourceFile: pdfplumber.utils.text
    functionUses: 2
    functionsReached:
    - m.group
    - m.groups
    - <builtin>.zip
    - pdfplumber.utils.geometry.objects_to_bbox
    - m.start
    - <builtin>.max
    - pdfplumber.utils.geometry.merge_bboxes
    - m.end
    - <builtin>.min
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f8798f090a0>
    - <ast.Constant object at 0x7f8798f09d00>
    - <ast.Constant object at 0x7f8798f09fa0>
    - <ast.Constant object at 0x7f8798f09400>
    - <ast.Constant object at 0x7f8798f09520>
    argNames:
    - self
    - pattern
    - regex
    - case
    - return_groups
    - return_chars
    - main_group
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 172
    functionName: pdfplumber.utils.text.TextMap.search
    functionSourceFile: pdfplumber.utils.text
    functionUses: 1
    functionsReached:
    - m.group
    - re.escape
    - m.groups
    - <builtin>.filter
    - <builtin>.zip
    - re.compile
    - m.start
    - pdfplumber.utils.geometry.objects_to_bbox
    - <builtin>.max
    - re.finditer
    - pdfplumber.utils.text.TextMap.match_to_dict
    - pdfplumber.utils.geometry.merge_bboxes
    - m.end
    - <builtin>.min
    - <builtin>.isinstance
    - <builtin>.map
    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: re.escape
    functionSourceFile: re
    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: pdfplumber.utils.text.TextMap.search.<lambda1>
    functionSourceFile: pdfplumber.utils.text
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    - m.group
    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 0x7f8798b0f100>
    - <ast.Constant object at 0x7f8798b0f430>
    argNames:
    - self
    - strip
    - return_chars
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 212
    functionName: pdfplumber.utils.text.TextMap.extract_text_lines
    functionSourceFile: pdfplumber.utils.text
    functionUses: 0
    functionsReached:
    - m.group
    - re.escape
    - m.groups
    - <builtin>.filter
    - <builtin>.zip
    - pdfplumber.utils.text.TextMap.search
    - re.compile
    - m.start
    - pdfplumber.utils.geometry.objects_to_bbox
    - <builtin>.max
    - re.finditer
    - pdfplumber.utils.geometry.merge_bboxes
    - m.end
    - <builtin>.isinstance
    - <builtin>.min
    - pdfplumber.utils.text.TextMap.match_to_dict
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tuples
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 238
    functionName: pdfplumber.utils.text.WordMap.__init__
    functionSourceFile: pdfplumber.utils.text
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 4
    IfCount: 13
    argCount: 21
    argDefaultValues:
    - <ast.Constant object at 0x7f8798c3f640>
    - <ast.Constant object at 0x7f8798c3fbb0>
    - <ast.Constant object at 0x7f8798c3fb80>
    - <ast.Constant object at 0x7f8798c3f8b0>
    - <ast.Constant object at 0x7f8798c3fca0>
    - <ast.Tuple object at 0x7f8798c3f7c0>
    - <ast.Name object at 0x7f8798c3f7f0>
    - <ast.Name object at 0x7f8798c3f430>
    - <ast.Constant object at 0x7f8798c3f190>
    - <ast.Constant object at 0x7f8798c3fd30>
    - <ast.Name object at 0x7f8798c3fe80>
    - <ast.Name object at 0x7f8798c3f820>
    - <ast.Name object at 0x7f8798c3f040>
    - <ast.Constant object at 0x7f8798c3f850>
    - <ast.Constant object at 0x7f8798c3f340>
    - <ast.Constant object at 0x7f8798c3f880>
    - <ast.Constant object at 0x7f8798c3f760>
    - <ast.Constant object at 0x7f8798c3f910>
    - <ast.Constant object at 0x7f8798c3f2b0>
    - <ast.Constant object at 0x7f8798c3f0a0>
    argNames:
    - self
    - layout
    - layout_width
    - layout_height
    - layout_width_chars
    - layout_height_chars
    - layout_bbox
    - x_density
    - y_density
    - x_shift
    - y_shift
    - y_tolerance
    - line_dir
    - char_dir
    - line_dir_rotated
    - char_dir_rotated
    - char_dir_render
    - line_dir_render
    - use_text_flow
    - presorted
    - expand_ligatures
    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
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 241
    functionName: pdfplumber.utils.text.WordMap.to_textmap
    functionSourceFile: pdfplumber.utils.text
    functionUses: 2
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.text.get_line_cluster_key
    - <builtin>.int
    - <builtin>.reversed
    - pdfplumber.utils.text.get_char_sort_key
    - <builtin>.callable
    - base.split
    - <builtin>.round
    - pdfplumber.utils.text.validate_directions
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - pdfplumber.utils.text.TextMap.__init__
    - operator.itemgetter
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - <builtin>.set
    - cluster_dict.get
    - pdfplumber.utils.clustering.make_cluster_dict
    - <builtin>.range
    - POSITION_KEYS.keys
    - expansions.get
    - _textmap.append
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - <builtin>.min
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - <builtin>.max
    - pdfplumber.utils.text.TextMap.to_string
    - current_group.append
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_list
    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: pdfplumber.utils.text.WordMap.to_textmap.<lambda2>
    functionSourceFile: pdfplumber.utils.text
    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: _textmap.append
    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: pdfplumber.utils.text.WordMap.to_textmap.<lambda3>
    functionSourceFile: pdfplumber.utils.text
    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: expansions.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 16
    argDefaultValues:
    - <ast.Name object at 0x7f87989cb310>
    - <ast.Name object at 0x7f8798c23a00>
    - <ast.Constant object at 0x7f8798c23eb0>
    - <ast.Constant object at 0x7f8798c23be0>
    - <ast.Constant object at 0x7f8798c23e80>
    - <ast.Constant object at 0x7f8798c23ca0>
    - <ast.Constant object at 0x7f8798c23730>
    - <ast.Constant object at 0x7f8798c23a90>
    - <ast.Name object at 0x7f8798c235b0>
    - <ast.Name object at 0x7f8798c23460>
    - <ast.Constant object at 0x7f8798c23820>
    - <ast.Constant object at 0x7f8798c234f0>
    - <ast.Constant object at 0x7f8798c23a60>
    - <ast.Constant object at 0x7f8798c238b0>
    - <ast.Constant object at 0x7f8798c23850>
    argNames:
    - self
    - x_tolerance
    - y_tolerance
    - x_tolerance_ratio
    - y_tolerance_ratio
    - keep_blank_chars
    - use_text_flow
    - vertical_ttb
    - horizontal_ltr
    - line_dir
    - char_dir
    - line_dir_rotated
    - char_dir_rotated
    - extra_attrs
    - split_at_punctuation
    - expand_ligatures
    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
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 424
    functionName: pdfplumber.utils.text.WordExtractor.__init__
    functionSourceFile: pdfplumber.utils.text
    functionUses: 3
    functionsReached:
    - <builtin>.set
    - pdfplumber.utils.text.validate_directions
    - POSITION_KEYS.keys
    - logger.warning
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - upright
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 478
    functionName: pdfplumber.utils.text.WordExtractor.get_char_dir
    functionSourceFile: pdfplumber.utils.text
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ordered_chars
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 490
    functionName: pdfplumber.utils.text.WordExtractor.merge_chars
    functionSourceFile: pdfplumber.utils.text
    functionUses: 6
    functionsReached:
    - <builtin>.zip
    - pdfplumber.utils.geometry.objects_to_bbox
    - <builtin>.max
    - pdfplumber.utils.geometry.merge_bboxes
    - pdfplumber.utils.text.WordExtractor.get_char_dir
    - <builtin>.min
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - prev_char
    - curr_char
    - direction
    - x_tolerance
    - y_tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 516
    functionName: pdfplumber.utils.text.WordExtractor.char_begins_new_word
    functionSourceFile: pdfplumber.utils.text
    functionUses: 7
    functionsReached:
    - <builtin>.bool
    - <builtin>.abs
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ordered_chars
    - direction
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 593
    functionName: pdfplumber.utils.text.WordExtractor.iter_chars_to_words
    functionSourceFile: pdfplumber.utils.text
    functionUses: 6
    functionsReached:
    - <builtin>.bool
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words.start_next_word
    - text.isspace
    - current_word.append
    - <builtin>.abs
    - pdfplumber.utils.text.WordExtractor.char_begins_new_word
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - new_char
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 600
    functionName: pdfplumber.utils.text.WordExtractor.iter_chars_to_words.start_next_word
    functionSourceFile: pdfplumber.utils.text
    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: text.isspace
    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: current_word.append
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - chars
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 641
    functionName: pdfplumber.utils.text.WordExtractor.iter_chars_to_lines
    functionSourceFile: pdfplumber.utils.text
    functionUses: 6
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.text.get_line_cluster_key
    - pdfplumber.utils.text.get_char_sort_key
    - <builtin>.callable
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - operator.itemgetter
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - <builtin>.set
    - pdfplumber.utils.text.WordExtractor.get_char_dir
    - cluster_dict.get
    - pdfplumber.utils.clustering.make_cluster_dict
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - current_group.append
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - chars
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 664
    functionName: pdfplumber.utils.text.WordExtractor.iter_extract_tuples
    functionSourceFile: pdfplumber.utils.text
    functionUses: 5
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.text.get_line_cluster_key
    - pdfplumber.utils.text.get_char_sort_key
    - <builtin>.callable
    - <builtin>.abs
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words.start_next_word
    - operator.itemgetter
    - text.isspace
    - current_word.append
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_lines
    - <builtin>.set
    - pdfplumber.utils.text.WordExtractor.get_char_dir
    - cluster_dict.get
    - pdfplumber.utils.clustering.make_cluster_dict
    - pdfplumber.utils.text.WordExtractor.merge_chars
    - <builtin>.bool
    - <builtin>.zip
    - pdfplumber.utils.geometry.objects_to_bbox
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - <builtin>.min
    - pdfplumber.utils.text.WordExtractor.char_begins_new_word
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - <builtin>.max
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words
    - current_group.append
    - pdfplumber.utils.geometry.merge_bboxes
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - chars
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 680
    functionName: pdfplumber.utils.text.WordExtractor.extract_wordmap
    functionSourceFile: pdfplumber.utils.text
    functionUses: 2
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.text.get_line_cluster_key
    - pdfplumber.utils.text.get_char_sort_key
    - <builtin>.callable
    - <builtin>.abs
    - pdfplumber.utils.text.WordMap.__init__
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words.start_next_word
    - operator.itemgetter
    - text.isspace
    - current_word.append
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_lines
    - <builtin>.set
    - pdfplumber.utils.text.WordExtractor.get_char_dir
    - cluster_dict.get
    - pdfplumber.utils.clustering.make_cluster_dict
    - pdfplumber.utils.text.WordExtractor.merge_chars
    - <builtin>.bool
    - <builtin>.zip
    - pdfplumber.utils.geometry.objects_to_bbox
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - pdfplumber.utils.text.WordExtractor.iter_extract_tuples
    - <builtin>.min
    - pdfplumber.utils.text.WordExtractor.char_begins_new_word
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - <builtin>.max
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words
    - current_group.append
    - pdfplumber.utils.geometry.merge_bboxes
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_list
    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 0x7f8798a64f10>
    argNames:
    - self
    - chars
    - return_chars
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 683
    functionName: pdfplumber.utils.text.WordExtractor.extract_words
    functionSourceFile: pdfplumber.utils.text
    functionUses: 2
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.text.get_line_cluster_key
    - pdfplumber.utils.text.get_char_sort_key
    - <builtin>.callable
    - <builtin>.abs
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words.start_next_word
    - operator.itemgetter
    - text.isspace
    - current_word.append
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_lines
    - <builtin>.set
    - pdfplumber.utils.text.WordExtractor.get_char_dir
    - cluster_dict.get
    - pdfplumber.utils.clustering.make_cluster_dict
    - pdfplumber.utils.text.WordExtractor.merge_chars
    - <builtin>.bool
    - <builtin>.zip
    - pdfplumber.utils.geometry.objects_to_bbox
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - pdfplumber.utils.text.WordExtractor.iter_extract_tuples
    - <builtin>.min
    - pdfplumber.utils.text.WordExtractor.char_begins_new_word
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - <builtin>.max
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words
    - current_group.append
    - pdfplumber.utils.geometry.merge_bboxes
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_list
    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 0x7f8798e04670>
    argNames:
    - chars
    - return_chars
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 695
    functionName: pdfplumber.utils.text.extract_words
    functionSourceFile: pdfplumber.utils.text
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.text.get_line_cluster_key
    - pdfplumber.utils.text.get_char_sort_key
    - <builtin>.callable
    - <builtin>.abs
    - pdfplumber.utils.text.validate_directions
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - logger.warning
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words.start_next_word
    - operator.itemgetter
    - text.isspace
    - current_word.append
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_lines
    - <builtin>.set
    - pdfplumber.utils.text.WordExtractor.get_char_dir
    - cluster_dict.get
    - pdfplumber.utils.clustering.make_cluster_dict
    - pdfplumber.utils.text.WordExtractor.merge_chars
    - POSITION_KEYS.keys
    - <builtin>.bool
    - <builtin>.zip
    - pdfplumber.utils.geometry.objects_to_bbox
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - pdfplumber.utils.text.WordExtractor.iter_extract_tuples
    - <builtin>.min
    - pdfplumber.utils.text.WordExtractor.char_begins_new_word
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - <builtin>.max
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words
    - pdfplumber.utils.geometry.merge_bboxes
    - pdfplumber.utils.text.WordExtractor.__init__
    - pdfplumber.utils.text.WordExtractor.extract_words
    - <builtin>.sorted
    - <builtin>.list
    - current_group.append
    - pdfplumber.utils.clustering.cluster_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: inspect.signature
    functionSourceFile: inspect
    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:
    - chars
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 705
    functionName: pdfplumber.utils.text.chars_to_textmap
    functionSourceFile: pdfplumber.utils.text
    functionUses: 1
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.text.get_line_cluster_key
    - <builtin>.int
    - <builtin>.reversed
    - pdfplumber.utils.text.get_char_sort_key
    - kwargs.update
    - <builtin>.callable
    - base.split
    - <builtin>.round
    - pdfplumber.utils.text.validate_directions
    - pdfplumber.utils.text.WordMap.__init__
    - <builtin>.float
    - <builtin>.abs
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - pdfplumber.utils.text.TextMap.__init__
    - pdfplumber.utils.text.WordExtractor.extract_wordmap
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words.start_next_word
    - operator.itemgetter
    - text.isspace
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - current_word.append
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_lines
    - <builtin>.set
    - pdfplumber.utils.text.WordExtractor.get_char_dir
    - cluster_dict.get
    - pdfplumber.utils.clustering.make_cluster_dict
    - <builtin>.range
    - pdfplumber.utils.text.WordExtractor.merge_chars
    - POSITION_KEYS.keys
    - <builtin>.bool
    - <builtin>.zip
    - <builtin>.sorted
    - expansions.get
    - _textmap.append
    - pdfplumber.utils.geometry.objects_to_bbox
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - pdfplumber.utils.text.WordExtractor.iter_extract_tuples
    - <builtin>.min
    - pdfplumber.utils.text.WordMap.to_textmap
    - pdfplumber.utils.text.WordExtractor.char_begins_new_word
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - <builtin>.max
    - pdfplumber.utils.text.TextMap.to_string
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words
    - pdfplumber.utils.geometry.merge_bboxes
    - pdfplumber.utils.text.WordExtractor.__init__
    - logger.warning
    - <builtin>.list
    - current_group.append
    - pdfplumber.utils.clustering.cluster_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: kwargs.update
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f87990f6e50>
    - <ast.Constant object at 0x7f87990f6be0>
    argNames:
    - chars
    - line_dir_render
    - char_dir_render
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 723
    functionName: pdfplumber.utils.text.extract_text
    functionSourceFile: pdfplumber.utils.text
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - pdfplumber.utils.text.get_line_cluster_key
    - <builtin>.int
    - <builtin>.reversed
    - pdfplumber.utils.text.chars_to_textmap
    - pdfplumber.utils.text.get_char_sort_key
    - kwargs.update
    - <builtin>.callable
    - base.split
    - pdfplumber.utils.text.validate_directions
    - pdfplumber.utils.text.WordMap.__init__
    - <builtin>.round
    - <builtin>.float
    - <builtin>.abs
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - logger.warning
    - pdfplumber.utils.text.TextMap.__init__
    - pdfplumber.utils.text.WordExtractor.extract_wordmap
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words.start_next_word
    - operator.itemgetter
    - text.isspace
    - kwargs.get
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_lines
    - current_word.append
    - <builtin>.set
    - pdfplumber.utils.text.WordExtractor.get_char_dir
    - pdfplumber.utils.clustering.make_cluster_dict
    - cluster_dict.get
    - <builtin>.range
    - <builtin>.isinstance
    - pdfplumber.utils.text.WordExtractor.merge_chars
    - POSITION_KEYS.keys
    - <builtin>.bool
    - <builtin>.zip
    - expansions.get
    - <builtin>.hasattr
    - _textmap.append
    - pdfplumber.utils.geometry.objects_to_bbox
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - pdfplumber.utils.generic.to_list
    - pdfplumber.utils.text.WordExtractor.iter_extract_tuples
    - collection.to_dict
    - <builtin>.min
    - pdfplumber.utils.text.WordMap.to_textmap
    - pdfplumber.utils.text.WordExtractor.char_begins_new_word
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - <builtin>.list
    - <builtin>.max
    - pdfplumber.utils.text.TextMap.to_string
    - pdfplumber.utils.text.WordExtractor.iter_chars_to_words
    - pdfplumber.utils.geometry.merge_bboxes
    - current_group.append
    - <builtin>.sorted
    - pdfplumber.utils.text.WordExtractor.__init__
    - pdfplumber.utils.text.WordExtractor.extract_words
    - pdfplumber.utils.clustering.cluster_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: kwargs.get
    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:
    - <ast.Name object at 0x7f8798f8dcd0>
    argNames:
    - line_chars
    - tolerance
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 771
    functionName: pdfplumber.utils.text.collate_line
    functionSourceFile: pdfplumber.utils.text
    functionUses: 1
    functionsReached:
    - operator.itemgetter
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7f8798f8db80>
    - <ast.Name object at 0x7f8798f8d610>
    argNames:
    - chars
    - x_tolerance
    - y_tolerance
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 785
    functionName: pdfplumber.utils.text.extract_text_simple
    functionSourceFile: pdfplumber.utils.text
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - <builtin>.callable
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - operator.itemgetter
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - <builtin>.set
    - pdfplumber.utils.clustering.make_cluster_dict
    - cluster_dict.get
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - current_group.append
    - pdfplumber.utils.text.collate_line
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_list
    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 0x7f87996fc1f0>
    - <ast.Tuple object at 0x7f87996fc340>
    argNames:
    - chars
    - tolerance
    - extra_attrs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 794
    functionName: pdfplumber.utils.text.dedupe_chars
    functionSourceFile: pdfplumber.utils.text
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - <builtin>.callable
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - operator.itemgetter
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - <builtin>.set
    - cluster_dict.get
    - pdfplumber.utils.clustering.make_cluster_dict
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - <builtin>.tuple
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - pdfplumber.utils.text.dedupe_chars.yield_unique_chars
    - current_group.append
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - chars
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 807
    functionName: pdfplumber.utils.text.dedupe_chars.yield_unique_chars
    functionSourceFile: pdfplumber.utils.text
    functionUses: 1
    functionsReached:
    - <builtin>.dict
    - <builtin>.callable
    - <builtin>.float
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.map
    - operator.itemgetter
    - pdfplumber.utils.text.WordMap.to_textmap.<lambda1>
    - <builtin>.set
    - cluster_dict.get
    - pdfplumber.utils.clustering.make_cluster_dict
    - groups.append
    - pdfplumber.utils.clustering.cluster_objects
    - pdfplumber.table.words_to_edges_v.get_center
    - itertools.chain
    - itertools.groupby
    - current_group.append
    - <builtin>.sorted
    - <builtin>.list
    - pdfplumber.utils.clustering.cluster_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: pdfplumber.utils.exceptions
    functionSourceFile: pdfplumber.utils.exceptions
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: -1
    functionName: pdfplumber.cli
    functionSourceFile: pdfplumber.cli
    functionUses: 0
    functionsReached:
    - io.BytesIO.close
    - sys.argv.append
    - typing.cast.startswith
    - obj.get
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - prev.isdigit
    - line.strip
    - pdfminer.pdftypes.dict_value
    - handler.is_extractable
    - <builtin>.map
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - parser.seek
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - xref.get_trailer
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - pdfplumber.cli.main
    - parser.nexttoken
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - stdin.read
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - itertools.chain
    - d.decompress
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - logger.debug
    - parser.add_argument
    - pdfminer.pdfinterp.PDFResourceManager.__init__
    - <builtin>.list
    - param.get
    - c.get
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdf.to_json
    - handler.is_printable
    - pdfplumber.pdf.PDF.__init__
    - start_re.sub
    - pdfminer.psparser.PSStackParser.__init__
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - parser1.nextobject
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - parser.pop
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfdocument.PDFDocument.__init__
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - <builtin>.hasattr
    - binascii.unhexlify.find
    - pdfplumber.pdf.PDF.open
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - parser.revreadlines
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - argparse.ArgumentParser
    - pdfminer.layout.LAParams._validate
    - arr.tobytes
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdocument.PDFDocument.find_xref
    - parser.add_mutually_exclusive_group
    - pdfminer.utils.apply_png_predictor
    - line_bytes.decode
    - pdfminer.pdfdocument.PDFXRef.__init__
    - parser.reset
    - pdfminer.lzw.LZWDecoder.__init__
    - page.extract_text
    - <builtin>.len
    - collections.deque
    - objs.append
    - collections.defaultdict
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfplumber.repair._repair
    - shutil.which
    - pdfminer.layout.LAParams.__init__
    - obj.resolve
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - proc.communicate
    - pdfminer.utils.apply_tiff_predictor
    - pdf.to_csv
    - obj.items
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast.name.startswith
    - json.dumps
    - typing.cast
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - <builtin>.print
    - group.add_argument
    - pathlib.Path
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - subprocess.Popen
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - pdfplumber.utils.pdfinternals.decode_text
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - xrefs.append
    - collections.deque.extend
    - pdfplumber.utils.pdfinternals.resolve_and_decode
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - parser.parse_args
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - el.get
    - parser.nextline
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdfdocument.PDFDocument._initialize_password
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.psparser.literal_name
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - pdfminer.pdftypes.PDFStream.decode
    - line_bytes.startswith
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - handler.is_modifiable
    - collections.deque.popleft
    - pdfplumber.cli.add_text_to_mcids
    - argparse.FileType
    - pdfplumber.cli.parse_args
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sys.argv.append
    functionSourceFile: sys
    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:
    - p_str
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 15
    functionName: pdfplumber.cli.parse_page_spec
    functionSourceFile: pdfplumber.cli
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - p_str.split
    - <builtin>.list
    - <builtin>.range
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: p_str.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 11
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - args_raw
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 23
    functionName: pdfplumber.cli.parse_args
    functionSourceFile: pdfplumber.cli
    functionUses: 2
    functionsReached:
    - parser.parse_args
    - argparse.FileType
    - itertools.chain
    - group.add_argument
    - parser.add_argument
    - parser.add_mutually_exclusive_group
    - <builtin>.list
    - argparse.ArgumentParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: argparse.ArgumentParser
    functionSourceFile: argparse
    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: argparse.FileType
    functionSourceFile: argparse
    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: parser.add_argument
    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: parser.add_mutually_exclusive_group
    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: group.add_argument
    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: parser.parse_args
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - pdf
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 73
    functionName: pdfplumber.cli.add_text_to_mcids
    functionSourceFile: pdfplumber.cli
    functionUses: 2
    functionsReached:
    - c.get
    - collections.deque.popleft
    - collections.defaultdict
    - collections.deque.extend
    - el.get
    - 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: 1
    functionLinenumber: -1
    functionName: pdfplumber.cli.add_text_to_mcids.<lambda1>
    functionSourceFile: pdfplumber.cli
    functionUses: 0
    functionsReached:
    - collections.defaultdict
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.defaultdict
    functionSourceFile: collections
    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: c.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: el.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 1
    argDefaultValues:
    - <ast.Subscript object at 0x7f8798f574f0>
    argNames:
    - args_raw
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 14
    functionLinenumber: 95
    functionName: pdfplumber.cli.main
    functionSourceFile: pdfplumber.cli
    functionUses: 1
    functionsReached:
    - io.BytesIO.close
    - typing.cast.startswith
    - obj.get
    - decoded_array.extend
    - base64.a85decode
    - pdfminer.pdfparser.PDFParser.__init__
    - prev.isdigit
    - line.strip
    - pdfminer.pdftypes.dict_value
    - handler.is_extractable
    - <builtin>.map
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - parser.seek
    - pdfminer.pdftypes.int_value
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.ccitt.BitParser._parse_bit
    - <builtin>.type
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - xref.get_trailer
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - <builtin>.ord
    - <builtin>.isinstance
    - parser.nexttoken
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - f.read
    - bws_re.sub
    - array.array
    - pdfminer.runlength.rldecode
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - stdin.read
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - pdfminer.psparser.PSBaseParser.seek
    - itertools.chain
    - d.decompress
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - logger.debug
    - parser.add_argument
    - pdfminer.pdfinterp.PDFResourceManager.__init__
    - <builtin>.list
    - param.get
    - c.get
    - params.get
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - pdf.to_json
    - handler.is_printable
    - pdfplumber.pdf.PDF.__init__
    - start_re.sub
    - pdfminer.psparser.PSStackParser.__init__
    - typing.cast.get_data
    - <builtin>.enumerate
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - parser1.nextobject
    - io.BytesIO.read
    - pdfminer.ascii85.ascii85decode
    - pdfminer.pdftypes.decompress_corrupted
    - parser.pop
    - pdfminer.ccitt.get_bytes
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - pdfminer.pdfdocument.PDFDocument.__init__
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.ccitt.main.Parser.output_line
    - binascii.unhexlify
    - <builtin>.hasattr
    - binascii.unhexlify.find
    - pdfplumber.pdf.PDF.open
    - pdfminer.pdftypes.PDFStream.get_data
    - <builtin>.min
    - pdfminer.psparser.PSStackParser.reset
    - pdfminer.ascii85.asciihexdecode
    - log.debug
    - parser.revreadlines
    - end_re.sub
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - argparse.ArgumentParser
    - pdfminer.layout.LAParams._validate
    - arr.tobytes
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdocument.PDFDocument.find_xref
    - parser.add_mutually_exclusive_group
    - pdfminer.utils.apply_png_predictor
    - line_bytes.decode
    - pdfminer.pdfdocument.PDFXRef.__init__
    - parser.reset
    - pdfminer.lzw.LZWDecoder.__init__
    - page.extract_text
    - <builtin>.len
    - collections.deque
    - objs.append
    - collections.defaultdict
    - pdfminer.lzw.LZWDecoder.readbits
    - pdfminer.pdftypes.list_value
    - pdfminer.lzw.LZWDecoder.run
    - pdfplumber.repair._repair
    - shutil.which
    - pdfminer.layout.LAParams.__init__
    - obj.resolve
    - pdfminer.psparser.PSBaseParser.__init__
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - proc.communicate
    - pdfminer.utils.apply_tiff_predictor
    - pdf.to_csv
    - obj.items
    - <builtin>.bytes
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast.name.startswith
    - json.dumps
    - typing.cast
    - typing.cast.get
    - pdfminer.psparser.PSStackParser.seek
    - <builtin>.print
    - group.add_argument
    - pathlib.Path
    - pdfminer.pdftypes.PDFStream.get_filters
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - subprocess.Popen
    - <builtin>.str
    - io.BytesIO
    - pdfminer.lzw.lzwdecode
    - pdfplumber.utils.pdfinternals.decode_text
    - <builtin>.int
    - bits.startswith
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - xrefs.append
    - collections.deque.extend
    - pdfplumber.utils.pdfinternals.resolve_and_decode
    - pdfminer.pdftypes.stream_value
    - <builtin>.abs
    - parser.nextobject
    - base64.a85decode.find
    - parser.parse_args
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - el.get
    - parser.nextline
    - <builtin>.range
    - logger.error
    - typing.cast.resolve
    - pdfminer.lzw.LZWDecoder.feed
    - zlib.decompressobj
    - pdfminer.pdfdocument.PDFDocument._initialize_password
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.psparser.literal_name
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - pdfminer.pdftypes.PDFStream.decode
    - line_bytes.startswith
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - handler.is_modifiable
    - collections.deque.popleft
    - pdfplumber.cli.add_text_to_mcids
    - argparse.FileType
    - pdfplumber.cli.parse_args
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - <builtin>.iter
    - pdfminer.utils.paeth_predictor
    - raw.append
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: page.extract_text
    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: pdfplumber.ctm
    functionSourceFile: pdfplumber.ctm
    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: 17
    functionName: pdfplumber.ctm.CTM.scale_x
    functionSourceFile: pdfplumber.ctm
    functionUses: 0
    functionsReached:
    - math.sqrt
    - <builtin>.pow
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.pow
    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: math.sqrt
    functionSourceFile: math
    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: 21
    functionName: pdfplumber.ctm.CTM.scale_y
    functionSourceFile: pdfplumber.ctm
    functionUses: 0
    functionsReached:
    - math.sqrt
    - <builtin>.pow
    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: pdfplumber.ctm.CTM.skew_x
    functionSourceFile: pdfplumber.ctm
    functionUses: 0
    functionsReached:
    - math.atan2
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: math.atan2
    functionSourceFile: math
    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: 29
    functionName: pdfplumber.ctm.CTM.skew_y
    functionSourceFile: pdfplumber.ctm
    functionUses: 0
    functionsReached:
    - math.atan2
    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: 33
    functionName: pdfplumber.ctm.CTM.translation_x
    functionSourceFile: pdfplumber.ctm
    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: 37
    functionName: pdfplumber.ctm.CTM.translation_y
    functionSourceFile: pdfplumber.ctm
    functionUses: 0
    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: pdfminer.high_level
    functionSourceFile: pdfminer.high_level
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 4
    IfCount: 8
    argCount: 16
    argDefaultValues:
    - <ast.Constant object at 0x7f8798c6ee80>
    - <ast.Constant object at 0x7f8798c6e430>
    - <ast.Constant object at 0x7f8798c6edc0>
    - <ast.Constant object at 0x7f8798c6ed60>
    - <ast.Constant object at 0x7f8798c6e700>
    - <ast.Constant object at 0x7f8798501610>
    - <ast.Constant object at 0x7f8798501b80>
    - <ast.Constant object at 0x7f8798501fa0>
    - <ast.Constant object at 0x7f87985012e0>
    - <ast.Constant object at 0x7f8798501250>
    - <ast.Constant object at 0x7f8798501d60>
    - <ast.Constant object at 0x7f8798501280>
    - <ast.Constant object at 0x7f87985019a0>
    argNames:
    - inf
    - outfp
    - output_type
    - codec
    - laparams
    - maxpages
    - page_numbers
    - password
    - scale
    - rotation
    - layoutmode
    - output_dir
    - strip_control
    - debug
    - disable_caching
    - kwargs
    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
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 25
    functionName: pdfminer.high_level.extract_text_to_fp
    functionSourceFile: pdfminer.high_level
    functionUses: 0
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - typing.cast.startswith
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.utils.Plane.__init__
    - pdfminer.layout.LTTextLineHorizontal.add
    - handler.is_extractable
    - heapq.heappop
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - pdfminer.pdffont.PDFType3Font.__init__
    - pdfminer.layout.LTLayoutContainer.group_textlines
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - <builtin>.type
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.pdfinterp.PDFContentParser.__init__
    - logger.debug
    - pdfminer.layout.LTTextContainer.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources
    - contextlib.suppress
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.pdfpage.PDFPage._parse_cropbox
    - pdfminer.pdffont.PDFFont._parse_bbox
    - <builtin>.enumerate
    - pdfminer.casting._safe_float_quadruple
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - pdfminer.ascii85.ascii85decode
    - pdfminer.converter.HTMLConverter.__init__
    - parser.pop
    - pdfminer.converter.PDFLayoutAnalyzer.begin_page
    - os.path.exists
    - pdfminer.pdfdocument.PDFDocument.__init__
    - pdfminer.utils.apply_matrix_pt
    - char2gid.items
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - objs.difference
    - pdfminer.pdftypes.decipher_all
    - typing.cast.replace
    - arr.tobytes
    - pdfminer.pdfdocument.PDFDocument.find_xref
    - pdfminer.utils.apply_png_predictor
    - pdfminer.lzw.LZWDecoder.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources.get_colorspace
    - objs.append
    - heapq.heappush
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.pdftypes.resolve_all
    - pdfminer.cmapdb.CMapDB._load_data
    - typing.cast.write
    - x.append
    - pdfminer.pdfpage.PDFPage.__init__
    - pdfminer.data_structures.NumberTree.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.process_page
    - xref.get_pos
    - pdfminer.psparser.PSStackParser.seek
    - plane.extend
    - pdfminer.pdffont.get_widths2
    - os.path.dirname
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.lzw.lzwdecode
    - pdfminer.pdffont.PDFCIDFont.__init__
    - line.find_neighbors
    - <builtin>.abs
    - pdfminer.converter.XMLConverter.write_header
    - <builtin>.float
    - members.append
    - pdfminer.pdfinterp.PDFPageInterpreter.render_contents
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.pdfdocument.PDFDocument._initialize_password
    - pdfminer.pdftypes.num_value
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.converter.XMLConverter.close
    - pdfminer.psparser.literal_name
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - text.encode
    - obj.analyze
    - pdfminer.utils.paeth_predictor
    - xref.get_objids
    - pdfminer.layout.LTTextLine.__init__
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    - obj.get
    - base64.a85decode
    - pdfminer.converter.PDFLayoutAnalyzer.__init__
    - pdfminer.pdftypes.int_value
    - subtables.append
    - obj0.is_hoverlap
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - visited.add
    - pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    - struct.unpack
    - textbox.analyze
    - box.add
    - code.decode
    - pdfminer.converter.XMLConverter.__init__
    - valid_streams.append
    - pdfminer.pdfinterp.PDFResourceManager.__init__
    - <builtin>.list
    - pdfminer.layout.LTContainer.__init__
    - widths2.items
    - pdfminer.pdfdevice.PDFDevice.__init__
    - char2gid.update
    - obj0.hdistance
    - html.escape.encode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - obj0.voverlap
    - <builtin>.hasattr
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - typing.cast.copy
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdevice.TagExtractor.begin_page
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    - pdfminer.converter.HOCRConverter.write_header
    - parser.reset
    - pdfminer.utils.bbox2str
    - pdfminer.utils.parse_rect
    - logging.getLogger
    - typing.cast.split
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.pdfpage.PDFPage._parse_mediabox
    - hdrs.append
    - pdfminer.layout.IndexAssigner.__init__
    - pdfminer.converter.HOCRConverter.__init__
    - typing.cast
    - pdfminer.layout.LTLayoutContainer.group_textboxes
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - pdfminer.pdftypes.PDFStream.get_filters
    - pdfminer.cmapdb.CMap.__init__
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - HEXADECIMAL.match
    - <builtin>.int
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.push
    - xrefs.append
    - cid_registry.strip
    - pdfminer.pdfinterp.PDFResourceManager.get_procset
    - pdfminer.pdfdevice.PDFDevice.close
    - log.warning
    - pdfminer.layout.LTPage.__init__
    - <builtin>.set
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - boxes.pop
    - parser.nextline
    - pdfminer.lzw.LZWDecoder.feed
    - pdfminer.pdfpage.PDFPage._parse_contents
    - pdfminer.casting.safe_float
    - textboxes.sort
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - pdfminer.converter.TextConverter.__init__
    - handler.is_modifiable
    - <builtin>.chr
    - io.BytesIO.seek
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.layout.LTTextLineVertical.add
    - LTText.__init__
    - raw.append
    - pdfminer.pdfpage.PDFPage.create_pages
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    - done.update
    - decoded_array.extend
    - pdfminer.layout.IndexAssigner.run
    - pdfminer.pdftypes.PDFStream.get
    - prev.isdigit
    - pdfminer.converter.HOCRConverter.write_footer
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdfinterp.PDFResourceManager.get_font
    - json.load
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - parser.seek
    - pdfminer.utils.choplist
    - pdfminer.layout.LTLayoutContainer.__init__
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.pdfpage.PDFPage.get_pages
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.layout.LTLayoutContainer.group_objects
    - f.read
    - object_properties.get
    - pdfminer.cmapdb.CMapParser.__init__
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.items
    - d.decompress
    - pdfminer.pdfinterp.PDFPageInterpreter.__init__
    - pdfminer.layout.LTTextGroup.__init__
    - t.append
    - plane.add
    - pdfminer.cmapdb.UnicodeMap.__init__
    - os.environ.get
    - start_re.sub
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.image.ImageWriter.__init__
    - pdfminer.layout.LTComponent.__init__
    - io.BytesIO.read
    - group.analyze
    - os.makedirs
    - <builtin>.getattr
    - f.append
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - os.path.realpath
    - obj.is_empty
    - <builtin>.id
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.psparser.PSStackParser.reset
    - data.get
    - pdfminer.ascii85.asciihexdecode
    - parser.revreadlines
    - pdfminer.pdffont.get_widths
    - pdfminer.utils.uniq
    - typing.cast.name.replace
    - obj0.hoverlap
    - pdfminer.layout.LTFigure.analyze
    - pdfminer.pdfinterp.PDFPageInterpreter.init_state
    - gzip.open
    - pdfminer.layout.LTTextLineVertical.__init__
    - line_bytes.decode
    - <builtin>.len
    - resolved_json_path.startswith
    - pdfminer.converter.XMLConverter.write_footer
    - typing.cast.decode
    - pdfminer.lzw.LZWDecoder.readbits
    - obj0.vdistance
    - pdfminer.pdftypes.list_value
    - io.BytesIO.tell
    - pdfminer.encodingdb.name2unicode
    - LTItem.__init__
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.pdfdocument.PDFDocument.get_page_labels
    - x.items
    - pdfminer.layout.LTContainer.add
    - pdfminer.converter.PDFLayoutAnalyzer.end_page
    - io.BytesIO
    - pdfminer.converter.HTMLConverter.write
    - pdfminer.pdftypes.stream_value
    - parser.nextobject
    - pdfminer.converter.PDFConverter.__init__
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - base64.a85decode.find
    - pdfminer.pdfcolor.PDFColorSpace.__init__
    - pdfminer.layout.LTLayoutContainer.analyze
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.psparser.keyword_name
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - pdfminer.converter.HOCRConverter.write
    - pdfminer.pdffont.TrueTypeFont.__init__
    - logger.error
    - <builtin>.super
    - pdfminer.converter.HTMLConverter.close
    - dists.append
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.layout.LTTextLineHorizontal.__init__
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - line_bytes.startswith
    - <builtin>.iter
    - pdfminer.casting.safe_rect_list
    - pdfminer.pdfparser.PDFParser.__init__
    - line.strip
    - PREDEFINED_COLORSPACE.get
    - <builtin>.map
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.layout.LTExpandableContainer.__init__
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - xref.get_trailer
    - r.append
    - <builtin>.ord
    - done.add
    - <builtin>.isinstance
    - parser.nexttoken
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.psparser.PSBaseParser.seek
    - cid2unicode.copy
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - param.get
    - params.get
    - pdfminer.pdfinterp.PDFTextState.__init__
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - members.extend
    - box.is_empty
    - handler.is_printable
    - plane.remove
    - plane.find
    - typing.cast.get_data
    - parser1.nextobject
    - itertools.islice
    - pdfminer.pdfpage.PDFPage.create_pages.depth_first_search
    - pdfminer.ccitt.get_bytes
    - pdfminer.pdfinterp.PDFPageInterpreter.execute
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.cmapdb.PyCMap.__init__
    - log.debug
    - pdfminer.converter.HOCRConverter.close
    - pdfminer.pdffont.PDFType1Font.__init__
    - end_re.sub
    - pdfminer.utils.fsplit
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - typing.cast.items
    - typing.cast.strip
    - pdfminer.converter.PDFConverter._is_binary_stream
    - pdfminer.converter.PDFPageAggregator.receive_layout
    - pdfminer.pdfdocument.PDFXRef.__init__
    - pdfminer.pdfdevice.TagExtractor.end_page
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    - os.path.join
    - pdfminer.layout.LTTextBox.__init__
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - obj0.is_voverlap
    - pdfminer.layout.LTAnno.__init__
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast.get
    - <builtin>.tuple
    - heapq.heapify
    - pdfminer.pdfdevice.TagExtractor.__init__
    - <builtin>.str
    - PREDEFINED_COLORSPACE.copy
    - bits.startswith
    - pdfminer.converter.XMLConverter.write
    - pdfminer.utils.apply_matrix_norm
    - itertools.repeat
    - cmap_name_stream.get
    - pdfminer.pdfdevice.TagExtractor._write
    - pdfminer.converter.HTMLConverter.write_header
    - cls.encodings.get
    - zlib.decompressobj
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - pdfminer.converter.HTMLConverter.write_footer
    - <builtin>.max
    - pdfminer.pdfinterp.PDFTextState.reset
    - cid_ordering.strip
    linkageType: pythonLinkage
    raised:
    - PDFValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f8798ef9fd0>
    - <ast.Constant object at 0x7f8798ef91f0>
    - <ast.Constant object at 0x7f8798ef98e0>
    - <ast.Constant object at 0x7f8798ef9730>
    - <ast.Constant object at 0x7f8798ef9820>
    - <ast.Constant object at 0x7f8798ef9a00>
    argNames:
    - pdf_file
    - password
    - page_numbers
    - maxpages
    - caching
    - codec
    - laparams
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 147
    functionName: pdfminer.high_level.extract_text
    functionSourceFile: pdfminer.high_level
    functionUses: 0
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - typing.cast.startswith
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.utils.Plane.__init__
    - pdfminer.layout.LTTextLineHorizontal.add
    - handler.is_extractable
    - heapq.heappop
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - pdfminer.pdffont.PDFType3Font.__init__
    - pdfminer.layout.LTLayoutContainer.group_textlines
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - <builtin>.type
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.pdfinterp.PDFContentParser.__init__
    - logger.debug
    - pdfminer.layout.LTTextContainer.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources
    - contextlib.suppress
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.pdfpage.PDFPage._parse_cropbox
    - pdfminer.pdffont.PDFFont._parse_bbox
    - <builtin>.enumerate
    - pdfminer.casting._safe_float_quadruple
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - pdfminer.ascii85.ascii85decode
    - parser.pop
    - pdfminer.converter.PDFLayoutAnalyzer.begin_page
    - pdfminer.pdfdocument.PDFDocument.__init__
    - char2gid.items
    - pdfminer.utils.apply_matrix_pt
    - os.path.exists
    - binascii.unhexlify
    - binascii.unhexlify.find
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - objs.difference
    - pdfminer.pdftypes.decipher_all
    - typing.cast.replace
    - arr.tobytes
    - pdfminer.pdfdocument.PDFDocument.find_xref
    - pdfminer.utils.apply_png_predictor
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources.get_colorspace
    - pdfminer.lzw.LZWDecoder.__init__
    - objs.append
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - heapq.heappush
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.pdftypes.resolve_all
    - pdfminer.cmapdb.CMapDB._load_data
    - typing.cast.write
    - x.append
    - pdfminer.pdfpage.PDFPage.__init__
    - pdfminer.data_structures.NumberTree.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.process_page
    - xref.get_pos
    - pdfminer.psparser.PSStackParser.seek
    - plane.extend
    - pdfminer.pdffont.get_widths2
    - os.path.dirname
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.lzw.lzwdecode
    - pdfminer.pdffont.PDFCIDFont.__init__
    - line.find_neighbors
    - <builtin>.abs
    - <builtin>.float
    - members.append
    - pdfminer.pdfinterp.PDFPageInterpreter.render_contents
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.pdfdocument.PDFDocument._initialize_password
    - pdfminer.pdftypes.num_value
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.psparser.literal_name
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - obj.analyze
    - pdfminer.utils.paeth_predictor
    - xref.get_objids
    - pdfminer.layout.LTTextLine.__init__
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    - obj.get
    - base64.a85decode
    - pdfminer.pdftypes.int_value
    - subtables.append
    - obj0.is_hoverlap
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - visited.add
    - struct.unpack
    - pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    - textbox.analyze
    - box.add
    - code.decode
    - valid_streams.append
    - pdfminer.pdfinterp.PDFResourceManager.__init__
    - <builtin>.list
    - pdfminer.layout.LTContainer.__init__
    - widths2.items
    - char2gid.update
    - obj0.hdistance
    - html.escape.encode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - obj0.voverlap
    - <builtin>.hasattr
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - typing.cast.copy
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdevice.TagExtractor.begin_page
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    - parser.reset
    - pdfminer.utils.bbox2str
    - pdfminer.utils.parse_rect
    - typing.cast.split
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.layout.LAParams.__init__
    - pdfminer.pdfpage.PDFPage._parse_mediabox
    - hdrs.append
    - pdfminer.layout.IndexAssigner.__init__
    - typing.cast
    - pdfminer.layout.LTLayoutContainer.group_textboxes
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - pdfminer.pdftypes.PDFStream.get_filters
    - pdfminer.cmapdb.CMap.__init__
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - HEXADECIMAL.match
    - <builtin>.int
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.push
    - cid_registry.strip
    - xrefs.append
    - pdfminer.pdfinterp.PDFResourceManager.get_procset
    - log.warning
    - pdfminer.layout.LTPage.__init__
    - io.StringIO
    - <builtin>.set
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - parser.nextline
    - boxes.pop
    - pdfminer.lzw.LZWDecoder.feed
    - pdfminer.pdfpage.PDFPage._parse_contents
    - pdfminer.casting.safe_float
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - textboxes.sort
    - pdfminer.converter.TextConverter.__init__
    - handler.is_modifiable
    - <builtin>.chr
    - io.BytesIO.seek
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.layout.LTTextLineVertical.add
    - LTText.__init__
    - raw.append
    - pdfminer.pdfpage.PDFPage.create_pages
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    - done.update
    - decoded_array.extend
    - pdfminer.layout.IndexAssigner.run
    - pdfminer.pdftypes.PDFStream.get
    - prev.isdigit
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdfinterp.PDFResourceManager.get_font
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - json.load
    - parser.seek
    - pdfminer.utils.choplist
    - pdfminer.layout.LTLayoutContainer.__init__
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.pdfpage.PDFPage.get_pages
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - pdfminer.layout.LTLayoutContainer.group_objects
    - f.read
    - object_properties.get
    - pdfminer.cmapdb.CMapParser.__init__
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.items
    - <builtin>.open
    - d.decompress
    - pdfminer.pdfinterp.PDFPageInterpreter.__init__
    - pdfminer.layout.LTTextGroup.__init__
    - t.append
    - plane.add
    - output_string.getvalue
    - pdfminer.cmapdb.UnicodeMap.__init__
    - os.environ.get
    - start_re.sub
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.layout.LTComponent.__init__
    - io.BytesIO.read
    - group.analyze
    - <builtin>.getattr
    - f.append
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - os.path.realpath
    - obj.is_empty
    - <builtin>.id
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.psparser.PSStackParser.reset
    - data.get
    - pdfminer.ascii85.asciihexdecode
    - pdfminer.pdffont.get_widths
    - parser.revreadlines
    - pdfminer.utils.uniq
    - typing.cast.name.replace
    - pdfminer.layout.LAParams._validate
    - obj0.hoverlap
    - pdfminer.layout.LTFigure.analyze
    - pdfminer.pdfinterp.PDFPageInterpreter.init_state
    - gzip.open
    - pdfminer.layout.LTTextLineVertical.__init__
    - line_bytes.decode
    - <builtin>.len
    - resolved_json_path.startswith
    - typing.cast.decode
    - pdfminer.lzw.LZWDecoder.readbits
    - obj0.vdistance
    - pdfminer.pdftypes.list_value
    - io.BytesIO.tell
    - pdfminer.encodingdb.name2unicode
    - LTItem.__init__
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.pdfdocument.PDFDocument.get_page_labels
    - x.items
    - pdfminer.layout.LTContainer.add
    - pdfminer.converter.PDFLayoutAnalyzer.end_page
    - io.BytesIO
    - pdfminer.pdftypes.stream_value
    - parser.nextobject
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - base64.a85decode.find
    - pdfminer.pdfcolor.PDFColorSpace.__init__
    - pdfminer.layout.LTLayoutContainer.analyze
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.psparser.keyword_name
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - pdfminer.pdffont.TrueTypeFont.__init__
    - logger.error
    - <builtin>.super
    - dists.append
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.layout.LTTextLineHorizontal.__init__
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - line_bytes.startswith
    - <builtin>.iter
    - pdfminer.casting.safe_rect_list
    - pdfminer.pdfparser.PDFParser.__init__
    - line.strip
    - PREDEFINED_COLORSPACE.get
    - <builtin>.map
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.layout.LTExpandableContainer.__init__
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - xref.get_trailer
    - r.append
    - <builtin>.ord
    - done.add
    - <builtin>.isinstance
    - parser.nexttoken
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.psparser.PSBaseParser.seek
    - cid2unicode.copy
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - param.get
    - params.get
    - pdfminer.pdfinterp.PDFTextState.__init__
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - members.extend
    - box.is_empty
    - handler.is_printable
    - typing.cast.get_data
    - plane.remove
    - plane.find
    - parser1.nextobject
    - itertools.islice
    - pdfminer.pdfpage.PDFPage.create_pages.depth_first_search
    - pdfminer.ccitt.get_bytes
    - pdfminer.pdfinterp.PDFPageInterpreter.execute
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.utils.open_filename.__init__
    - pdfminer.cmapdb.PyCMap.__init__
    - log.debug
    - pdfminer.pdffont.PDFType1Font.__init__
    - end_re.sub
    - pdfminer.utils.fsplit
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - typing.cast.items
    - pdfminer.pdfdocument.PDFXRef.__init__
    - typing.cast.strip
    - pdfminer.converter.PDFPageAggregator.receive_layout
    - pdfminer.pdfdevice.TagExtractor.end_page
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    - os.path.join
    - pdfminer.layout.LTTextBox.__init__
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - obj0.is_voverlap
    - pdfminer.layout.LTAnno.__init__
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast.get
    - <builtin>.tuple
    - heapq.heapify
    - <builtin>.str
    - PREDEFINED_COLORSPACE.copy
    - bits.startswith
    - pdfminer.utils.apply_matrix_norm
    - itertools.repeat
    - cmap_name_stream.get
    - pdfminer.pdfdevice.TagExtractor._write
    - cls.encodings.get
    - zlib.decompressobj
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - <builtin>.max
    - pdfminer.pdfinterp.PDFTextState.reset
    - cid_ordering.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/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_string.getvalue
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f8798f353d0>
    - <ast.Constant object at 0x7f8798f35400>
    - <ast.Constant object at 0x7f8798f35dc0>
    - <ast.Constant object at 0x7f8799090850>
    - <ast.Constant object at 0x7f8799090640>
    argNames:
    - pdf_file
    - password
    - page_numbers
    - maxpages
    - caching
    - laparams
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 190
    functionName: pdfminer.high_level.extract_pages
    functionSourceFile: pdfminer.high_level
    functionUses: 0
    functionsReached:
    - pdfminer.pdfdocument.PDFDocument._getobj_objstm
    - typing.cast.startswith
    - pdfminer.utils.apply_matrix_rect
    - pdfminer.cmapdb.CMapBase.__init__
    - pdfminer.utils.Plane.__init__
    - pdfminer.layout.LTTextLineHorizontal.add
    - handler.is_extractable
    - heapq.heappop
    - pdfminer.pdfdocument.PDFDocument.read_xref_from
    - pdfminer.pdffont.PDFType3Font.__init__
    - pdfminer.layout.LTLayoutContainer.group_textlines
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12
    - <builtin>.type
    - pdfminer.pdfinterp.PDFPageInterpreter.pop
    - pdfminer.layout.LTComponent.set_bbox
    - pdfminer.pdfinterp.PDFContentParser.__init__
    - logger.debug
    - pdfminer.layout.LTTextContainer.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources
    - contextlib.suppress
    - pdfminer.pdftypes.PDFStream.get_any
    - pdfminer.pdffont.Type1FontHeaderParser.get_encoding
    - pdfminer.pdfpage.PDFPage._parse_cropbox
    - pdfminer.pdffont.PDFFont._parse_bbox
    - <builtin>.enumerate
    - pdfminer.casting._safe_float_quadruple
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6
    - pdfminer.ascii85.ascii85decode
    - parser.pop
    - pdfminer.converter.PDFLayoutAnalyzer.begin_page
    - pdfminer.pdfdocument.PDFDocument.__init__
    - char2gid.items
    - pdfminer.utils.apply_matrix_pt
    - os.path.exists
    - binascii.unhexlify
    - pdfminer.converter.PDFPageAggregator.__init__
    - binascii.unhexlify.find
    - pdfminer.cmapdb.CMapDB._convert_code2cid_keys
    - objs.difference
    - pdfminer.pdftypes.decipher_all
    - typing.cast.replace
    - arr.tobytes
    - pdfminer.pdfdocument.PDFDocument.find_xref
    - pdfminer.utils.apply_png_predictor
    - pdfminer.pdfinterp.PDFPageInterpreter.init_resources.get_colorspace
    - pdfminer.lzw.LZWDecoder.__init__
    - objs.append
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4
    - heapq.heappush
    - pdfminer.lzw.LZWDecoder.run
    - pdfminer.ccitt.CCITTG4Parser.reset
    - pdfminer.pdftypes.resolve_all
    - pdfminer.cmapdb.CMapDB._load_data
    - typing.cast.write
    - x.append
    - pdfminer.pdfpage.PDFPage.__init__
    - pdfminer.data_structures.NumberTree.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.process_page
    - xref.get_pos
    - pdfminer.psparser.PSStackParser.seek
    - plane.extend
    - pdfminer.pdffont.get_widths2
    - os.path.dirname
    - logger.warning
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz2
    - pdfminer.lzw.lzwdecode
    - pdfminer.pdffont.PDFCIDFont.__init__
    - line.find_neighbors
    - <builtin>.abs
    - <builtin>.float
    - members.append
    - pdfminer.pdfinterp.PDFPageInterpreter.render_contents
    - <builtin>.range
    - typing.cast.resolve
    - pdfminer.pdfdocument.PDFDocument._initialize_password
    - pdfminer.pdftypes.num_value
    - pdfminer.pdfdocument.PDFXRef.get_trailer
    - pdfminer.psparser.literal_name
    - pdfminer.pdftypes.PDFStream.decode
    - pdfminer.pdffont.Type1FontHeaderParser.__init__
    - IDENTITY_ENCODER.get
    - kwargs.copy
    - obj.analyze
    - pdfminer.utils.paeth_predictor
    - xref.get_objids
    - pdfminer.layout.LTTextLine.__init__
    - pdfminer.pdfinterp.PDFGraphicState.__init__
    - obj.get
    - base64.a85decode
    - pdfminer.converter.PDFLayoutAnalyzer.__init__
    - pdfminer.pdftypes.int_value
    - subtables.append
    - obj0.is_hoverlap
    - pdfminer.ccitt.BitParser.__init__
    - <builtin>.zip
    - visited.add
    - struct.unpack
    - code.decode
    - textbox.analyze
    - box.add
    - pdfminer.layout.LTLayoutContainer.group_textboxes.isany
    - valid_streams.append
    - pdfminer.pdfinterp.PDFResourceManager.__init__
    - <builtin>.list
    - pdfminer.layout.LTContainer.__init__
    - widths2.items
    - pdfminer.pdfdevice.PDFDevice.__init__
    - char2gid.update
    - obj0.hdistance
    - html.escape.encode
    - pdfminer.pdftypes.decompress_corrupted
    - pdfminer.ccitt.CCITTG4Parser._do_horizontal
    - obj0.voverlap
    - <builtin>.hasattr
    - <builtin>.min
    - pdfminer.pdftypes.PDFStream.get_data
    - pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec
    - typing.cast.copy
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda2>
    - pdfminer.ccitt.CCITTG4Parser._do_uncompressed
    - m.groups
    - pdfminer.ccitt.CCITTFaxDecoder.output_line
    - pdfminer.pdfdevice.TagExtractor.begin_page
    - pdfminer.pdfdevice.PDFDevice.set_ctm
    - parser.reset
    - pdfminer.utils.bbox2str
    - pdfminer.utils.parse_rect
    - typing.cast.split
    - pdfminer.pdfdocument.PDFDocument.getobj
    - obj.set_objid
    - pdfminer.layout.LAParams.__init__
    - pdfminer.pdfpage.PDFPage._parse_mediabox
    - hdrs.append
    - pdfminer.layout.IndexAssigner.__init__
    - typing.cast
    - pdfminer.layout.LTLayoutContainer.group_textboxes
    - pdfminer.pdfdocument.PDFDocument._get_objects
    - pdfminer.pdftypes.PDFStream.get_filters
    - pdfminer.cmapdb.CMap.__init__
    - HEXADECIMAL.match
    - pdfminer.cmapdb.CMapDB.get_unicode_map
    - <builtin>.int
    - pdfminer.pdfparser.PDFStreamParser.__init__
    - pdfminer.pdfinterp.PDFPageInterpreter.push
    - cid_registry.strip
    - xrefs.append
    - pdfminer.pdfinterp.PDFResourceManager.get_procset
    - log.warning
    - pdfminer.layout.LTPage.__init__
    - <builtin>.set
    - pdfminer.pdfdocument.PDFDocument._getobj_parse
    - parser.nextline
    - boxes.pop
    - pdfminer.lzw.LZWDecoder.feed
    - pdfminer.pdfpage.PDFPage._parse_contents
    - pdfminer.casting.safe_float
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10
    - textboxes.sort
    - handler.is_modifiable
    - <builtin>.chr
    - io.BytesIO.seek
    - pdfminer.ccitt.CCITTFaxDecoder.close
    - pdfminer.layout.LTTextLineVertical.add
    - LTText.__init__
    - raw.append
    - pdfminer.pdfpage.PDFPage.create_pages
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2
    - pdfminer.layout.LTLayoutContainer.group_textboxes.dist
    - done.update
    - decoded_array.extend
    - pdfminer.layout.IndexAssigner.run
    - pdfminer.pdftypes.PDFStream.get
    - prev.isdigit
    - pdfminer.pdftypes.dict_value
    - pdfminer.pdfinterp.PDFResourceManager.get_font
    - pdfminer.pdffont.PDFSimpleFont.__init__
    - json.load
    - parser.seek
    - pdfminer.utils.choplist
    - pdfminer.layout.LTLayoutContainer.__init__
    - pdfminer.ccitt.CCITTG4Parser._flush_line
    - pdfminer.pdfpage.PDFPage.get_pages
    - pdfminer.cmapdb.CMapParser.run
    - pdfminer.ccitt.CCITTG4Parser.__init__
    - f.read
    - pdfminer.layout.LTLayoutContainer.group_objects
    - object_properties.get
    - pdfminer.cmapdb.CMapParser.__init__
    - pdfminer.runlength.rldecode
    - pdfminer.cmapdb.PyUnicodeMap.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_uncompressed
    - d.items
    - <builtin>.open
    - d.decompress
    - pdfminer.converter.PDFPageAggregator.get_result
    - pdfminer.pdfinterp.PDFPageInterpreter.__init__
    - pdfminer.layout.LTTextGroup.__init__
    - t.append
    - plane.add
    - pdfminer.cmapdb.UnicodeMap.__init__
    - os.environ.get
    - start_re.sub
    - pdfminer.psparser.PSStackParser.__init__
    - pdfminer.ccitt.CCITTG4Parser._parse_horiz1
    - pdfminer.layout.LTComponent.__init__
    - io.BytesIO.read
    - group.analyze
    - <builtin>.getattr
    - f.append
    - pdfminer.ccitt.main.Parser.output_line
    - pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr
    - os.path.realpath
    - obj.is_empty
    - <builtin>.id
    - pdfminer.encodingdb.EncodingDB.get_encoding
    - pdfminer.psparser.PSStackParser.reset
    - data.get
    - pdfminer.ascii85.asciihexdecode
    - parser.revreadlines
    - pdfminer.pdffont.get_widths
    - pdfminer.utils.uniq
    - typing.cast.name.replace
    - pdfminer.layout.LAParams._validate
    - obj0.hoverlap
    - pdfminer.layout.LTFigure.analyze
    - pdfminer.pdfinterp.PDFPageInterpreter.init_state
    - gzip.open
    - pdfminer.layout.LTTextLineVertical.__init__
    - line_bytes.decode
    - <builtin>.len
    - resolved_json_path.startswith
    - typing.cast.decode
    - pdfminer.lzw.LZWDecoder.readbits
    - obj0.vdistance
    - pdfminer.pdftypes.list_value
    - io.BytesIO.tell
    - pdfminer.encodingdb.name2unicode
    - LTItem.__init__
    - <builtin>.bytes
    - pdfminer.pdffont.PDFFont.__init__
    - pdfminer.pdfdocument.PDFDocument.get_page_labels
    - x.items
    - pdfminer.layout.LTContainer.add
    - pdfminer.converter.PDFLayoutAnalyzer.end_page
    - io.BytesIO
    - pdfminer.pdftypes.stream_value
    - parser.nextobject
    - pdfminer.pdffont.FontMetricsDB.get_metrics
    - base64.a85decode.find
    - pdfminer.pdfcolor.PDFColorSpace.__init__
    - pdfminer.layout.LTLayoutContainer.analyze
    - pdfminer.ccitt.CCITTG4Parser._do_pass
    - pdfminer.psparser.keyword_name
    - pdfminer.encodingdb.raise_key_error_for_invalid_unicode
    - pdfminer.pdffont.TrueTypeFont.__init__
    - logger.error
    - <builtin>.super
    - dists.append
    - pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0
    - pdfminer.layout.LTTextLineHorizontal.__init__
    - pdfminer.pdfdocument.PDFXRefStream.__init__
    - line_bytes.startswith
    - <builtin>.iter
    - pdfminer.casting.safe_rect_list
    - pdfminer.pdfparser.PDFParser.__init__
    - line.strip
    - PREDEFINED_COLORSPACE.get
    - <builtin>.map
    - pdfminer.pdftypes.PDFStream.__init__
    - pdfminer.pdffont.PDFCIDFont._get_cmap_name
    - pdfminer.pdffont.TrueTypeFont.create_unicode_map
    - pdfminer.ccitt.BitParser._parse_bit
    - pdfminer.layout.LTExpandableContainer.__init__
    - descriptor.get
    - pdfminer.ccitt.CCITTG4Parser.feedbytes
    - xref.get_trailer
    - r.append
    - <builtin>.ord
    - done.add
    - <builtin>.isinstance
    - parser.nexttoken
    - bws_re.sub
    - pdfminer.cmapdb.CMapDB.get_cmap
    - array.array
    - pdfminer.ccitt.CCITTG4Parser._parse_mode
    - buf.extend
    - pdfminer.psparser.PSBaseParser.seek
    - cid2unicode.copy
    - pdfminer.pdfdocument.PDFXRefFallback.load
    - param.get
    - params.get
    - pdfminer.pdfinterp.PDFTextState.__init__
    - pdfminer.ccitt.CCITTG4Parser._do_vertical
    - members.extend
    - box.is_empty
    - handler.is_printable
    - typing.cast.get_data
    - plane.remove
    - plane.find
    - parser1.nextobject
    - itertools.islice
    - pdfminer.pdfpage.PDFPage.create_pages.depth_first_search
    - pdfminer.ccitt.get_bytes
    - pdfminer.pdfinterp.PDFPageInterpreter.execute
    - pdfminer.pdfparser.PDFParser.set_document
    - pdfminer.utils.open_filename.__init__
    - pdfminer.cmapdb.PyCMap.__init__
    - log.debug
    - pdfminer.pdffont.PDFType1Font.__init__
    - end_re.sub
    - pdfminer.utils.fsplit
    - pdfminer.pdfdocument.PDFXRef.load_trailer
    - typing.cast.items
    - pdfminer.pdfdocument.PDFXRef.__init__
    - typing.cast.strip
    - pdfminer.converter.PDFPageAggregator.receive_layout
    - pdfminer.pdfdevice.TagExtractor.end_page
    - pdfminer.layout.LTLayoutContainer.analyze.<lambda1>
    - os.path.join
    - pdfminer.layout.LTTextBox.__init__
    - pdfminer.casting.safe_rect
    - pdfminer.psparser.PSBaseParser.__init__
    - obj0.is_voverlap
    - pdfminer.layout.LTAnno.__init__
    - pdfminer.ccitt.ccittfaxdecode
    - pdfminer.ccitt.CCITTFaxDecoder.__init__
    - pdfminer.utils.apply_tiff_predictor
    - <builtin>.next
    - pdfminer.ccitt.CCITTG4Parser._reset_line
    - typing.cast.get
    - <builtin>.tuple
    - heapq.heapify
    - <builtin>.str
    - PREDEFINED_COLORSPACE.copy
    - bits.startswith
    - pdfminer.utils.apply_matrix_norm
    - itertools.repeat
    - cmap_name_stream.get
    - pdfminer.pdfdevice.TagExtractor._write
    - cls.encodings.get
    - zlib.decompressobj
    - pdfminer.pdftypes.resolve1
    - zlib.decompress
    - <builtin>.max
    - pdfminer.pdfinterp.PDFTextState.reset
    - cid_ordering.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...pdfplumber.fuzz.pdf_load_fuzzer':
  - 59
  - 60
  - 7
  '...pdfplumber.fuzz.pdf_load_fuzzer.TestOneInput':
  - 33
  - 34
  - 35
  - 36
  - 37
  - 38
  - 39
  - 40
  - 45
  - 49
  - 24
  - 27
  - 28
  - 31
  '...pdfplumber.fuzz.pdf_load_fuzzer.main':
  - 56
  - 55
  pdfminer:
  - 9
  - 10
  - 4
  pdfminer._saslprep:
  - 19
  pdfminer._saslprep.saslprep:
  - 97
  - 98
  - 68
  - 70
  - 72
  - 78
  - 47
  - 81
  - 82
  - 57
  pdfminer.arcfour:
  - 1
  pdfminer.arcfour.Arcfour.__init__:
  - 16
  - 13
  - 15
  pdfminer.arcfour.Arcfour.process:
  - 26
  - 31
  pdfminer.ascii85:
  - 8
  - 1
  - 30
  - 7
  pdfminer.ascii85.ascii85decode:
  - 25
  - 26
  - 27
  - 12
  pdfminer.ascii85.asciihexdecode:
  - 34
  - 42
  - 43
  - 44
  - 46
  - 48
  pdfminer.casting._safe_float_quadruple:
  - 83
  - 84
  - 85
  - 86
  - 88
  pdfminer.casting._safe_float_triple:
  - 72
  - 73
  - 74
  - 76
  pdfminer.casting.safe_cmyk:
  - 52
  pdfminer.casting.safe_float:
  - 19
  pdfminer.casting.safe_int:
  - 12
  pdfminer.casting.safe_matrix:
  - 32
  - 25
  - 26
  - 27
  - 28
  - 29
  - 30
  pdfminer.casting.safe_rect:
  - 68
  pdfminer.casting.safe_rect_list:
  - 64
  - 57
  - 61
  pdfminer.casting.safe_rgb:
  - 46
  pdfminer.ccitt.BitParser._parse_bit:
  - 67
  - 71
  pdfminer.ccitt.BitParser.add:
  - 49
  - 50
  - 52
  pdfminer.ccitt.BitParser.feedbytes:
  - 60
  - 61
  - 62
  pdfminer.ccitt.CCITTFaxDecoder.__init__:
  - 539
  pdfminer.ccitt.CCITTFaxDecoder.output_line:
  - 547
  - 548
  - 550
  - 551
  - 553
  pdfminer.ccitt.CCITTG4Parser:
  - 76
  - 77
  - 78
  - 79
  - 80
  - 81
  - 82
  - 83
  - 84
  - 85
  - 86
  - 87
  - 88
  - 89
  - 90
  - 91
  - 92
  - 93
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 103
  - 104
  - 105
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 112
  - 113
  - 114
  - 115
  - 116
  - 117
  - 118
  - 119
  - 120
  - 121
  - 122
  - 123
  - 124
  - 125
  - 126
  - 127
  - 128
  - 129
  - 130
  - 131
  - 132
  - 133
  - 134
  - 135
  - 136
  - 137
  - 138
  - 139
  - 140
  - 141
  - 142
  - 143
  - 144
  - 145
  - 146
  - 147
  - 148
  - 149
  - 150
  - 151
  - 152
  - 153
  - 154
  - 155
  - 156
  - 157
  - 158
  - 159
  - 160
  - 161
  - 162
  - 163
  - 164
  - 165
  - 166
  - 167
  - 168
  - 169
  - 170
  - 171
  - 172
  - 173
  - 174
  - 175
  - 176
  - 177
  - 178
  - 179
  - 180
  - 181
  - 182
  - 183
  - 184
  - 185
  - 186
  - 187
  - 188
  - 189
  - 190
  - 191
  - 192
  - 193
  - 194
  - 195
  - 196
  - 197
  - 198
  - 199
  - 202
  - 203
  - 204
  - 205
  - 206
  - 207
  - 208
  - 209
  - 210
  - 211
  - 212
  - 213
  - 214
  - 215
  - 216
  - 217
  - 218
  - 219
  - 220
  - 221
  - 222
  - 223
  - 224
  - 225
  - 226
  - 227
  - 228
  - 229
  - 230
  - 231
  - 232
  - 233
  - 234
  - 235
  - 236
  - 237
  - 238
  - 239
  - 240
  - 241
  - 242
  - 243
  - 244
  - 245
  - 246
  - 247
  - 248
  - 249
  - 250
  - 251
  - 252
  - 253
  - 254
  - 255
  - 256
  - 257
  - 258
  - 259
  - 260
  - 261
  - 262
  - 263
  - 264
  - 265
  - 266
  - 267
  - 268
  - 269
  - 270
  - 271
  - 272
  - 273
  - 274
  - 275
  - 276
  - 277
  - 278
  - 279
  - 280
  - 281
  - 282
  - 283
  - 284
  - 285
  - 286
  - 287
  - 288
  - 289
  - 290
  - 291
  - 292
  - 293
  - 294
  - 295
  - 296
  - 297
  - 298
  - 299
  - 300
  - 301
  - 302
  - 303
  - 304
  - 305
  - 308
  - 309
  - 310
  - 311
  - 312
  - 313
  - 314
  - 315
  - 316
  - 317
  - 318
  - 319
  - 320
  - 321
  pdfminer.ccitt.CCITTG4Parser.__init__:
  - 338
  - 341
  pdfminer.ccitt.CCITTG4Parser._do_horizontal:
  - 513
  - 514
  - 518
  - 519
  - 510
  pdfminer.ccitt.CCITTG4Parser._do_pass:
  - 486
  - 487
  - 489
  - 496
  - 497
  - 499
  - 505
  pdfminer.ccitt.CCITTG4Parser._do_uncompressed:
  - 529
  - 526
  - 527
  pdfminer.ccitt.CCITTG4Parser._do_vertical:
  - 462
  - 463
  - 465
  - 472
  - 473
  - 474
  - 475
  - 477
  - 478
  pdfminer.ccitt.CCITTG4Parser._flush_line:
  - 456
  - 452
  - 453
  - 455
  pdfminer.ccitt.CCITTG4Parser._get_bits:
  - 419
  pdfminer.ccitt.CCITTG4Parser._get_refline:
  - 422
  - 423
  - 424
  - 425
  - 428
  - 430
  - 432
  pdfminer.ccitt.CCITTG4Parser._parse_horiz1:
  - 386
  - 379
  - 382
  pdfminer.ccitt.CCITTG4Parser._parse_horiz2:
  - 392
  - 395
  - 398
  - 399
  - 401
  pdfminer.ccitt.CCITTG4Parser._parse_mode:
  - 355
  - 356
  - 357
  - 359
  - 362
  - 366
  - 369
  - 371
  - 372
  - 373
  pdfminer.ccitt.CCITTG4Parser._parse_uncompressed:
  - 407
  - 409
  - 411
  - 412
  - 415
  pdfminer.ccitt.CCITTG4Parser._reset_line:
  - 447
  pdfminer.ccitt.CCITTG4Parser.feedbytes:
  - 344
  - 346
  - 347
  pdfminer.ccitt.CCITTG4Parser.output_line:
  - 443
  pdfminer.ccitt.CCITTG4Parser.reset:
  - 437
  - 438
  pdfminer.ccitt.ccittfaxdecode:
  - 557
  - 558
  - 559
  - 560
  - 561
  - 562
  - 565
  - 566
  pdfminer.ccitt.get_bytes:
  - 26
  pdfminer.ccitt.main:
  - 596
  - 597
  - 598
  - 599
  - 600
  - 601
  - 571
  - 574
  pdfminer.ccitt.main.Parser.__init__:
  - 581
  - 582
  pdfminer.ccitt.main.Parser.close:
  - 594
  pdfminer.ccitt.main.Parser.output_line:
  - 585
  - 586
  - 587
  - 589
  pdfminer.cmapdb:
  - 1
  - 36
  pdfminer.cmapdb.CMap.__init__:
  - 70
  pdfminer.cmapdb.CMap.__repr__:
  - 74
  pdfminer.cmapdb.CMap.decode:
  - 96
  - 97
  - 100
  - 91
  - 93
  - 94
  pdfminer.cmapdb.CMap.dump:
  - 110
  - 113
  - 115
  - 116
  - 118
  pdfminer.cmapdb.CMap.use_cmap:
  - 88
  - 77
  pdfminer.cmapdb.CMap.use_cmap.copy:
  - 80
  - 81
  - 84
  pdfminer.cmapdb.CMapBase.__init__:
  - 47
  pdfminer.cmapdb.CMapBase.is_vertical:
  - 50
  pdfminer.cmapdb.CMapDB._convert_code2cid_keys:
  - 231
  - 232
  - 235
  - 238
  - 242
  - 243
  pdfminer.cmapdb.CMapDB._load_data:
  - 257
  - 260
  - 261
  - 262
  - 265
  - 267
  - 268
  - 269
  - 270
  - 272
  - 274
  - 276
  - 278
  - 281
  - 282
  - 283
  - 250
  - 251
  - 253
  - 254
  pdfminer.cmapdb.CMapDB.get_cmap:
  - 289
  - 290
  - 291
  - 292
  - 293
  - 294
  - 295
  - 296
  - 301
  - 302
  pdfminer.cmapdb.CMapDB.get_unicode_map:
  - 312
  - 311
  pdfminer.cmapdb.CMapParser:
  - 328
  - 329
  - 330
  - 331
  - 332
  - 333
  - 334
  - 335
  - 336
  - 337
  - 338
  - 339
  - 340
  - 341
  - 342
  - 343
  pdfminer.cmapdb.CMapParser.__init__:
  - 322
  - 318
  pdfminer.cmapdb.CMapParser._warn_once:
  - 499
  - 500
  - 501
  - 507
  pdfminer.cmapdb.CMapParser.do_keyword:
  - 346
  - 350
  - 352
  - 355
  - 359
  - 362
  - 364
  - 365
  - 370
  - 372
  - 373
  - 380
  - 381
  - 383
  - 384
  - 387
  - 388
  - 391
  - 392
  - 393
  - 394
  - 395
  - 397
  - 398
  - 400
  - 401
  - 403
  - 404
  - 411
  - 412
  - 419
  - 420
  - 421
  - 422
  - 423
  - 424
  - 427
  - 428
  - 431
  - 432
  - 433
  - 434
  - 435
  - 438
  - 439
  - 442
  - 443
  - 444
  - 445
  - 446
  - 448
  - 449
  - 451
  - 452
  - 454
  - 455
  - 456
  - 457
  - 458
  - 462
  - 463
  - 465
  - 467
  - 469
  - 471
  - 472
  - 473
  - 474
  - 477
  - 478
  - 481
  - 482
  - 483
  - 484
  - 485
  - 488
  - 489
  - 492
  - 493
  - 496
  pdfminer.cmapdb.CMapParser.run:
  - 325
  - 326
  pdfminer.cmapdb.FileCMap.add_code2cid:
  - 165
  - 166
  - 169
  - 170
  - 171
  - 172
  - 177
  pdfminer.cmapdb.FileUnicodeMap.add_cid2unichr:
  - 192
  - 197
  - 183
  - 184
  - 186
  - 187
  - 188
  - 190
  - 191
  pdfminer.cmapdb.IdentityCMap.decode:
  - 123
  - 124
  - 125
  pdfminer.cmapdb.IdentityCMapByte.decode:
  - 132
  - 133
  - 134
  pdfminer.cmapdb.IdentityUnicodeMap.get_unichr:
  - 160
  - 158
  - 159
  pdfminer.cmapdb.PyCMap.__init__:
  - 204
  - 206
  pdfminer.cmapdb.PyUnicodeMap.__init__:
  - 212
  - 213
  pdfminer.cmapdb.UnicodeMap.__init__:
  - 141
  pdfminer.cmapdb.UnicodeMap.__repr__:
  - 145
  pdfminer.cmapdb.UnicodeMap.dump:
  - 152
  - 153
  pdfminer.cmapdb.UnicodeMap.get_unichr:
  - 148
  pdfminer.converter:
  - 58
  - 293
  pdfminer.converter.HOCRConverter:
  - 859
  - 843
  pdfminer.converter.HOCRConverter.__init__:
  - 880
  - 870
  pdfminer.converter.HOCRConverter.bbox_repr:
  - 888
  - 885
  - 886
  - 887
  pdfminer.converter.HOCRConverter.close:
  - 1016
  pdfminer.converter.HOCRConverter.receive_layout:
  - 1013
  pdfminer.converter.HOCRConverter.receive_layout.render:
  - 955
  - 956
  - 957
  - 959
  - 963
  - 965
  - 966
  - 967
  - 968
  - 969
  - 970
  - 972
  - 973
  - 974
  - 975
  - 976
  - 980
  - 982
  - 983
  - 984
  - 985
  - 986
  - 988
  - 992
  - 993
  - 994
  - 996
  - 1001
  - 1005
  pdfminer.converter.HOCRConverter.write:
  - 896
  - 892
  - 893
  - 894
  pdfminer.converter.HOCRConverter.write_footer:
  - 924
  - 925
  pdfminer.converter.HOCRConverter.write_header:
  - 899
  - 900
  - 905
  - 908
  - 909
  - 910
  - 913
  - 916
  - 920
  - 921
  pdfminer.converter.HOCRConverter.write_text:
  - 930
  - 931
  - 932
  pdfminer.converter.HOCRConverter.write_word:
  - 935
  - 937
  - 939
  - 941
  - 946
  - 949
  pdfminer.converter.HTMLConverter.__init__:
  - 449
  - 425
  - 427
  - 430
  - 432
  - 443
  - 444
  - 445
  - 415
  pdfminer.converter.HTMLConverter.begin_div:
  - 568
  - 557
  pdfminer.converter.HTMLConverter.close:
  - 681
  pdfminer.converter.HTMLConverter.end_div:
  - 571
  - 572
  - 573
  - 574
  pdfminer.converter.HTMLConverter.place_border:
  - 503
  pdfminer.converter.HTMLConverter.place_image:
  - 514
  - 515
  - 524
  - 517
  pdfminer.converter.HTMLConverter.place_rect:
  - 490
  - 491
  - 500
  pdfminer.converter.HTMLConverter.place_text:
  - 544
  - 545
  - 534
  - 535
  - 543
  pdfminer.converter.HTMLConverter.put_newline:
  - 592
  pdfminer.converter.HTMLConverter.put_text:
  - 578
  - 579
  - 580
  - 582
  - 583
  - 589
  pdfminer.converter.HTMLConverter.receive_layout:
  - 677
  pdfminer.converter.HTMLConverter.receive_layout.render:
  - 642
  - 643
  - 644
  - 645
  - 646
  - 648
  - 653
  - 654
  - 655
  - 656
  - 657
  - 658
  - 659
  - 666
  - 668
  - 669
  - 670
  - 671
  - 672
  - 673
  - 674
  - 675
  - 603
  - 605
  - 606
  - 607
  - 611
  - 614
  - 615
  - 616
  - 617
  - 618
  - 619
  - 620
  - 621
  - 622
  - 623
  - 624
  - 625
  - 626
  - 627
  - 628
  - 629
  - 630
  - 631
  - 632
  - 633
  - 634
  - 635
  - 637
  pdfminer.converter.HTMLConverter.receive_layout.show_group:
  - 596
  - 597
  - 598
  - 599
  pdfminer.converter.HTMLConverter.write:
  - 452
  - 453
  - 455
  pdfminer.converter.HTMLConverter.write_footer:
  - 473
  - 475
  - 476
  - 470
  pdfminer.converter.HTMLConverter.write_header:
  - 466
  - 458
  - 459
  - 467
  pdfminer.converter.HTMLConverter.write_text:
  - 479
  pdfminer.converter.PDFConverter.__init__:
  - 305
  - 308
  pdfminer.converter.PDFConverter._is_binary_stream:
  - 320
  - 312
  - 313
  - 315
  - 318
  pdfminer.converter.PDFLayoutAnalyzer.__init__:
  - 71
  pdfminer.converter.PDFLayoutAnalyzer.begin_figure:
  - 90
  - 91
  pdfminer.converter.PDFLayoutAnalyzer.begin_page:
  - 77
  - 78
  - 79
  pdfminer.converter.PDFLayoutAnalyzer.end_figure:
  - 96
  - 97
  - 95
  pdfminer.converter.PDFLayoutAnalyzer.end_page:
  - 82
  - 83
  - 84
  - 85
  - 87
  pdfminer.converter.PDFLayoutAnalyzer.handle_undefined_char:
  - 267
  pdfminer.converter.PDFLayoutAnalyzer.paint_path:
  - 128
  - 130
  - 131
  - 132
  - 143
  - 145
  - 147
  - 150
  - 151
  - 158
  - 159
  - 163
  - 165
  - 167
  - 172
  - 184
  - 186
  - 193
  - 194
  - 205
  - 207
  - 218
  - 220
  - 231
  - 116
  - 117
  - 119
  pdfminer.converter.PDFLayoutAnalyzer.render_char:
  - 263
  - 245
  - 246
  - 248
  - 249
  - 250
  - 251
  pdfminer.converter.PDFLayoutAnalyzer.render_image:
  - 106
  - 100
  - 101
  pdfminer.converter.PDFPageAggregator.__init__:
  - 281
  pdfminer.converter.TextConverter.__init__:
  - 337
  pdfminer.converter.TextConverter.receive_layout:
  - 360
  - 361
  - 362
  - 363
  pdfminer.converter.TextConverter.receive_layout.render:
  - 352
  - 353
  - 354
  - 355
  - 356
  - 357
  - 358
  - 350
  - 351
  pdfminer.converter.TextConverter.render_image:
  - 369
  - 370
  pdfminer.converter.TextConverter.write_text:
  - 344
  - 346
  - 342
  - 343
  pdfminer.converter.XMLConverter:
  - 685
  pdfminer.converter.XMLConverter.__init__:
  - 712
  - 697
  - 707
  pdfminer.converter.XMLConverter.close:
  - 839
  pdfminer.converter.XMLConverter.receive_layout:
  - 836
  pdfminer.converter.XMLConverter.receive_layout.render:
  - 768
  - 770
  - 771
  - 775
  - 777
  - 778
  - 782
  - 783
  - 785
  - 786
  - 787
  - 788
  - 789
  - 790
  - 791
  - 792
  - 793
  - 794
  - 795
  - 796
  - 797
  - 799
  - 801
  - 802
  - 803
  - 804
  - 805
  - 806
  - 809
  - 810
  - 815
  - 816
  - 817
  - 818
  - 819
  - 820
  - 821
  - 822
  - 823
  - 825
  - 830
  - 749
  - 752
  - 755
  - 756
  - 757
  - 758
  - 759
  - 760
  - 761
  - 762
  - 763
  - 764
  pdfminer.converter.XMLConverter.receive_layout.show_group:
  - 737
  - 738
  - 739
  - 741
  - 742
  - 743
  - 744
  - 745
  pdfminer.converter.XMLConverter.write:
  - 715
  - 716
  - 718
  pdfminer.converter.XMLConverter.write_footer:
  - 728
  pdfminer.converter.XMLConverter.write_header:
  - 721
  - 722
  - 724
  - 725
  pdfminer.converter.XMLConverter.write_text:
  - 731
  - 732
  - 733
  pdfminer.data_structures.NumberTree:
  - 12
  pdfminer.data_structures.NumberTree.__init__:
  - 18
  - 23
  - 24
  - 25
  - 26
  - 27
  - 28
  pdfminer.data_structures.NumberTree._parse:
  - 32
  - 33
  - 34
  - 36
  - 37
  - 38
  pdfminer.data_structures.NumberTree.values:
  - 48
  - 49
  - 52
  - 46
  pdfminer.encodingdb:
  - 11
  - 13
  pdfminer.encodingdb.EncodingDB:
  - 96
  - 98
  - 90
  - 91
  - 92
  - 94
  pdfminer.encodingdb.EncodingDB.get_encoding:
  - 114
  - 115
  - 116
  - 118
  - 119
  - 121
  - 123
  - 125
  pdfminer.encodingdb.name2unicode:
  - 17
  - 30
  - 36
  - 37
  - 39
  - 40
  - 42
  - 45
  - 46
  - 48
  - 50
  - 51
  - 53
  - 54
  - 55
  - 56
  - 58
  - 59
  - 61
  - 62
  - 63
  - 64
  pdfminer.encodingdb.raise_key_error_for_invalid_unicode:
  - 73
  - 78
  pdfminer.fontmetrics:
  - 1
  pdfminer.fontmetrics.convert_font_metrics:
  - 34
  - 39
  - 40
  - 41
  - 42
  - 45
  - 50
  - 51
  - 52
  - 53
  - 55
  - 56
  - 57
  - 58
  - 59
  - 61
  - 62
  - 64
  - 65
  - 66
  - 67
  - 68
  - 69
  - 70
  pdfminer.glyphlist:
  - 1
  pdfminer.glyphlist.convert_glyphlist:
  - 64
  - 65
  - 66
  - 67
  - 68
  - 70
  - 71
  - 73
  - 74
  - 76
  - 77
  - 78
  - 79
  - 59
  pdfminer.high_level:
  - 1
  pdfminer.high_level.extract_pages:
  - 225
  - 226
  - 227
  - 198
  - 210
  - 211
  - 213
  - 214
  - 215
  - 216
  - 217
  - 218
  pdfminer.high_level.extract_text:
  - 169
  - 170
  - 172
  - 173
  - 174
  - 175
  - 176
  - 178
  - 185
  - 187
  - 156
  pdfminer.high_level.extract_text_to_fp:
  - 133
  - 134
  - 142
  - 144
  - 43
  - 72
  - 73
  - 76
  - 77
  - 79
  - 82
  - 85
  - 86
  - 94
  - 95
  - 104
  - 105
  - 115
  - 116
  - 124
  - 126
  pdfminer.image.BMPWriter.__init__:
  - 66
  - 67
  - 41
  - 43
  - 76
  - 45
  - 77
  - 78
  - 79
  - 49
  - 81
  - 82
  - 52
  - 83
  - 85
  - 86
  - 87
  pdfminer.image.BMPWriter.write_line:
  - 91
  - 92
  pdfminer.image.ImageWriter:
  - 96
  pdfminer.image.ImageWriter.__init__:
  - 104
  - 103
  pdfminer.image.ImageWriter._create_unique_image_name:
  - 288
  - 290
  - 292
  pdfminer.image.ImageWriter._is_jbig2_iamge:
  - 280
  - 281
  - 282
  pdfminer.image.ImageWriter._save_bmp:
  - 226
  - 227
  - 228
  - 229
  - 230
  - 232
  - 233
  pdfminer.image.ImageWriter._save_bytes:
  - 256
  - 258
  - 261
  - 262
  - 263
  - 265
  - 238
  - 239
  - 241
  - 242
  - 252
  - 254
  pdfminer.image.ImageWriter._save_jbig2:
  - 192
  - 193
  - 196
  - 197
  - 198
  - 199
  - 201
  - 207
  - 208
  - 209
  - 210
  - 211
  - 212
  - 214
  - 215
  - 190
  - 191
  pdfminer.image.ImageWriter._save_jpeg:
  - 160
  - 161
  - 162
  - 163
  - 165
  - 148
  - 149
  - 151
  - 152
  - 153
  - 159
  pdfminer.image.ImageWriter._save_jpeg2000:
  - 170
  - 171
  - 173
  - 174
  - 184
  - 185
  - 186
  pdfminer.image.ImageWriter._save_raw:
  - 272
  - 274
  - 275
  - 270
  pdfminer.image.ImageWriter.export_image:
  - 131
  - 133
  - 137
  - 139
  - 140
  - 143
  - 107
  - 110
  - 112
  - 113
  - 115
  - 116
  - 118
  - 119
  - 121
  - 122
  - 124
  - 125
  - 127
  pdfminer.jbig2.JBIG2StreamReader:
  - 79
  pdfminer.jbig2.JBIG2StreamReader.get_segments:
  - 96
  - 97
  - 100
  - 101
  - 86
  - 88
  - 89
  - 90
  - 91
  - 94
  - 95
  pdfminer.jbig2.JBIG2StreamReader.is_eof:
  - 105
  - 108
  pdfminer.jbig2.JBIG2StreamReader.parse_data_length:
  - 180
  - 181
  - 182
  - 189
  pdfminer.jbig2.JBIG2StreamReader.parse_flags:
  - 120
  - 118
  - 119
  pdfminer.jbig2.JBIG2StreamReader.parse_page_assoc:
  - 169
  - 170
  - 171
  pdfminer.jbig2.JBIG2StreamReader.parse_retention_flags:
  - 129
  - 133
  - 134
  - 135
  - 137
  - 138
  - 139
  - 140
  - 141
  - 142
  - 143
  - 144
  - 147
  - 148
  - 150
  - 155
  - 157
  - 158
  - 159
  - 160
  pdfminer.jbig2.JBIG2StreamWriter:
  - 200
  - 195
  - 199
  pdfminer.jbig2.JBIG2StreamWriter.encode_data_length:
  - 349
  - 350
  pdfminer.jbig2.JBIG2StreamWriter.encode_flags:
  - 288
  - 293
  - 297
  - 299
  - 285
  pdfminer.jbig2.JBIG2StreamWriter.encode_retention_flags:
  - 309
  - 310
  - 312
  - 313
  - 314
  - 315
  - 317
  - 319
  - 321
  - 322
  - 324
  - 327
  - 330
  - 332
  - 334
  - 335
  - 337
  - 342
  - 344
  - 346
  pdfminer.jbig2.JBIG2StreamWriter.encode_segment:
  - 273
  - 274
  - 275
  - 276
  - 277
  - 279
  pdfminer.jbig2.JBIG2StreamWriter.write_file:
  - 256
  - 259
  - 260
  - 263
  - 264
  - 266
  - 267
  - 248
  - 251
  - 253
  - 254
  pdfminer.jbig2.JBIG2StreamWriter.write_segments:
  - 225
  - 226
  - 230
  - 233
  - 234
  - 235
  - 236
  - 237
  - 215
  - 216
  - 217
  - 218
  - 220
  - 222
  - 223
  pdfminer.jbig2.bit_set:
  - 41
  pdfminer.jbig2.check_flag:
  - 45
  pdfminer.jbig2.mask_value:
  - 57
  - 58
  pdfminer.jbig2.masked_value:
  - 49
  - 50
  pdfminer.jbig2.unpack_int:
  - 66
  pdfminer.latin_enc:
  - 1
  pdfminer.layout:
  - 32
  - 408
  pdfminer.layout.IndexAssigner.run:
  - 40
  - 43
  - 44
  - 45
  pdfminer.layout.LAParams:
  - 49
  pdfminer.layout.LAParams.__init__:
  - 94
  pdfminer.layout.LAParams._validate:
  - 97
  - 101
  - 103
  pdfminer.layout.LTAnno:
  - 333
  pdfminer.layout.LTChar:
  - 348
  pdfminer.layout.LTChar.__init__:
  - 384
  - 385
  - 387
  - 389
  - 390
  - 363
  - 371
  - 373
  - 380
  pdfminer.layout.LTChar.__repr__:
  - 401
  - 397
  - 398
  pdfminer.layout.LTComponent:
  - 134
  pdfminer.layout.LTComponent.__init__:
  - 137
  - 138
  pdfminer.layout.LTComponent.__repr__:
  - 141
  pdfminer.layout.LTComponent.hdistance:
  - 178
  - 174
  - 175
  pdfminer.layout.LTComponent.hoverlap:
  - 181
  - 182
  - 183
  pdfminer.layout.LTComponent.is_hoverlap:
  - 170
  pdfminer.layout.LTComponent.is_voverlap:
  - 188
  pdfminer.layout.LTComponent.vdistance:
  - 192
  - 193
  - 196
  pdfminer.layout.LTComponent.voverlap:
  - 200
  - 201
  - 199
  pdfminer.layout.LTContainer:
  - 412
  pdfminer.layout.LTContainer.__init__:
  - 415
  pdfminer.layout.LTContainer.__iter__:
  - 419
  pdfminer.layout.LTContainer.__len__:
  - 422
  pdfminer.layout.LTContainer.add:
  - 425
  pdfminer.layout.LTContainer.analyze:
  - 432
  - 433
  pdfminer.layout.LTContainer.extend:
  - 428
  - 429
  pdfminer.layout.LTCurve:
  - 207
  pdfminer.layout.LTCurve.__init__:
  - 227
  pdfminer.layout.LTCurve.get_pts:
  - 239
  pdfminer.layout.LTExpandableContainer.__init__:
  - 438
  pdfminer.layout.LTExpandableContainer.add:
  - 448
  - 449
  - 443
  - 444
  - 446
  - 447
  pdfminer.layout.LTFigure:
  - 946
  pdfminer.layout.LTFigure.__init__:
  - 958
  - 959
  pdfminer.layout.LTFigure.__repr__:
  - 964
  - 965
  pdfminer.layout.LTFigure.analyze:
  - 969
  - 971
  pdfminer.layout.LTImage:
  - 309
  pdfminer.layout.LTImage.__init__:
  - 320
  - 321
  - 322
  - 315
  - 318
  - 319
  pdfminer.layout.LTImage.__repr__:
  - 328
  pdfminer.layout.LTItem:
  - 116
  pdfminer.layout.LTItem.analyze:
  - 119
  pdfminer.layout.LTLayoutContainer.__init__:
  - 699
  pdfminer.layout.LTLayoutContainer.analyze:
  - 910
  - 911
  - 912
  - 913
  - 915
  - 916
  - 917
  - 918
  - 919
  - 920
  - 921
  - 922
  - 930
  - 932
  - 933
  - 934
  - 935
  - 936
  - 937
  - 939
  - 941
  pdfminer.layout.LTLayoutContainer.analyze.<lambda1>:
  - 910
  pdfminer.layout.LTLayoutContainer.analyze.<lambda2>:
  - 916
  pdfminer.layout.LTLayoutContainer.analyze.getkey:
  - 925
  pdfminer.layout.LTLayoutContainer.group_objects:
  - 769
  - 770
  - 771
  - 774
  - 775
  - 777
  - 778
  - 710
  - 711
  - 723
  - 724
  - 725
  - 726
  - 727
  - 746
  - 747
  - 748
  - 749
  - 750
  - 753
  - 754
  - 756
  - 757
  - 758
  - 760
  - 761
  - 762
  - 763
  - 764
  - 765
  - 766
  - 767
  pdfminer.layout.LTLayoutContainer.group_textboxes:
  - 896
  - 898
  - 899
  - 901
  - 903
  - 905
  - 819
  - 837
  - 871
  - 873
  - 875
  - 876
  - 878
  - 879
  - 880
  - 881
  - 883
  - 884
  - 885
  - 887
  - 891
  - 893
  - 894
  - 895
  pdfminer.layout.LTLayoutContainer.group_textboxes.dist:
  - 840
  - 851
  - 852
  - 853
  - 854
  pdfminer.layout.LTLayoutContainer.group_textboxes.isany:
  - 864
  - 865
  - 866
  - 867
  - 868
  - 862
  - 863
  pdfminer.layout.LTLayoutContainer.group_textlines:
  - 785
  - 786
  - 787
  - 789
  - 790
  - 792
  - 793
  - 794
  - 795
  - 796
  - 797
  - 799
  - 800
  - 801
  - 803
  - 804
  - 805
  - 808
  - 810
  - 811
  - 812
  pdfminer.layout.LTLine:
  - 243
  pdfminer.layout.LTLine.__init__:
  - 261
  pdfminer.layout.LTPage:
  - 975
  pdfminer.layout.LTPage.__init__:
  - 982
  pdfminer.layout.LTPage.__repr__:
  - 989
  pdfminer.layout.LTRect:
  - 276
  pdfminer.layout.LTRect.__init__:
  - 294
  pdfminer.layout.LTText:
  - 123
  pdfminer.layout.LTText.__repr__:
  - 126
  pdfminer.layout.LTText.get_text:
  - 129
  pdfminer.layout.LTTextBox:
  - 625
  pdfminer.layout.LTTextBox.__init__:
  - 633
  pdfminer.layout.LTTextBox.__repr__:
  - 639
  pdfminer.layout.LTTextBoxHorizontal.analyze:
  - 648
  - 649
  pdfminer.layout.LTTextBoxVertical.analyze:
  - 657
  - 658
  pdfminer.layout.LTTextContainer.__init__:
  - 456
  - 457
  pdfminer.layout.LTTextContainer.get_text:
  - 460
  - 461
  pdfminer.layout.LTTextGroup.__init__:
  - 669
  - 670
  pdfminer.layout.LTTextGroupLRTB.analyze:
  - 680
  - 675
  - 679
  pdfminer.layout.LTTextGroupTBRL.analyze:
  - 691
  - 692
  - 687
  pdfminer.layout.LTTextLine:
  - 469
  pdfminer.layout.LTTextLine.__init__:
  - 476
  pdfminer.layout.LTTextLine.__repr__:
  - 480
  pdfminer.layout.LTTextLine.analyze:
  - 483
  - 484
  - 485
  pdfminer.layout.LTTextLine.is_empty:
  - 495
  pdfminer.layout.LTTextLineHorizontal.__init__:
  - 500
  pdfminer.layout.LTTextLineHorizontal._is_centrally_aligned_with:
  - 554
  - 555
  pdfminer.layout.LTTextLineHorizontal._is_left_aligned_with:
  - 542
  - 543
  pdfminer.layout.LTTextLineHorizontal._is_right_aligned_with:
  - 546
  - 547
  pdfminer.layout.LTTextLineHorizontal._is_same_height_as:
  - 558
  pdfminer.layout.LTTextLineHorizontal.add:
  - 506
  - 507
  - 508
  - 509
  - 511
  pdfminer.layout.LTTextLineHorizontal.find_neighbors:
  - 518
  - 526
  - 531
  - 532
  - 534
  - 535
  - 536
  pdfminer.layout.LTTextLineVertical.__init__:
  - 563
  pdfminer.layout.LTTextLineVertical._is_centrally_aligned_with:
  - 617
  - 618
  pdfminer.layout.LTTextLineVertical._is_lower_aligned_with:
  - 605
  - 606
  pdfminer.layout.LTTextLineVertical._is_same_width_as:
  - 621
  pdfminer.layout.LTTextLineVertical._is_upper_aligned_with:
  - 609
  - 610
  pdfminer.layout.LTTextLineVertical.add:
  - 569
  - 570
  - 571
  - 572
  - 574
  pdfminer.layout.LTTextLineVertical.find_neighbors:
  - 581
  - 589
  - 594
  - 595
  - 597
  - 598
  - 599
  pdfminer.lzw:
  - 8
  pdfminer.lzw.LZWDecoder.feed:
  - 64
  - 65
  - 66
  - 67
  - 68
  - 71
  - 72
  - 74
  - 76
  - 52
  - 53
  - 54
  - 55
  - 58
  - 60
  - 61
  - 63
  pdfminer.lzw.LZWDecoder.readbits:
  - 46
  - 43
  - 44
  - 30
  pdfminer.lzw.LZWDecoder.run:
  - 88
  - 84
  - 94
  - 92
  pdfminer.lzw.lzwdecode:
  - 104
  - 105
  - 106
  pdfminer.pdfcolor:
  - 36
  - 5
  - 6
  - 7
  - 9
  - 10
  - 11
  - 23
  - 25
  pdfminer.pdfdevice:
  - 18
  - 29
  pdfminer.pdfdevice.PDFDevice:
  - 33
  pdfminer.pdfdevice.PDFDevice.__exit__:
  - 46
  pdfminer.pdfdevice.PDFTextDevice.render_string:
  - 134
  - 107
  - 115
  - 118
  - 119
  pdfminer.pdfdevice.PDFTextDevice.render_string_horizontal:
  - 166
  - 167
  - 170
  - 171
  - 172
  - 174
  - 175
  - 184
  - 188
  pdfminer.pdfdevice.PDFTextDevice.render_string_vertical:
  - 230
  - 234
  - 212
  - 213
  - 216
  - 217
  - 218
  - 220
  - 221
  pdfminer.pdfdevice.TagExtractor.__init__:
  - 262
  pdfminer.pdfdevice.TagExtractor._write:
  - 327
  pdfminer.pdfdevice.TagExtractor.begin_page:
  - 297
  - 294
  pdfminer.pdfdevice.TagExtractor.begin_tag:
  - 305
  - 306
  - 308
  - 309
  - 312
  - 313
  - 314
  pdfminer.pdfdevice.TagExtractor.do_tag:
  - 323
  - 324
  pdfminer.pdfdevice.TagExtractor.end_page:
  - 300
  pdfminer.pdfdevice.TagExtractor.end_tag:
  - 320
  - 317
  - 318
  - 319
  pdfminer.pdfdevice.TagExtractor.render_string:
  - 290
  - 278
  - 279
  - 280
  - 281
  - 283
  - 284
  - 286
  pdfminer.pdfdocument:
  - 104
  - 49
  - 102
  - 103
  pdfminer.pdfdocument.PDFDocument:
  - 674
  - 748
  pdfminer.pdfdocument.PDFDocument.__init__:
  - 700
  - 711
  - 716
  - 717
  - 719
  - 721
  - 722
  - 723
  - 725
  - 726
  - 727
  - 730
  - 734
  - 735
  - 736
  - 737
  - 738
  - 739
  - 741
  - 745
  pdfminer.pdfdocument.PDFDocument._get_objects:
  - 785
  - 788
  - 790
  - 793
  - 794
  - 798
  - 799
  pdfminer.pdfdocument.PDFDocument._getobj_objstm:
  - 770
  - 773
  - 774
  pdfminer.pdfdocument.PDFDocument._getobj_parse:
  - 806
  - 807
  - 808
  - 809
  - 815
  - 818
  - 819
  - 820
  - 823
  - 826
  - 828
  pdfminer.pdfdocument.PDFDocument._initialize_password:
  - 755
  - 757
  - 758
  - 759
  - 761
  - 763
  - 764
  - 765
  pdfminer.pdfdocument.PDFDocument.find_xref:
  - 961
  - 962
  - 964
  - 967
  - 969
  - 973
  - 978
  - 954
  - 957
  - 958
  - 959
  pdfminer.pdfdocument.PDFDocument.get_dest:
  - 944
  - 946
  - 947
  - 941
  pdfminer.pdfdocument.PDFDocument.get_outlines:
  - 891
  - 875
  pdfminer.pdfdocument.PDFDocument.get_outlines.search:
  - 879
  - 880
  - 881
  - 882
  - 883
  - 884
  - 885
  - 886
  - 887
  - 888
  - 889
  pdfminer.pdfdocument.PDFDocument.get_page_labels:
  - 904
  - 894
  pdfminer.pdfdocument.PDFDocument.getobj:
  - 833
  - 867
  - 868
  - 838
  - 840
  - 843
  - 846
  - 848
  - 852
  - 853
  - 854
  - 856
  - 857
  - 858
  - 860
  - 861
  pdfminer.pdfdocument.PDFDocument.lookup_name:
  - 912
  - 916
  - 936
  pdfminer.pdfdocument.PDFDocument.lookup_name.lookup:
  - 929
  - 930
  - 931
  - 932
  - 919
  - 920
  - 921
  - 923
  - 924
  - 925
  - 926
  pdfminer.pdfdocument.PDFDocument.read_xref_from:
  - 990
  - 991
  - 992
  - 994
  - 997
  - 998
  - 1000
  - 1001
  - 1002
  - 1003
  - 1005
  - 1006
  - 1007
  - 1008
  - 1009
  - 1010
  - 1011
  - 1012
  - 1013
  - 1014
  - 1015
  - 1017
  - 1018
  pdfminer.pdfdocument.PDFEncryptionWarning:
  - 84
  pdfminer.pdfdocument.PDFNoValidXRefWarning:
  - 57
  pdfminer.pdfdocument.PDFStandardSecurityHandler.__init__:
  - 350
  pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate:
  - 418
  - 419
  - 420
  - 421
  pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_owner_password:
  - 448
  - 449
  - 450
  - 453
  - 454
  - 455
  - 456
  - 441
  - 442
  - 443
  - 444
  - 446
  pdfminer.pdfdocument.PDFStandardSecurityHandler.authenticate_user_password:
  - 425
  - 426
  pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_encryption_key:
  - 399
  - 400
  - 402
  - 403
  - 404
  - 406
  - 408
  - 409
  - 411
  - 413
  - 414
  pdfminer.pdfdocument.PDFStandardSecurityHandler.compute_u:
  - 384
  - 387
  - 388
  - 389
  - 390
  - 391
  - 392
  - 382
  pdfminer.pdfdocument.PDFStandardSecurityHandler.decrypt:
  - 465
  pdfminer.pdfdocument.PDFStandardSecurityHandler.decrypt_rc4:
  - 472
  - 469
  - 470
  - 471
  pdfminer.pdfdocument.PDFStandardSecurityHandler.init:
  - 353
  - 354
  - 357
  pdfminer.pdfdocument.PDFStandardSecurityHandler.init_key:
  - 368
  - 369
  pdfminer.pdfdocument.PDFStandardSecurityHandler.init_params:
  - 360
  - 361
  - 362
  - 363
  - 364
  - 365
  pdfminer.pdfdocument.PDFStandardSecurityHandler.is_extractable:
  - 379
  pdfminer.pdfdocument.PDFStandardSecurityHandler.is_modifiable:
  - 376
  pdfminer.pdfdocument.PDFStandardSecurityHandler.is_printable:
  - 373
  pdfminer.pdfdocument.PDFStandardSecurityHandler.verify_encryption_key:
  - 433
  - 434
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.decrypt:
  - 516
  - 517
  - 518
  - 520
  - 522
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.decrypt_aes128:
  - 544
  - 545
  - 531
  - 532
  - 535
  - 536
  - 539
  - 540
  - 541
  - 542
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.get_cfm:
  - 501
  - 503
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV4.init_params:
  - 481
  - 482
  - 483
  - 484
  - 485
  - 489
  - 490
  - 491
  - 496
  - 479
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._aes_cbc_encrypt:
  - 656
  - 657
  - 658
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._bytes_mod_3:
  - 653
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._normalize_password:
  - 592
  - 594
  - 598
  - 599
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._password_hash:
  - 608
  - 609
  - 610
  - 607
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._r5_password:
  - 618
  - 619
  - 620
  - 621
  - 622
  - 623
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5._r6_password:
  - 641
  - 644
  - 645
  - 646
  - 631
  - 632
  - 633
  - 634
  - 635
  - 636
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5.authenticate:
  - 576
  - 577
  - 579
  - 580
  - 581
  - 582
  - 583
  - 584
  - 585
  - 586
  - 588
  - 570
  - 571
  - 572
  - 573
  - 574
  - 575
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5.decrypt_aes256:
  - 664
  - 665
  - 666
  - 667
  - 669
  - 670
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5.get_cfm:
  - 564
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5.init_params:
  - 552
  - 554
  - 555
  pdfminer.pdfdocument.PDFTextExtractionNotAllowedWarning:
  - 91
  pdfminer.pdfdocument.PDFXRef.__repr__:
  - 130
  pdfminer.pdfdocument.PDFXRef.get_objids:
  - 200
  pdfminer.pdfdocument.PDFXRef.load:
  - 135
  - 136
  - 137
  - 141
  - 142
  - 144
  - 145
  - 149
  - 153
  - 155
  - 156
  - 159
  - 160
  - 164
  - 167
  - 168
  - 169
  - 172
  - 180
  - 181
  pdfminer.pdfdocument.PDFXRef.load_trailer:
  - 193
  - 194
  - 185
  - 186
  - 187
  - 189
  - 190
  pdfminer.pdfdocument.PDFXRefFallback:
  - 210
  pdfminer.pdfdocument.PDFXRefFallback.__repr__:
  - 208
  pdfminer.pdfdocument.PDFXRefFallback.load:
  - 213
  - 216
  - 219
  - 220
  - 221
  - 222
  - 224
  - 225
  - 226
  - 228
  - 229
  - 230
  - 233
  - 234
  - 235
  - 236
  - 240
  - 243
  - 247
  - 248
  - 251
  - 252
  pdfminer.pdfdocument.PDFXRefStream.get_objids:
  - 298
  - 299
  - 304
  - 305
  - 306
  pdfminer.pdfdocument.PDFXRefStream.get_pos:
  - 323
  - 324
  - 325
  - 326
  - 328
  - 310
  - 311
  pdfminer.pdfdocument.PDFXRefStream.load:
  - 288
  - 270
  - 271
  - 272
  - 273
  - 274
  - 277
  - 278
  - 280
  - 283
  - 286
  pdfminer.pdfdocument.PageLabels:
  - 1022
  pdfminer.pdfdocument.PageLabels._format_page_label:
  - 1060
  - 1061
  - 1063
  - 1064
  - 1065
  - 1066
  - 1067
  - 1068
  - 1069
  - 1070
  - 1071
  - 1072
  - 1074
  pdfminer.pdfdocument.PageLabels.labels:
  - 1056
  - 1032
  - 1033
  - 1037
  - 1039
  - 1040
  - 1041
  - 1042
  - 1043
  - 1045
  - 1048
  - 1052
  - 1054
  - 1055
  pdfminer.pdffont:
  - 48
  - 883
  - 51
  - 884
  pdfminer.pdffont.CFFFont.INDEX.__getitem__:
  - 632
  - 633
  pdfminer.pdffont.CFFFont.INDEX.__init__:
  - 619
  - 620
  - 621
  - 622
  - 623
  pdfminer.pdffont.CFFFont.INDEX.__iter__:
  - 636
  pdfminer.pdffont.CFFFont.INDEX.__len__:
  - 629
  pdfminer.pdffont.CFFFont.INDEX.__repr__:
  - 626
  pdfminer.pdffont.CFFFont.__init__:
  - 642
  - 643
  - 645
  - 647
  - 649
  - 651
  - 653
  - 654
  - 655
  - 656
  - 658
  - 659
  - 660
  - 664
  - 665
  - 666
  - 668
  - 669
  - 672
  - 674
  - 676
  - 677
  - 678
  - 687
  - 688
  - 689
  - 692
  - 693
  - 694
  - 698
  - 701
  - 703
  - 705
  - 706
  - 707
  - 708
  - 712
  pdfminer.pdffont.CFFFont.getstr:
  - 721
  - 723
  pdfminer.pdffont.PDFCIDFont.__init__:
  - 1152
  - 1153
  - 1154
  - 1155
  - 1157
  - 1158
  - 1160
  - 1163
  - 1164
  - 1166
  - 1167
  - 1168
  - 1171
  - 1178
  - 1179
  - 1180
  - 1112
  - 1114
  - 1117
  - 1118
  - 1121
  - 1124
  - 1125
  - 1128
  - 1130
  - 1134
  - 1135
  - 1136
  - 1138
  - 1139
  - 1140
  - 1141
  - 1142
  - 1144
  - 1145
  - 1146
  - 1151
  pdfminer.pdffont.PDFCIDFont._get_cmap_name:
  - 1216
  - 1217
  - 1218
  - 1219
  - 1222
  - 1202
  - 1207
  - 1208
  - 1210
  - 1212
  - 1215
  pdfminer.pdffont.PDFCIDFont.char_disp:
  - 1237
  - 1238
  pdfminer.pdffont.PDFCIDFont.decode:
  - 1234
  pdfminer.pdffont.PDFCIDFont.get_cmap_from_spec:
  - 1191
  - 1194
  - 1196
  - 1198
  - 1183
  pdfminer.pdffont.PDFCIDFont.to_unichr:
  - 1242
  - 1244
  pdfminer.pdffont.PDFFont.__init__:
  - 899
  - 900
  - 901
  - 902
  - 903
  - 904
  - 905
  - 906
  - 907
  - 908
  - 911
  - 912
  - 913
  - 920
  pdfminer.pdffont.PDFFont._parse_bbox:
  - 985
  - 986
  - 987
  - 988
  - 989
  pdfminer.pdffont.PDFFont.char_disp:
  - 974
  pdfminer.pdffont.PDFFont.char_width:
  - 963
  - 964
  - 965
  - 958
  - 959
  pdfminer.pdffont.PDFFont.decode:
  - 933
  pdfminer.pdffont.PDFFont.get_ascent:
  - 936
  pdfminer.pdffont.PDFFont.get_descent:
  - 940
  pdfminer.pdffont.PDFFont.get_height:
  - 951
  pdfminer.pdffont.PDFFont.get_width:
  - 945
  pdfminer.pdffont.PDFFont.string_width:
  - 978
  pdfminer.pdffont.PDFSimpleFont.__init__:
  - 1026
  - 1027
  - 1028
  - 1029
  - 1030
  - 1010
  - 1012
  - 1015
  - 1016
  - 1018
  - 1019
  - 1020
  - 1021
  - 1023
  pdfminer.pdffont.PDFSimpleFont.to_unichr:
  - 1033
  - 1035
  pdfminer.pdffont.PDFType1Font.__init__:
  - 1056
  - 1058
  - 1059
  - 1061
  - 1062
  - 1063
  - 1064
  - 1066
  - 1067
  - 1068
  - 1069
  - 1070
  - 1047
  - 1049
  - 1055
  pdfminer.pdffont.PDFType3Font.__init__:
  - 1089
  - 1090
  - 1093
  - 1094
  - 1096
  - 1083
  - 1085
  - 1087
  pdfminer.pdffont.TrueTypeFont.__init__:
  - 736
  - 737
  - 738
  - 739
  - 734
  pdfminer.pdffont.TrueTypeFont.create_unicode_map:
  - 768
  - 769
  - 770
  - 771
  - 772
  - 773
  - 774
  - 775
  - 776
  - 777
  - 778
  - 781
  - 784
  - 785
  - 786
  - 749
  - 753
  - 754
  - 756
  - 757
  - 760
  - 763
  - 765
  - 766
  - 767
  pdfminer.pdffont.TrueTypeFont.parse_cmap_format_0:
  - 792
  - 793
  - 790
  - 791
  pdfminer.pdffont.TrueTypeFont.parse_cmap_format_10:
  - 851
  - 852
  - 853
  - 856
  - 857
  - 858
  pdfminer.pdffont.TrueTypeFont.parse_cmap_format_12:
  - 864
  - 867
  - 868
  - 869
  - 870
  - 862
  - 863
  pdfminer.pdffont.TrueTypeFont.parse_cmap_format_2:
  - 801
  - 803
  - 805
  - 806
  - 807
  - 808
  - 809
  - 812
  - 813
  - 814
  - 815
  - 796
  - 797
  - 798
  - 799
  pdfminer.pdffont.TrueTypeFont.parse_cmap_format_4:
  - 832
  - 833
  - 834
  - 835
  - 838
  - 820
  - 821
  - 822
  - 823
  - 825
  - 826
  - 827
  - 828
  - 829
  - 830
  - 831
  pdfminer.pdffont.TrueTypeFont.parse_cmap_format_6:
  - 842
  - 843
  - 844
  - 845
  - 846
  - 847
  pdfminer.pdffont.Type1FontHeaderParser:
  - 119
  - 120
  - 121
  - 122
  - 123
  - 124
  - 125
  - 126
  pdfminer.pdffont.Type1FontHeaderParser.__init__:
  - 129
  pdfminer.pdffont.Type1FontHeaderParser.do_keyword:
  - 160
  - 161
  - 158
  - 159
  pdfminer.pdffont.Type1FontHeaderParser.get_encoding:
  - 152
  - 154
  - 148
  - 133
  pdfminer.pdffont.get_widths:
  - 64
  - 66
  - 67
  - 68
  - 70
  - 71
  - 74
  - 82
  - 87
  - 55
  - 58
  - 59
  - 60
  - 61
  - 63
  pdfminer.pdffont.get_widths2:
  - 96
  - 98
  - 99
  - 101
  - 102
  - 103
  - 105
  - 91
  - 94
  - 95
  pdfminer.pdffont.getdict:
  - 176
  - 179
  - 180
  - 182
  - 183
  - 187
  - 191
  - 192
  - 193
  - 199
  - 200
  - 203
  - 204
  - 206
  - 209
  - 210
  - 212
  - 215
  - 216
  pdfminer.pdfinterp:
  - 64
  - 65
  - 66
  - 67
  - 52
  - 63
  pdfminer.pdfinterp.PDFContentParser:
  - 328
  - 329
  - 327
  pdfminer.pdfinterp.PDFContentParser.__init__:
  - 263
  pdfminer.pdfinterp.PDFContentParser.do_keyword:
  - 352
  - 353
  - 354
  - 355
  - 357
  - 360
  - 332
  - 334
  - 335
  - 337
  - 338
  - 341
  - 343
  - 344
  - 345
  - 347
  - 349
  - 350
  pdfminer.pdfinterp.PDFContentParser.fillbuf:
  - 288
  - 281
  - 285
  - 286
  - 287
  pdfminer.pdfinterp.PDFContentParser.fillfp:
  - 272
  - 266
  - 267
  - 268
  pdfminer.pdfinterp.PDFContentParser.flush:
  - 325
  pdfminer.pdfinterp.PDFContentParser.get_inline_data:
  - 320
  - 321
  - 295
  - 298
  - 299
  - 300
  - 302
  - 305
  - 306
  - 313
  - 319
  pdfminer.pdfinterp.PDFContentParser.seek:
  - 277
  - 278
  pdfminer.pdfinterp.PDFGraphicState.copy:
  - 156
  pdfminer.pdfinterp.PDFPageInterpreter:
  - 368
  pdfminer.pdfinterp.PDFPageInterpreter.__init__:
  - 377
  - 379
  pdfminer.pdfinterp.PDFPageInterpreter._parse_color_components:
  - 832
  - 833
  - 834
  - 866
  - 841
  - 842
  - 843
  - 844
  - 851
  - 852
  - 853
  - 822
  - 854
  - 862
  - 831
  pdfminer.pdfinterp.PDFPageInterpreter.do_B:
  - 689
  - 690
  pdfminer.pdfinterp.PDFPageInterpreter.do_BDC:
  - 1065
  - 1066
  - 1067
  - 1069
  pdfminer.pdfinterp.PDFPageInterpreter.do_BI:
  - 1304
  pdfminer.pdfinterp.PDFPageInterpreter.do_BMC:
  - 1056
  - 1057
  - 1059
  - 1055
  pdfminer.pdfinterp.PDFPageInterpreter.do_BT:
  - 1016
  - 1022
  pdfminer.pdfinterp.PDFPageInterpreter.do_BX:
  - 1028
  pdfminer.pdfinterp.PDFPageInterpreter.do_B_a:
  - 694
  - 695
  pdfminer.pdfinterp.PDFPageInterpreter.do_CS:
  - 724
  - 726
  - 719
  pdfminer.pdfinterp.PDFPageInterpreter.do_DP:
  - 1048
  - 1044
  - 1045
  - 1046
  pdfminer.pdfinterp.PDFPageInterpreter.do_Do:
  - 1318
  - 1319
  - 1321
  - 1323
  - 1326
  - 1327
  - 1328
  - 1329
  - 1330
  - 1331
  - 1335
  - 1336
  - 1337
  - 1338
  - 1341
  - 1343
  - 1344
  - 1345
  - 1346
  - 1347
  pdfminer.pdfinterp.PDFPageInterpreter.do_EI:
  - 1312
  - 1313
  - 1314
  - 1315
  - 1310
  - 1311
  pdfminer.pdfinterp.PDFPageInterpreter.do_EMC:
  - 1076
  - 1077
  pdfminer.pdfinterp.PDFPageInterpreter.do_ET:
  - 1025
  pdfminer.pdfinterp.PDFPageInterpreter.do_EX:
  - 1031
  pdfminer.pdfinterp.PDFPageInterpreter.do_F:
  - 681
  pdfminer.pdfinterp.PDFPageInterpreter.do_G:
  - 738
  - 739
  - 741
  - 742
  pdfminer.pdfinterp.PDFPageInterpreter.do_ID:
  - 1307
  pdfminer.pdfinterp.PDFPageInterpreter.do_J:
  - 514
  pdfminer.pdfinterp.PDFPageInterpreter.do_K:
  - 792
  - 793
  - 795
  - 796
  pdfminer.pdfinterp.PDFPageInterpreter.do_M:
  - 522
  pdfminer.pdfinterp.PDFPageInterpreter.do_MP:
  - 1034
  - 1035
  - 1036
  - 1038
  pdfminer.pdfinterp.PDFPageInterpreter.do_Q:
  - 475
  - 476
  - 477
  pdfminer.pdfinterp.PDFPageInterpreter.do_RG:
  - 768
  - 764
  - 765
  - 767
  pdfminer.pdfinterp.PDFPageInterpreter.do_S:
  - 666
  - 667
  pdfminer.pdfinterp.PDFPageInterpreter.do_SC:
  - 1005
  - 1006
  pdfminer.pdfinterp.PDFPageInterpreter.do_SCN:
  - 900
  - 901
  - 932
  - 871
  - 907
  - 880
  - 881
  - 882
  - 912
  - 914
  - 917
  - 888
  - 890
  - 891
  - 924
  - 894
  - 927
  pdfminer.pdfinterp.PDFPageInterpreter.do_TD:
  - 1216
  - 1217
  - 1219
  - 1225
  - 1228
  - 1211
  pdfminer.pdfinterp.PDFPageInterpreter.do_TJ:
  - 1270
  - 1271
  - 1272
  - 1275
  - 1277
  - 1279
  pdfminer.pdfinterp.PDFPageInterpreter.do_TL:
  - 1135
  - 1133
  - 1134
  - 1127
  pdfminer.pdfinterp.PDFPageInterpreter.do_T_a:
  - 1257
  pdfminer.pdfinterp.PDFPageInterpreter.do_Tc:
  - 1080
  - 1088
  - 1086
  - 1087
  pdfminer.pdfinterp.PDFPageInterpreter.do_Td:
  - 1193
  - 1197
  - 1198
  - 1199
  - 1205
  pdfminer.pdfinterp.PDFPageInterpreter.do_Tf:
  - 1152
  - 1154
  - 1156
  - 1157
  - 1158
  - 1143
  - 1150
  pdfminer.pdfinterp.PDFPageInterpreter.do_Tj:
  - 1283
  - 1284
  pdfminer.pdfinterp.PDFPageInterpreter.do_Tm:
  - 1242
  - 1244
  - 1246
  - 1247
  pdfminer.pdfinterp.PDFPageInterpreter.do_Tr:
  - 1169
  - 1170
  - 1166
  - 1167
  pdfminer.pdfinterp.PDFPageInterpreter.do_Ts:
  - 1184
  - 1185
  - 1178
  - 1182
  pdfminer.pdfinterp.PDFPageInterpreter.do_Tw:
  - 1096
  - 1104
  - 1102
  - 1103
  pdfminer.pdfinterp.PDFPageInterpreter.do_Tz:
  - 1112
  - 1116
  - 1118
  - 1119
  pdfminer.pdfinterp.PDFPageInterpreter.do_W:
  - 713
  pdfminer.pdfinterp.PDFPageInterpreter.do_W_a:
  - 716
  pdfminer.pdfinterp.PDFPageInterpreter.do__q:
  - 1291
  - 1292
  - 1287
  pdfminer.pdfinterp.PDFPageInterpreter.do__w:
  - 1299
  - 1300
  - 1301
  - 1295
  pdfminer.pdfinterp.PDFPageInterpreter.do_b:
  - 699
  - 700
  - 701
  pdfminer.pdfinterp.PDFPageInterpreter.do_b_a:
  - 704
  - 705
  - 706
  pdfminer.pdfinterp.PDFPageInterpreter.do_c:
  - 581
  - 582
  - 583
  - 584
  - 585
  - 586
  - 587
  - 588
  - 597
  - 604
  pdfminer.pdfinterp.PDFPageInterpreter.do_cm:
  - 488
  - 489
  - 491
  - 492
  - 498
  - 499
  pdfminer.pdfinterp.PDFPageInterpreter.do_cs:
  - 730
  - 732
  - 734
  pdfminer.pdfinterp.PDFPageInterpreter.do_d:
  - 526
  pdfminer.pdfinterp.PDFPageInterpreter.do_f:
  - 676
  - 677
  pdfminer.pdfinterp.PDFPageInterpreter.do_f_a:
  - 684
  - 685
  pdfminer.pdfinterp.PDFPageInterpreter.do_g:
  - 752
  - 754
  - 755
  - 751
  pdfminer.pdfinterp.PDFPageInterpreter.do_gs:
  - 538
  pdfminer.pdfinterp.PDFPageInterpreter.do_h:
  - 641
  - 642
  pdfminer.pdfinterp.PDFPageInterpreter.do_i:
  - 534
  pdfminer.pdfinterp.PDFPageInterpreter.do_j:
  - 518
  pdfminer.pdfinterp.PDFPageInterpreter.do_k:
  - 809
  - 810
  - 806
  - 807
  pdfminer.pdfinterp.PDFPageInterpreter.do_l:
  - 558
  - 559
  - 560
  - 561
  - 563
  - 570
  pdfminer.pdfinterp.PDFPageInterpreter.do_m:
  - 544
  - 546
  - 548
  - 555
  - 542
  - 543
  pdfminer.pdfinterp.PDFPageInterpreter.do_n:
  - 709
  pdfminer.pdfinterp.PDFPageInterpreter.do_q:
  - 472
  - 471
  pdfminer.pdfinterp.PDFPageInterpreter.do_re:
  - 645
  - 646
  - 647
  - 648
  - 649
  - 651
  - 653
  - 659
  - 660
  - 661
  - 662
  - 663
  pdfminer.pdfinterp.PDFPageInterpreter.do_rg:
  - 778
  - 779
  - 781
  - 782
  pdfminer.pdfinterp.PDFPageInterpreter.do_ri:
  - 530
  pdfminer.pdfinterp.PDFPageInterpreter.do_s:
  - 672
  - 673
  - 671
  pdfminer.pdfinterp.PDFPageInterpreter.do_sc:
  - 1009
  - 1010
  pdfminer.pdfinterp.PDFPageInterpreter.do_scn:
  - 960
  - 993
  - 966
  - 967
  - 998
  - 937
  - 973
  - 946
  - 947
  - 948
  - 978
  - 980
  - 983
  - 954
  - 956
  - 957
  - 990
  pdfminer.pdfinterp.PDFPageInterpreter.do_sh:
  - 1013
  pdfminer.pdfinterp.PDFPageInterpreter.do_v:
  - 608
  - 609
  - 610
  - 611
  - 612
  - 614
  - 621
  - 607
  pdfminer.pdfinterp.PDFPageInterpreter.do_w:
  - 504
  - 505
  - 502
  - 503
  pdfminer.pdfinterp.PDFPageInterpreter.do_y:
  - 624
  - 625
  - 626
  - 627
  - 628
  - 629
  - 631
  - 638
  pdfminer.pdfinterp.PDFPageInterpreter.dup:
  - 382
  pdfminer.pdfinterp.PDFPageInterpreter.execute:
  - 1410
  - 1411
  - 1413
  - 1419
  - 1422
  - 1423
  - 1424
  - 1425
  - 1432
  - 1433
  - 1435
  - 1436
  - 1437
  - 1438
  - 1439
  - 1441
  - 1442
  - 1443
  - 1447
  - 1395
  - 1396
  - 1397
  - 1398
  - 1400
  - 1404
  - 1405
  pdfminer.pdfinterp.PDFPageInterpreter.get_current_state:
  - 461
  pdfminer.pdfinterp.PDFPageInterpreter.init_resources:
  - 418
  - 419
  - 420
  - 421
  - 423
  - 425
  - 426
  - 427
  - 428
  - 429
  - 398
  - 430
  - 432
  - 433
  - 402
  - 403
  - 434
  - 435
  pdfminer.pdfinterp.PDFPageInterpreter.init_resources.get_colorspace:
  - 416
  - 407
  - 408
  - 410
  - 411
  - 412
  - 413
  - 414
  pdfminer.pdfinterp.PDFPageInterpreter.init_state:
  - 443
  - 444
  - 445
  - 439
  pdfminer.pdfinterp.PDFPageInterpreter.pop:
  - 454
  pdfminer.pdfinterp.PDFPageInterpreter.process_page:
  - 1353
  - 1355
  - 1357
  - 1359
  - 1363
  - 1364
  - 1365
  pdfminer.pdfinterp.PDFPageInterpreter.push:
  - 451
  pdfminer.pdfinterp.PDFPageInterpreter.render_contents:
  - 1377
  - 1383
  - 1384
  - 1385
  - 1373
  pdfminer.pdfinterp.PDFPageInterpreter.set_current_state:
  - 468
  pdfminer.pdfinterp.PDFPageInterpreter.subinterp:
  - 392
  - 385
  - 393
  - 394
  pdfminer.pdfinterp.PDFResourceManager:
  - 186
  pdfminer.pdfinterp.PDFResourceManager.get_cmap:
  - 208
  - 210
  - 206
  pdfminer.pdfinterp.PDFResourceManager.get_font:
  - 213
  - 216
  - 217
  - 220
  - 221
  - 223
  - 226
  - 228
  - 229
  - 231
  - 232
  - 234
  - 235
  - 237
  - 238
  - 240
  - 242
  - 243
  - 244
  - 245
  - 246
  - 248
  - 250
  - 251
  pdfminer.pdfinterp.PDFResourceManager.get_procset:
  - 198
  - 199
  pdfminer.pdfinterp.PDFTextState.__init__:
  - 83
  pdfminer.pdfinterp.PDFTextState.copy:
  - 102
  pdfminer.pdfpage:
  - 18
  - 21
  - 22
  pdfminer.pdfpage.PDFPage:
  - 26
  pdfminer.pdfpage.PDFPage.__init__:
  - 65
  - 67
  - 68
  - 69
  - 72
  - 73
  - 74
  - 76
  - 77
  - 78
  - 56
  pdfminer.pdfpage.PDFPage._parse_contents:
  - 220
  - 221
  - 222
  pdfminer.pdfpage.PDFPage._parse_cropbox:
  - 215
  - 212
  - 207
  pdfminer.pdfpage.PDFPage._parse_mediabox:
  - 192
  - 193
  - 203
  - 200
  pdfminer.pdfpage.PDFPage.create_pages:
  - 131
  - 133
  - 136
  - 137
  - 138
  - 139
  - 141
  - 143
  - 144
  - 146
  - 147
  - 148
  pdfminer.pdfpage.PDFPage.create_pages.depth_first_search:
  - 128
  - 97
  - 99
  - 104
  - 107
  - 108
  - 109
  - 111
  - 113
  - 114
  - 117
  - 118
  - 119
  - 121
  - 122
  - 123
  - 124
  - 126
  - 127
  pdfminer.pdfpage.PDFPage.get_pages:
  - 163
  - 165
  - 168
  - 169
  - 180
  - 182
  - 183
  - 185
  - 186
  pdfminer.pdfparser:
  - 12
  - 15
  pdfminer.pdfparser.PDFParser:
  - 48
  - 49
  - 50
  - 51
  - 52
  - 53
  - 24
  pdfminer.pdfparser.PDFParser.__init__:
  - 40
  pdfminer.pdfparser.PDFParser.do_keyword:
  - 131
  - 132
  - 136
  - 56
  - 57
  - 58
  - 60
  - 61
  - 63
  - 65
  - 67
  - 69
  - 70
  - 71
  - 72
  - 73
  - 74
  - 76
  - 78
  - 86
  - 88
  - 90
  - 92
  - 94
  - 96
  - 98
  - 101
  - 102
  - 103
  - 104
  - 107
  - 109
  - 112
  - 113
  - 115
  - 118
  - 119
  - 121
  - 123
  pdfminer.pdfparser.PDFParser.set_document:
  - 45
  pdfminer.pdfparser.PDFStreamParser:
  - 153
  - 140
  pdfminer.pdfparser.PDFStreamParser.__init__:
  - 148
  pdfminer.pdfparser.PDFStreamParser.do_keyword:
  - 160
  - 161
  - 162
  - 165
  - 166
  - 173
  - 156
  - 158
  - 159
  pdfminer.pdfparser.PDFStreamParser.flush:
  - 151
  pdfminer.pdftypes:
  - 32
  - 33
  - 34
  - 35
  - 36
  - 37
  - 38
  - 39
  - 66
  - 23
  - 26
  - 28
  - 31
  pdfminer.pdftypes.DecipherCallable:
  - 43
  pdfminer.pdftypes.PDFObjRef.__init__:
  - 82
  - 83
  - 76
  - 90
  pdfminer.pdftypes.PDFObjRef.resolve:
  - 102
  pdfminer.pdftypes.PDFStream.__init__:
  - 250
  pdfminer.pdftypes.PDFStream.__repr__:
  - 266
  - 270
  - 263
  pdfminer.pdftypes.PDFStream.decode:
  - 384
  - 385
  - 386
  - 310
  - 314
  - 318
  - 319
  - 320
  - 324
  - 325
  - 328
  - 331
  - 336
  - 340
  - 341
  - 342
  - 343
  - 344
  - 345
  - 346
  - 347
  - 348
  - 349
  - 350
  - 355
  - 357
  - 363
  - 364
  - 365
  - 368
  - 370
  - 371
  - 372
  - 373
  - 374
  - 380
  - 382
  - 383
  pdfminer.pdftypes.PDFStream.get:
  - 284
  pdfminer.pdftypes.PDFStream.get_any:
  - 288
  - 287
  pdfminer.pdftypes.PDFStream.get_data:
  - 400
  - 401
  pdfminer.pdftypes.PDFStream.get_filters:
  - 293
  - 294
  - 295
  - 297
  - 299
  - 301
  - 302
  - 305
  - 306
  - 307
  pdfminer.pdftypes.decipher_all:
  - 135
  - 136
  - 137
  - 139
  - 140
  - 141
  - 142
  - 143
  - 144
  pdfminer.pdftypes.decompress_corrupted:
  - 225
  - 226
  - 228
  - 232
  - 233
  - 237
  - 239
  - 222
  pdfminer.pdftypes.dict_value:
  - 203
  - 204
  - 205
  - 206
  pdfminer.pdftypes.float_value:
  - 160
  - 158
  - 159
  pdfminer.pdftypes.int_value:
  - 149
  - 150
  - 151
  pdfminer.pdftypes.list_value:
  - 194
  - 195
  - 196
  pdfminer.pdftypes.num_value:
  - 168
  - 169
  - 167
  pdfminer.pdftypes.resolve1:
  - 113
  - 114
  - 108
  pdfminer.pdftypes.resolve_all:
  - 128
  - 129
  - 130
  - 119
  - 124
  - 125
  - 126
  - 127
  pdfminer.pdftypes.str_value:
  - 185
  - 186
  - 187
  pdfminer.pdftypes.stream_value:
  - 217
  - 213
  - 214
  - 215
  pdfminer.pdftypes.uint_value:
  - 176
  - 177
  - 178
  - 181
  pdfminer.psparser:
  - 515
  - 135
  - 136
  - 137
  - 138
  - 139
  - 140
  - 141
  - 142
  - 143
  - 144
  - 145
  - 18
  - 74
  - 98
  - 99
  - 102
  - 103
  - 104
  - 105
  - 106
  - 107
  pdfminer.psparser.PSBaseParser:
  - 162
  pdfminer.psparser.PSBaseParser.__init__:
  - 169
  pdfminer.psparser.PSBaseParser._add_token:
  - 303
  pdfminer.psparser.PSBaseParser._parse_comment:
  - 306
  - 307
  - 309
  - 310
  pdfminer.psparser.PSBaseParser._parse_float:
  - 365
  - 366
  - 368
  - 369
  - 371
  - 372
  pdfminer.psparser.PSBaseParser._parse_hexstring:
  - 468
  - 469
  - 471
  - 472
  - 474
  - 475
  - 476
  - 478
  pdfminer.psparser.PSBaseParser._parse_hexstring.<lambda1>:
  - 475
  pdfminer.psparser.PSBaseParser._parse_keyword:
  - 384
  - 386
  - 389
  - 390
  - 377
  - 378
  - 379
  - 383
  pdfminer.psparser.PSBaseParser._parse_literal:
  - 321
  - 322
  - 325
  - 330
  - 333
  - 318
  - 319
  pdfminer.psparser.PSBaseParser._parse_literal_hex:
  - 339
  - 342
  - 343
  pdfminer.psparser.PSBaseParser._parse_main:
  - 288
  - 257
  - 258
  - 259
  - 260
  - 292
  - 263
  - 296
  - 267
  - 299
  - 271
  - 275
  - 279
  - 283
  pdfminer.psparser.PSBaseParser._parse_number:
  - 352
  - 355
  - 359
  - 360
  - 348
  - 349
  - 351
  pdfminer.psparser.PSBaseParser._parse_string:
  - 416
  - 395
  - 396
  - 398
  - 399
  - 402
  - 406
  - 410
  - 412
  pdfminer.psparser.PSBaseParser._parse_string_1:
  - 421
  - 426
  - 430
  - 431
  - 433
  - 437
  - 438
  - 440
  pdfminer.psparser.PSBaseParser._parse_wclose:
  - 461
  - 462
  pdfminer.psparser.PSBaseParser._parse_wopen:
  - 451
  - 452
  pdfminer.psparser.PSBaseParser.fillbuf:
  - 193
  - 196
  - 197
  - 198
  pdfminer.psparser.PSBaseParser.nextline:
  - 227
  - 228
  - 204
  - 209
  - 210
  - 213
  - 217
  - 218
  - 219
  - 220
  - 221
  pdfminer.psparser.PSBaseParser.nexttoken:
  - 483
  - 488
  - 489
  - 492
  - 494
  - 499
  - 502
  - 504
  - 505
  pdfminer.psparser.PSBaseParser.revreadlines:
  - 233
  - 237
  - 238
  - 242
  - 243
  - 244
  - 245
  - 248
  - 249
  - 252
  pdfminer.psparser.PSBaseParser.seek:
  - 178
  - 179
  - 180
  pdfminer.psparser.PSKeyword:
  - 56
  pdfminer.psparser.PSLiteral:
  - 34
  pdfminer.psparser.PSObject:
  - 30
  pdfminer.psparser.PSStackParser.__init__:
  - 524
  - 525
  pdfminer.psparser.PSStackParser.add_results:
  - 552
  - 554
  - 555
  pdfminer.psparser.PSStackParser.end_type:
  - 563
  - 566
  - 567
  pdfminer.psparser.PSStackParser.nextobject:
  - 640
  - 642
  - 645
  - 646
  - 648
  - 650
  - 574
  - 582
  - 583
  - 585
  - 586
  - 588
  - 589
  - 592
  - 594
  - 596
  - 598
  - 599
  - 602
  - 603
  - 607
  - 608
  - 611
  - 613
  - 615
  - 617
  - 618
  - 621
  - 623
  - 625
  - 626
  - 632
  - 634
  pdfminer.psparser.PSStackParser.push:
  - 538
  pdfminer.psparser.PSStackParser.seek:
  - 534
  - 535
  pdfminer.psparser.PSStackParser.start_type:
  - 560
  - 558
  pdfminer.psparser.PSSymbolTable:
  - 78
  pdfminer.psparser.PSSymbolTable.intern:
  - 88
  - 93
  pdfminer.psparser.keyword_name:
  - 131
  - 125
  - 126
  pdfminer.psparser.literal_name:
  - 111
  - 112
  - 115
  - 117
  - 119
  - 121
  pdfminer.runlength.rldecode:
  - 33
  - 34
  - 35
  - 36
  - 10
  - 23
  - 26
  - 27
  - 30
  - 31
  pdfminer.utils:
  - 1
  - 421
  - 422
  - 21
  - 346
  - 735
  pdfminer.utils.Plane:
  - 739
  pdfminer.utils.Plane.__init__:
  - 748
  pdfminer.utils.Plane.__len__:
  - 760
  pdfminer.utils.Plane.__repr__:
  - 754
  pdfminer.utils.Plane._getrange:
  - 769
  - 770
  - 771
  - 772
  - 773
  - 774
  - 775
  - 767
  pdfminer.utils.Plane.add:
  - 782
  - 783
  - 784
  - 789
  - 790
  - 791
  pdfminer.utils.Plane.extend:
  - 778
  - 779
  pdfminer.utils.Plane.find:
  - 801
  - 803
  - 804
  - 805
  - 807
  - 808
  - 810
  - 811
  - 813
  pdfminer.utils.Plane.remove:
  - 794
  - 795
  - 796
  - 797
  - 798
  pdfminer.utils.apply_matrix_norm:
  - 333
  pdfminer.utils.apply_matrix_pt:
  - 296
  pdfminer.utils.apply_matrix_rect:
  - 320
  - 321
  - 322
  - 325
  - 326
  - 327
  - 328
  - 303
  - 319
  pdfminer.utils.apply_png_predictor:
  - 160
  - 164
  - 171
  - 172
  - 177
  - 179
  - 181
  - 188
  - 189
  - 191
  - 193
  - 200
  - 202
  - 204
  - 213
  - 214
  - 215
  - 217
  - 219
  - 228
  - 229
  - 233
  - 234
  - 235
  - 236
  - 238
  - 243
  - 245
  pdfminer.utils.apply_tiff_predictor:
  - 128
  - 134
  - 140
  - 142
  - 144
  - 147
  - 148
  - 150
  pdfminer.utils.choplist:
  - 403
  - 405
  - 406
  - 407
  - 408
  pdfminer.utils.compatible_encode_method:
  - 104
  - 97
  - 101
  - 103
  pdfminer.utils.decode_text:
  - 689
  - 685
  - 686
  - 687
  pdfminer.utils.drange:
  - 372
  - 373
  pdfminer.utils.enc:
  - 696
  - 693
  - 694
  pdfminer.utils.format_int_alpha:
  - 846
  - 851
  - 852
  - 854
  - 855
  pdfminer.utils.format_int_roman:
  - 832
  - 833
  - 836
  - 837
  - 839
  - 842
  - 821
  - 827
  - 828
  - 829
  - 830
  - 831
  pdfminer.utils.fsplit:
  - 360
  - 363
  - 364
  - 365
  - 367
  pdfminer.utils.get_bound:
  - 384
  - 377
  - 380
  - 381
  - 382
  - 383
  pdfminer.utils.isnumber:
  - 343
  pdfminer.utils.make_compat_bytes:
  - 64
  - 65
  - 63
  pdfminer.utils.make_compat_str:
  - 69
  - 70
  - 71
  - 72
  - 73
  - 75
  - 77
  - 79
  pdfminer.utils.mult_matrix:
  - 273
  pdfminer.utils.nunpack:
  - 418
  - 413
  - 414
  - 415
  pdfminer.utils.open_filename:
  - 37
  pdfminer.utils.open_filename.__exit__:
  - 58
  - 59
  pdfminer.utils.open_filename.__init__:
  - 43
  - 44
  - 45
  - 46
  - 48
  - 49
  pdfminer.utils.paeth_predictor:
  - 112
  - 113
  - 114
  - 117
  - 119
  pdfminer.utils.parse_rect:
  - 265
  pdfminer.utils.pick:
  - 393
  - 395
  - 396
  - 397
  pdfminer.utils.shorten_str:
  - 83
  - 85
  pdfminer.utils.translate_matrix:
  - 285
  pdfminer.utils.uniq:
  - 352
  - 353
  - 355
  - 356
  - 350
  - 351
  pdfminer.utils.unpad_aes:
  - 866
  - 870
  - 873
  - 876
  - 859
  pdfminer.utils.vecBetweenBoxes:
  - 710
  - 722
  - 723
  - 726
  - 732
  pdfplumber._version:
  - 2
  pdfplumber.cli:
  - 128
  - 11
  - 12
  - 127
  pdfplumber.cli.add_text_to_mcids:
  - 74
  - 75
  - 77
  - 78
  - 79
  - 82
  - 84
  - 85
  - 86
  - 87
  - 88
  - 91
  pdfplumber.cli.add_text_to_mcids.<lambda1>:
  - 74
  pdfplumber.cli.main:
  - 96
  - 98
  - 99
  - 100
  - 101
  - 103
  - 104
  - 105
  - 106
  - 113
  - 114
  - 115
  - 117
  pdfplumber.cli.parse_args:
  - 34
  - 67
  - 68
  - 69
  - 41
  - 59
  - 43
  - 45
  - 51
  - 24
  - 57
  - 26
  - 27
  - 28
  - 61
  - 63
  pdfplumber.cli.parse_page_spec:
  - 16
  - 17
  - 18
  - 20
  pdfplumber.container.Container.chars:
  - 52
  pdfplumber.container.Container.curve_edges:
  - 80
  - 82
  - 83
  pdfplumber.container.Container.curves:
  - 44
  pdfplumber.container.Container.edges:
  - 88
  - 90
  pdfplumber.container.Container.flush_cache:
  - 32
  - 30
  - 31
  pdfplumber.container.Container.horizontal_edges:
  - 99
  pdfplumber.container.Container.horizontal_edges.test:
  - 97
  pdfplumber.container.Container.images:
  - 48
  pdfplumber.container.Container.lines:
  - 40
  pdfplumber.container.Container.rect_edges:
  - 72
  - 74
  - 75
  pdfplumber.container.Container.rects:
  - 36
  pdfplumber.container.Container.textboxhorizontals:
  - 60
  pdfplumber.container.Container.textboxverticals:
  - 56
  pdfplumber.container.Container.textlinehorizontals:
  - 68
  pdfplumber.container.Container.textlineverticals:
  - 64
  pdfplumber.container.Container.to_csv:
  - 140
  - 141
  - 146
  - 147
  - 150
  - 154
  - 159
  - 160
  - 161
  - 162
  - 163
  - 164
  - 165
  - 167
  - 168
  - 171
  - 173
  - 180
  - 181
  - 183
  - 184
  - 185
  pdfplumber.container.Container.to_json:
  - 129
  - 118
  - 120
  - 126
  - 127
  pdfplumber.container.Container.vertical_edges:
  - 106
  pdfplumber.container.Container.vertical_edges.test:
  - 104
  pdfplumber.convert.Serializer.__init__:
  - 71
  pdfplumber.convert.Serializer.do_PDFStream:
  - 113
  pdfplumber.convert.Serializer.do_PSLiteral:
  - 116
  pdfplumber.convert.Serializer.do_bool:
  - 98
  pdfplumber.convert.Serializer.do_bytes:
  - 121
  - 126
  - 119
  pdfplumber.convert.Serializer.do_dict:
  - 107
  - 108
  - 110
  pdfplumber.convert.Serializer.do_float:
  - 95
  pdfplumber.convert.Serializer.do_list:
  - 101
  pdfplumber.convert.Serializer.do_tuple:
  - 104
  pdfplumber.convert.Serializer.serialize:
  - 76
  - 79
  - 82
  - 86
  - 87
  - 88
  - 92
  pdfplumber.convert.get_attr_filter:
  - 36
  - 41
  - 42
  - 43
  - 45
  - 46
  - 47
  - 51
  - 52
  - 55
  pdfplumber.convert.to_b64:
  - 59
  pdfplumber.ctm.CTM.scale_x:
  - 18
  pdfplumber.ctm.CTM.scale_y:
  - 22
  pdfplumber.ctm.CTM.skew_x:
  - 26
  pdfplumber.ctm.CTM.skew_y:
  - 30
  pdfplumber.display:
  - 14
  pdfplumber.display.PageImage.__init__:
  - 128
  - 116
  - 117
  - 118
  - 119
  - 90
  - 91
  pdfplumber.display.PageImage._repr_png_:
  - 400
  - 398
  - 399
  pdfplumber.display.PageImage._reproject:
  - 144
  - 137
  pdfplumber.display.PageImage._reproject_bbox:
  - 132
  - 133
  pdfplumber.display.PageImage.copy:
  - 177
  pdfplumber.display.PageImage.debug_table:
  - 331
  - 334
  pdfplumber.display.PageImage.debug_tablefinder:
  - 357
  - 358
  - 360
  - 362
  - 363
  - 345
  - 347
  - 350
  pdfplumber.display.PageImage.draw_circle:
  - 310
  - 303
  pdfplumber.display.PageImage.draw_circles:
  - 320
  - 321
  pdfplumber.display.PageImage.draw_hline:
  - 239
  pdfplumber.display.PageImage.draw_hlines:
  - 248
  - 249
  pdfplumber.display.PageImage.draw_line:
  - 197
  - 186
  - 196
  - 189
  pdfplumber.display.PageImage.draw_lines:
  - 208
  - 209
  pdfplumber.display.PageImage.draw_rect:
  - 259
  - 267
  - 268
  - 269
  - 270
  - 272
  - 273
  - 275
  - 282
  pdfplumber.display.PageImage.draw_rects:
  - 292
  - 293
  pdfplumber.display.PageImage.draw_vline:
  - 219
  pdfplumber.display.PageImage.draw_vlines:
  - 228
  - 229
  pdfplumber.display.PageImage.outline_chars:
  - 392
  pdfplumber.display.PageImage.outline_words:
  - 379
  - 382
  pdfplumber.display.PageImage.reset:
  - 147
  - 148
  - 149
  pdfplumber.display.PageImage.save:
  - 168
  - 161
  - 162
  pdfplumber.display.PageImage.show:
  - 403
  pdfplumber.display.get_page_image:
  - 72
  - 74
  - 48
  - 53
  - 57
  - 61
  - 63
  pdfplumber.page:
  - 42
  - 44
  - 77
  pdfplumber.page.CroppedPage.__init__:
  - 686
  - 691
  - 692
  - 697
  - 702
  pdfplumber.page.CroppedPage.__init__._crop_fn:
  - 695
  pdfplumber.page.CroppedPage.objects:
  - 712
  - 709
  pdfplumber.page.DerivedPage.__init__:
  - 653
  - 654
  pdfplumber.page.FilteredPage.__init__:
  - 721
  pdfplumber.page.FilteredPage.objects:
  - 728
  - 729
  - 725
  pdfplumber.page.PDFPageAggregatorWithMarkedContent:
  - 111
  pdfplumber.page.PDFPageAggregatorWithMarkedContent.begin_tag:
  - 120
  - 118
  - 119
  pdfplumber.page.PDFPageAggregatorWithMarkedContent.end_tag:
  - 126
  pdfplumber.page.PDFPageAggregatorWithMarkedContent.paint_path:
  - 156
  - 157
  - 158
  pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_char:
  - 145
  - 146
  - 147
  pdfplumber.page.PDFPageAggregatorWithMarkedContent.render_image:
  - 152
  - 153
  - 151
  pdfplumber.page.PDFPageAggregatorWithMarkedContent.tag_cur_item:
  - 131
  - 139
  pdfplumber.page.Page.__init__:
  - 224
  - 226
  - 233
  - 211
  - 214
  - 217
  - 219
  - 220
  - 221
  - 222
  pdfplumber.page.Page.__init__.get_attr:
  - 205
  pdfplumber.page.Page._get_textmap:
  - 499
  - 502
  - 503
  - 504
  - 505
  - 507
  pdfplumber.page.Page.annots:
  - 331
  - 332
  - 333
  - 334
  pdfplumber.page.Page.annots.parse:
  - 289
  - 291
  - 292
  - 293
  - 323
  - 295
  - 296
  - 326
  - 298
  - 301
  - 303
  - 305
  - 284
  - 285
  - 287
  pdfplumber.page.Page.annots.rotate_point:
  - 276
  pdfplumber.page.Page.close:
  - 236
  - 237
  pdfplumber.page.Page.crop:
  - 548
  pdfplumber.page.Page.debug_tablefinder:
  - 456
  - 455
  pdfplumber.page.Page.dedupe_chars:
  - 579
  - 580
  - 581
  - 574
  pdfplumber.page.Page.extract_table:
  - 496
  - 491
  - 492
  - 493
  pdfplumber.page.Page.extract_tables:
  - 484
  - 485
  - 486
  pdfplumber.page.Page.extract_text:
  - 530
  pdfplumber.page.Page.extract_text_lines:
  - 541
  pdfplumber.page.Page.extract_text_simple:
  - 533
  pdfplumber.page.Page.extract_words:
  - 536
  pdfplumber.page.Page.filter:
  - 571
  pdfplumber.page.Page.find_table:
  - 467
  - 468
  - 477
  - 470
  pdfplumber.page.Page.find_table.sorter:
  - 475
  pdfplumber.page.Page.find_tables:
  - 461
  - 462
  pdfplumber.page.Page.iter_layout_objects:
  - 430
  - 432
  - 434
  - 435
  - 437
  - 439
  pdfplumber.page.Page.layout:
  - 257
  - 259
  - 264
  - 266
  - 269
  pdfplumber.page.Page.objects:
  - 344
  - 346
  pdfplumber.page.Page.outside_bbox:
  - 563
  - 566
  pdfplumber.page.Page.parse_objects:
  - 449
  - 443
  - 445
  - 447
  pdfplumber.page.Page.process_object:
  - 407
  - 416
  - 354
  - 386
  - 421
  - 392
  - 395
  - 364
  - 399
  - 400
  - 369
  - 402
  - 403
  - 375
  - 376
  - 378
  - 379
  - 381
  pdfplumber.page.Page.process_object.process_attr:
  - 358
  - 359
  pdfplumber.page.Page.search:
  - 520
  - 519
  pdfplumber.page.Page.structure_tree:
  - 249
  - 251
  pdfplumber.page.Page.to_dict:
  - 632
  - 633
  - 618
  - 619
  pdfplumber.page.Page.to_image:
  - 610
  - 592
  - 600
  - 601
  - 605
  - 607
  pdfplumber.page.Page.within_bbox:
  - 553
  - 556
  pdfplumber.page._normalize_box:
  - 170
  - 171
  - 172
  - 166
  pdfplumber.page.fix_fontname_bytes:
  - 99
  - 100
  - 93
  - 94
  pdfplumber.page.test_proposed_bbox:
  - 658
  - 659
  - 662
  - 663
  - 669
  - 670
  pdfplumber.page.tuplify_list_kwargs:
  - 105
  - 106
  pdfplumber.pdf:
  - 22
  pdfplumber.pdf.PDF.__exit__:
  - 142
  pdfplumber.pdf.PDF.__init__:
  - 67
  - 69
  - 44
  - 50
  - 53
  - 56
  - 57
  - 58
  - 60
  - 62
  pdfplumber.pdf.PDF.annots:
  - 186
  pdfplumber.pdf.PDF.close:
  - 128
  - 130
  - 131
  - 125
  - 127
  pdfplumber.pdf.PDF.hyperlinks:
  - 191
  pdfplumber.pdf.PDF.objects:
  - 177
  - 178
  - 179
  - 174
  pdfplumber.pdf.PDF.open:
  - 97
  - 98
  - 121
  - 100
  - 107
  - 120
  - 89
  - 90
  pdfplumber.pdf.PDF.pages:
  - 163
  - 165
  - 167
  - 168
  - 146
  pdfplumber.pdf.PDF.pages.iter_pages:
  - 154
  - 157
  pdfplumber.pdf.PDF.structure_tree:
  - 195
  - 197
  pdfplumber.pdf.PDF.to_dict:
  - 204
  pdfplumber.repair._repair:
  - 38
  - 41
  - 43
  - 48
  - 19
  - 20
  - 21
  - 55
  - 23
  - 57
  - 60
  pdfplumber.repair.repair:
  - 72
  - 73
  - 70
  - 71
  pdfplumber.structure:
  - 28
  - 31
  pdfplumber.structure.Findable:
  - 70
  pdfplumber.structure.Findable.find:
  - 96
  - 89
  pdfplumber.structure.Findable.find_all:
  - 84
  - 78
  pdfplumber.structure.PDFStructElement:
  - 112
  - 113
  - 111
  pdfplumber.structure.PDFStructElement.__iter__:
  - 116
  pdfplumber.structure.PDFStructElement.all_mcids:
  - 128
  - 129
  - 130
  - 119
  - 123
  - 124
  - 125
  - 127
  pdfplumber.structure.PDFStructElement.to_dict:
  - 133
  - 134
  - 136
  - 138
  - 139
  - 140
  - 142
  - 143
  pdfplumber.structure.PDFStructTree:
  - 152
  pdfplumber.structure.PDFStructTree.__init__:
  - 192
  - 194
  - 200
  - 204
  - 173
  - 205
  - 175
  - 176
  - 177
  - 207
  - 213
  - 215
  - 184
  - 190
  - 191
  pdfplumber.structure.PDFStructTree.__iter__:
  - 464
  pdfplumber.structure.PDFStructTree._make_attributes:
  - 256
  - 259
  - 260
  - 261
  - 221
  - 222
  - 224
  - 226
  - 227
  - 229
  - 232
  - 238
  - 239
  - 240
  - 243
  - 244
  - 245
  - 246
  - 247
  - 252
  - 253
  - 254
  - 255
  pdfplumber.structure.PDFStructTree._make_element:
  - 288
  - 289
  - 290
  - 291
  - 293
  - 295
  - 272
  - 277
  - 278
  - 279
  - 280
  - 281
  - 282
  - 284
  - 286
  - 287
  pdfplumber.structure.PDFStructTree._parse_parent_tree:
  - 321
  - 323
  - 325
  - 330
  - 333
  - 334
  - 337
  - 309
  - 312
  - 316
  - 319
  pdfplumber.structure.PDFStructTree._parse_struct_tree:
  - 384
  - 386
  - 387
  - 416
  - 417
  - 352
  - 354
  - 357
  - 359
  - 362
  - 364
  - 366
  - 368
  - 369
  - 372
  - 373
  - 376
  - 377
  - 378
  - 379
  - 380
  - 382
  pdfplumber.structure.PDFStructTree._parse_struct_tree.prune:
  - 393
  - 394
  - 395
  - 396
  - 398
  - 399
  - 401
  - 402
  - 404
  - 406
  - 407
  - 409
  - 410
  - 412
  - 413
  pdfplumber.structure.PDFStructTree._resolve_children:
  - 420
  - 423
  - 425
  - 430
  - 431
  - 432
  - 433
  - 436
  - 437
  - 438
  - 440
  - 441
  - 443
  - 444
  - 445
  - 446
  - 447
  - 449
  - 451
  - 452
  - 453
  - 456
  - 457
  - 458
  - 459
  - 460
  - 461
  pdfplumber.structure.PDFStructTree.element_bbox:
  - 467
  - 469
  - 471
  - 473
  - 474
  - 480
  - 481
  - 484
  - 485
  - 486
  - 487
  - 489
  - 495
  - 497
  - 498
  - 499
  - 503
  - 504
  - 506
  - 507
  - 508
  - 509
  - 511
  pdfplumber.structure.PDFStructTree.on_parsed_page:
  - 345
  - 347
  - 340
  - 343
  pdfplumber.structure._find_all:
  - 64
  - 65
  - 66
  - 43
  - 55
  - 57
  - 61
  - 63
  pdfplumber.structure._find_all.match_regex:
  - 52
  - 53
  pdfplumber.structure._find_all.match_tag:
  - 48
  pdfplumber.table:
  - 17
  - 482
  pdfplumber.table.CellGroup.__init__:
  - 362
  - 363
  - 364
  - 365
  pdfplumber.table.Table._get_rows_or_cols:
  - 394
  - 397
  - 400
  - 403
  - 407
  - 409
  - 410
  pdfplumber.table.Table.bbox:
  - 386
  - 387
  - 388
  - 389
  pdfplumber.table.Table.columns:
  - 419
  pdfplumber.table.Table.extract:
  - 451
  - 454
  - 455
  - 434
  - 436
  - 438
  - 439
  - 443
  - 446
  - 447
  pdfplumber.table.Table.extract.char_in_bbox:
  - 430
  pdfplumber.table.Table.rows:
  - 415
  pdfplumber.table.TableFinder:
  - 578
  pdfplumber.table.TableFinder.__init__:
  - 590
  - 591
  - 592
  - 597
  - 599
  pdfplumber.table.TableFinder.get_edges:
  - 641
  - 642
  - 645
  - 646
  - 652
  - 653
  - 654
  - 660
  - 661
  - 662
  - 663
  - 664
  - 666
  - 677
  - 678
  - 681
  - 682
  - 688
  - 689
  - 692
  - 697
  - 699
  - 707
  - 605
  - 606
  - 607
  - 608
  - 609
  - 620
  - 621
  - 624
  - 625
  - 626
  - 627
  - 628
  - 630
  pdfplumber.table.TableSettings.__post_init__:
  - 546
  - 522
  - 523
  - 554
  - 555
  - 526
  - 527
  - 528
  - 534
  - 539
  - 538
  - 507
  - 540
  - 542
  pdfplumber.table.TableSettings.resolve:
  - 559
  - 560
  - 561
  - 563
  - 566
  - 567
  - 572
  pdfplumber.table.cells_to_tables:
  - 298
  - 307
  - 312
  - 316
  - 317
  - 318
  - 319
  - 321
  - 323
  - 324
  - 325
  - 328
  - 331
  - 333
  - 334
  - 335
  - 338
  - 340
  - 341
  - 342
  - 347
  - 349
  - 353
  - 354
  pdfplumber.table.cells_to_tables.<lambda1>:
  - 353
  pdfplumber.table.edges_to_intersections:
  - 227
  - 229
  - 230
  - 210
  - 216
  - 218
  - 219
  - 220
  pdfplumber.table.intersections_to_cells:
  - 293
  - 294
  - 263
  - 264
  - 235
  pdfplumber.table.intersections_to_cells.edge_connects:
  - 256
  - 257
  - 259
  - 248
  - 249
  - 250
  - 252
  - 255
  pdfplumber.table.intersections_to_cells.edge_connects.edges_to_set:
  - 246
  pdfplumber.table.intersections_to_cells.find_smallest_cell:
  - 267
  - 274
  - 275
  - 278
  - 279
  - 284
  - 286
  - 287
  pdfplumber.table.join_edge_group:
  - 42
  - 46
  - 48
  - 53
  - 55
  - 57
  - 58
  - 60
  - 63
  pdfplumber.table.merge_edges:
  - 97
  - 75
  - 86
  - 87
  - 89
  - 90
  - 92
  pdfplumber.table.merge_edges.get_group:
  - 81
  pdfplumber.table.snap_edges:
  - 32
  - 34
  - 35
  - 26
  - 31
  pdfplumber.table.words_to_edges_h:
  - 104
  - 108
  - 109
  - 110
  - 111
  - 113
  - 114
  - 117
  pdfplumber.table.words_to_edges_h.<lambda1>:
  - 109
  pdfplumber.table.words_to_edges_v:
  - 162
  - 163
  - 166
  - 170
  - 171
  - 172
  - 173
  - 175
  - 178
  - 147
  - 179
  - 181
  - 182
  - 183
  - 152
  - 153
  - 158
  pdfplumber.table.words_to_edges_v.<lambda1>:
  - 162
  pdfplumber.table.words_to_edges_v.<lambda2>:
  - 163
  pdfplumber.table.words_to_edges_v.get_center:
  - 156
  pdfplumber.utils.clustering:
  - 39
  pdfplumber.utils.clustering.cluster_list:
  - 10
  - 11
  - 12
  - 13
  - 15
  - 18
  - 19
  - 20
  - 22
  - 25
  pdfplumber.utils.clustering.cluster_objects:
  - 64
  - 66
  - 49
  - 50
  - 52
  - 53
  - 55
  - 57
  - 58
  - 60
  - 61
  pdfplumber.utils.clustering.make_cluster_dict:
  - 33
  - 36
  - 30
  pdfplumber.utils.generic:
  - 6
  pdfplumber.utils.generic.to_list:
  - 11
  - 13
  - 14
  - 15
  - 16
  - 21
  pdfplumber.utils.geometry:
  - 26
  pdfplumber.utils.geometry.bbox_to_rect:
  - 38
  pdfplumber.utils.geometry.calculate_area:
  - 71
  pdfplumber.utils.geometry.clip_obj:
  - 77
  - 78
  - 81
  - 82
  - 84
  - 88
  pdfplumber.utils.geometry.crop_to_bbox:
  - 122
  - 126
  pdfplumber.utils.geometry.curve_to_edges:
  - 195
  - 196
  - 197
  - 198
  - 199
  - 200
  - 201
  - 191
  pdfplumber.utils.geometry.filter_edges:
  - 270
  - 279
  pdfplumber.utils.geometry.filter_edges.test:
  - 277
  pdfplumber.utils.geometry.get_bbox_overlap:
  - 57
  - 58
  - 59
  - 60
  - 63
  pdfplumber.utils.geometry.intersects_bbox:
  - 97
  - 100
  pdfplumber.utils.geometry.line_to_edge:
  - 249
  pdfplumber.utils.geometry.merge_bboxes:
  - 50
  - 51
  - 46
  pdfplumber.utils.geometry.move_object:
  - 131
  - 136
  - 141
  - 143
  - 148
  pdfplumber.utils.geometry.obj_to_bbox:
  - 33
  - 30
  pdfplumber.utils.geometry.obj_to_edges:
  - 256
  - 258
  - 259
  - 261
  pdfplumber.utils.geometry.objects_to_bbox:
  - 19
  - 23
  pdfplumber.utils.geometry.objects_to_rect:
  - 10
  - 15
  pdfplumber.utils.geometry.outside_bbox:
  - 115
  - 118
  pdfplumber.utils.geometry.rect_to_edges:
  - 229
  - 237
  - 209
  - 210
  - 219
  pdfplumber.utils.geometry.resize_object:
  - 170
  - 172
  - 173
  - 175
  - 176
  - 178
  - 179
  - 180
  - 181
  - 182
  - 184
  - 185
  - 186
  - 187
  pdfplumber.utils.geometry.snap_objects:
  - 160
  - 153
  - 154
  - 155
  - 157
  - 158
  pdfplumber.utils.geometry.within_bbox:
  - 104
  - 110
  pdfplumber.utils.pdfinternals.decode_psl_list:
  - 44
  pdfplumber.utils.pdfinternals.decode_text:
  - 11
  - 15
  - 16
  - 18
  - 19
  - 21
  pdfplumber.utils.pdfinternals.get_dict_type:
  - 57
  - 59
  - 60
  - 61
  pdfplumber.utils.pdfinternals.resolve:
  - 50
  - 51
  pdfplumber.utils.pdfinternals.resolve_all:
  - 67
  - 70
  - 71
  - 74
  - 78
  - 81
  - 82
  - 83
  - 84
  - 85
  pdfplumber.utils.pdfinternals.resolve_and_decode:
  - 32
  - 33
  - 34
  - 35
  - 36
  - 25
  - 26
  - 27
  - 28
  - 29
  - 30
  - 31
  pdfplumber.utils.text:
  - 64
  - 65
  - 66
  - 67
  - 71
  - 72
  - 73
  - 74
  - 25
  - 701
  - 702
  pdfplumber.utils.text.TextMap:
  - 96
  pdfplumber.utils.text.TextMap.__init__:
  - 107
  - 111
  pdfplumber.utils.text.TextMap.extract_text_lines:
  - 223
  - 228
  - 215
  pdfplumber.utils.text.TextMap.match_to_dict:
  - 164
  - 165
  - 167
  - 152
  - 154
  - 157
  pdfplumber.utils.text.TextMap.search:
  - 192
  - 193
  - 196
  - 198
  - 201
  - 203
  - 181
  - 182
  - 186
  pdfplumber.utils.text.TextMap.search.<lambda1>:
  - 201
  pdfplumber.utils.text.TextMap.to_string:
  - 129
  - 130
  - 131
  - 133
  - 137
  - 139
  - 140
  - 143
  - 117
  - 119
  - 122
  - 123
  - 124
  - 126
  - 127
  pdfplumber.utils.text.WordExtractor.__init__:
  - 450
  - 451
  - 455
  - 456
  - 465
  - 466
  pdfplumber.utils.text.WordExtractor.char_begins_new_word:
  - 576
  - 585
  - 524
  - 557
  - 590
  - 562
  pdfplumber.utils.text.WordExtractor.extract_wordmap:
  - 681
  pdfplumber.utils.text.WordExtractor.extract_words:
  - 689
  - 692
  - 686
  - 687
  pdfplumber.utils.text.WordExtractor.get_char_dir:
  - 482
  - 485
  pdfplumber.utils.text.WordExtractor.iter_chars_to_lines:
  - 644
  - 647
  - 649
  - 650
  - 653
  - 659
  - 661
  - 662
  pdfplumber.utils.text.WordExtractor.iter_chars_to_words:
  - 615
  - 618
  - 619
  - 621
  - 622
  - 623
  - 625
  - 632
  - 635
  - 638
  - 639
  pdfplumber.utils.text.WordExtractor.iter_chars_to_words.start_next_word:
  - 605
  - 606
  pdfplumber.utils.text.WordExtractor.iter_extract_tuples:
  - 674
  - 676
  - 677
  - 678
  - 667
  - 668
  - 670
  pdfplumber.utils.text.WordExtractor.merge_chars:
  - 491
  - 494
  - 497
  - 498
  - 511
  pdfplumber.utils.text.WordMap:
  - 234
  pdfplumber.utils.text.WordMap.to_textmap:
  - 390
  - 264
  - 394
  - 395
  - 396
  - 397
  - 401
  - 405
  - 407
  - 408
  - 410
  - 413
  - 416
  - 297
  - 298
  - 306
  - 307
  - 308
  - 313
  - 315
  - 316
  - 321
  - 329
  - 330
  - 335
  - 336
  - 341
  - 344
  - 346
  - 351
  - 352
  - 353
  - 359
  - 361
  - 363
  - 366
  - 367
  - 369
  - 378
  - 381
  - 382
  - 383
  pdfplumber.utils.text.WordMap.to_textmap.<lambda1>:
  - 341
  pdfplumber.utils.text.WordMap.to_textmap.<lambda2>:
  - 346
  pdfplumber.utils.text.WordMap.to_textmap.<lambda3>:
  - 378
  pdfplumber.utils.text.chars_to_textmap:
  - 713
  - 706
  - 716
  - 717
  pdfplumber.utils.text.collate_line:
  - 777
  - 778
  pdfplumber.utils.text.dedupe_chars:
  - 804
  - 805
  - 818
  - 819
  - 799
  pdfplumber.utils.text.dedupe_chars.yield_unique_chars:
  - 808
  - 809
  - 810
  - 811
  - 813
  - 814
  - 816
  pdfplumber.utils.text.extract_text:
  - 738
  - 740
  - 743
  - 748
  - 750
  - 751
  - 753
  - 759
  - 729
  - 730
  - 763
  - 733
  pdfplumber.utils.text.extract_text_simple:
  - 790
  - 791
  pdfplumber.utils.text.extract_words:
  - 698
  pdfplumber.utils.text.get_char_sort_key:
  - 56
  - 57
  - 58
  - 59
  pdfplumber.utils.text.get_line_cluster_key:
  - 48
  - 49
  - 50
  - 47
  pdfplumber.utils.text.validate_directions:
  - 80
  - 88
  - 84
  - 79
Fuzzer filename: fuzz/pdf_load_fuzzer.py
Inheritance:
  '...pdfplumber.fuzz.pdf_load_fuzzer.CastType':
  - IntEnum
  pdfminer.arcfour.Arcfour: []
  pdfminer.ccitt.BitParser: []
  pdfminer.ccitt.CCITTFaxDecoder:
  - CCITTG4Parser
  pdfminer.ccitt.CCITTG4Parser:
  - BitParser
  pdfminer.ccitt.CCITTG4Parser.ByteSkip:
  - CCITTException
  pdfminer.ccitt.CCITTG4Parser.CCITTException:
  - PDFException
  pdfminer.ccitt.CCITTG4Parser.EOFB:
  - CCITTException
  pdfminer.ccitt.CCITTG4Parser.InvalidData:
  - CCITTException
  pdfminer.ccitt.main.Parser:
  - CCITTG4Parser
  pdfminer.cmapdb.CMap:
  - CMapBase
  pdfminer.cmapdb.CMapBase: []
  pdfminer.cmapdb.CMapDB: []
  pdfminer.cmapdb.CMapDB.CMapNotFound:
  - CMapError
  pdfminer.cmapdb.CMapError:
  - PDFException
  pdfminer.cmapdb.CMapParser: []
  pdfminer.cmapdb.FileCMap:
  - CMap
  pdfminer.cmapdb.FileUnicodeMap:
  - UnicodeMap
  pdfminer.cmapdb.IdentityCMap:
  - CMapBase
  pdfminer.cmapdb.IdentityCMapByte:
  - IdentityCMap
  pdfminer.cmapdb.IdentityUnicodeMap:
  - UnicodeMap
  pdfminer.cmapdb.PyCMap:
  - CMap
  pdfminer.cmapdb.PyUnicodeMap:
  - UnicodeMap
  pdfminer.cmapdb.UnicodeMap:
  - CMapBase
  pdfminer.converter.HOCRConverter: []
  pdfminer.converter.HTMLConverter: []
  pdfminer.converter.PDFConverter:
  - PDFLayoutAnalyzer
  pdfminer.converter.PDFLayoutAnalyzer:
  - PDFTextDevice
  pdfminer.converter.PDFPageAggregator:
  - PDFLayoutAnalyzer
  pdfminer.converter.TextConverter: []
  pdfminer.converter.XMLConverter: []
  pdfminer.data_structures.NumberTree: []
  pdfminer.encodingdb.EncodingDB: []
  pdfminer.image.BMPWriter: []
  pdfminer.image.ImageWriter: []
  pdfminer.jbig2.JBIG2StreamReader: []
  pdfminer.jbig2.JBIG2StreamWriter: []
  pdfminer.layout.IndexAssigner: []
  pdfminer.layout.LAParams: []
  pdfminer.layout.LTAnno:
  - LTItem
  - LTText
  pdfminer.layout.LTChar:
  - LTText
  - LTComponent
  pdfminer.layout.LTComponent:
  - LTItem
  pdfminer.layout.LTContainer:
  - LTComponent
  pdfminer.layout.LTCurve:
  - LTComponent
  pdfminer.layout.LTExpandableContainer: []
  pdfminer.layout.LTFigure:
  - LTLayoutContainer
  pdfminer.layout.LTImage:
  - LTComponent
  pdfminer.layout.LTItem: []
  pdfminer.layout.LTLayoutContainer: []
  pdfminer.layout.LTLine:
  - LTCurve
  pdfminer.layout.LTPage:
  - LTLayoutContainer
  pdfminer.layout.LTRect:
  - LTCurve
  pdfminer.layout.LTText: []
  pdfminer.layout.LTTextBox: []
  pdfminer.layout.LTTextBoxHorizontal:
  - LTTextBox
  pdfminer.layout.LTTextBoxVertical:
  - LTTextBox
  pdfminer.layout.LTTextContainer:
  - LTText
  pdfminer.layout.LTTextGroup: []
  pdfminer.layout.LTTextGroupLRTB:
  - LTTextGroup
  pdfminer.layout.LTTextGroupTBRL:
  - LTTextGroup
  pdfminer.layout.LTTextLine: []
  pdfminer.layout.LTTextLineHorizontal:
  - LTTextLine
  pdfminer.layout.LTTextLineVertical:
  - LTTextLine
  pdfminer.lzw.CorruptDataError:
  - PDFException
  pdfminer.lzw.LZWDecoder: []
  pdfminer.pdfcolor.PDFColorSpace: []
  pdfminer.pdfdevice.PDFDevice: []
  pdfminer.pdfdevice.PDFTextDevice:
  - PDFDevice
  pdfminer.pdfdevice.TagExtractor:
  - PDFDevice
  pdfminer.pdfdocument.PDFBaseXRef: []
  pdfminer.pdfdocument.PDFDestinationNotFound:
  - PDFException
  pdfminer.pdfdocument.PDFDocument: []
  pdfminer.pdfdocument.PDFEncryptionError:
  - PDFException
  pdfminer.pdfdocument.PDFEncryptionWarning:
  - UserWarning
  pdfminer.pdfdocument.PDFNoOutlines:
  - PDFException
  pdfminer.pdfdocument.PDFNoPageLabels:
  - PDFException
  pdfminer.pdfdocument.PDFNoValidXRef:
  - PDFSyntaxError
  pdfminer.pdfdocument.PDFNoValidXRefWarning:
  - SyntaxWarning
  pdfminer.pdfdocument.PDFPasswordIncorrect:
  - PDFEncryptionError
  pdfminer.pdfdocument.PDFStandardSecurityHandler: []
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV4:
  - PDFStandardSecurityHandler
  pdfminer.pdfdocument.PDFStandardSecurityHandlerV5:
  - PDFStandardSecurityHandlerV4
  pdfminer.pdfdocument.PDFTextExtractionNotAllowed:
  - PDFEncryptionError
  pdfminer.pdfdocument.PDFTextExtractionNotAllowedWarning:
  - UserWarning
  pdfminer.pdfdocument.PDFXRef:
  - PDFBaseXRef
  pdfminer.pdfdocument.PDFXRefFallback:
  - PDFXRef
  pdfminer.pdfdocument.PDFXRefStream:
  - PDFBaseXRef
  pdfminer.pdfdocument.PageLabels:
  - NumberTree
  pdfminer.pdfexceptions.PDFEOFError:
  - EOFError
  - PDFException
  pdfminer.pdfexceptions.PDFException:
  - PSException
  pdfminer.pdfexceptions.PDFIOError:
  - PDFException
  - IOError
  pdfminer.pdfexceptions.PDFKeyError:
  - PDFException
  - KeyError
  pdfminer.pdfexceptions.PDFNotImplementedError:
  - PDFException
  - NotImplementedError
  pdfminer.pdfexceptions.PDFObjectNotFound:
  - PDFException
  pdfminer.pdfexceptions.PDFTypeError:
  - PDFException
  - TypeError
  pdfminer.pdfexceptions.PDFValueError:
  - ValueError
  - PDFException
  pdfminer.pdffont.CFFFont: []
  pdfminer.pdffont.CFFFont.INDEX: []
  pdfminer.pdffont.FontMetricsDB: []
  pdfminer.pdffont.PDFCIDFont:
  - PDFFont
  pdfminer.pdffont.PDFFont: []
  pdfminer.pdffont.PDFFontError:
  - PDFException
  pdfminer.pdffont.PDFSimpleFont:
  - PDFFont
  pdfminer.pdffont.PDFTrueTypeFont:
  - PDFType1Font
  pdfminer.pdffont.PDFType1Font:
  - PDFSimpleFont
  pdfminer.pdffont.PDFType3Font:
  - PDFSimpleFont
  pdfminer.pdffont.PDFUnicodeNotDefined:
  - PDFFontError
  pdfminer.pdffont.TrueTypeFont: []
  pdfminer.pdffont.TrueTypeFont.CMapNotFound:
  - PDFException
  pdfminer.pdffont.Type1FontHeaderParser: []
  pdfminer.pdfinterp.PDFContentParser: []
  pdfminer.pdfinterp.PDFGraphicState: []
  pdfminer.pdfinterp.PDFInterpreterError:
  - PDFException
  pdfminer.pdfinterp.PDFPageInterpreter: []
  pdfminer.pdfinterp.PDFResourceError:
  - PDFException
  pdfminer.pdfinterp.PDFResourceManager: []
  pdfminer.pdfinterp.PDFTextState: []
  pdfminer.pdfpage.PDFPage: []
  pdfminer.pdfparser.PDFParser: []
  pdfminer.pdfparser.PDFStreamParser:
  - PDFParser
  pdfminer.pdfparser.PDFSyntaxError:
  - PDFException
  pdfminer.pdftypes.DecipherCallable:
  - Protocol
  pdfminer.pdftypes.PDFObjRef:
  - PDFObject
  pdfminer.pdftypes.PDFObject:
  - PSObject
  pdfminer.pdftypes.PDFStream:
  - PDFObject
  pdfminer.psexceptions.PSEOF:
  - PSException
  pdfminer.psexceptions.PSException:
  - Exception
  pdfminer.psexceptions.PSSyntaxError:
  - PSException
  pdfminer.psexceptions.PSTypeError:
  - PSException
  pdfminer.psexceptions.PSValueError:
  - PSException
  pdfminer.psparser.PSBaseParser: []
  pdfminer.psparser.PSKeyword:
  - PSObject
  pdfminer.psparser.PSLiteral:
  - PSObject
  pdfminer.psparser.PSObject: []
  pdfminer.psparser.PSStackParser:
  - PSBaseParser
  pdfminer.psparser.PSSymbolTable: []
  pdfminer.utils.Plane: []
  pdfminer.utils.open_filename: []
  pdfplumber.container.Container:
  - object
  pdfplumber.convert.Serializer: []
  pdfplumber.ctm.CTM:
  - NamedTuple
  pdfplumber.display.COLORS: []
  pdfplumber.display.PageImage: []
  pdfplumber.page.CroppedPage:
  - DerivedPage
  pdfplumber.page.DerivedPage:
  - Page
  pdfplumber.page.FilteredPage:
  - DerivedPage
  pdfplumber.page.PDFPageAggregatorWithMarkedContent:
  - PDFPageAggregator
  pdfplumber.page.Page:
  - Container
  pdfplumber.pdf.PDF:
  - Container
  pdfplumber.structure.Findable: []
  pdfplumber.structure.PDFStructElement:
  - Findable
  pdfplumber.structure.PDFStructTree:
  - Findable
  pdfplumber.structure.StructTreeMissing:
  - ValueError
  pdfplumber.table.CellGroup:
  - object
  pdfplumber.table.Column:
  - CellGroup
  pdfplumber.table.Row:
  - CellGroup
  pdfplumber.table.Table:
  - object
  pdfplumber.table.TableFinder:
  - object
  pdfplumber.table.TableSettings: []
  pdfplumber.table.UnsetFloat:
  - float
  pdfplumber.utils.exceptions.MalformedPDFException:
  - Exception
  pdfplumber.utils.exceptions.PdfminerException:
  - Exception
  pdfplumber.utils.text.TextMap: []
  pdfplumber.utils.text.WordExtractor: []
  pdfplumber.utils.text.WordMap: []
ep:
  func_name: TestOneInput
  module: '...pdfplumber.fuzz.pdf_load_fuzzer'
